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


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


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

@font-face {
    font-family: ' Barlow Semi Condensed ';
    src: url('../fonts/BarlowSemiCondensed-Medium.woff2') format('woff2'),
             url('../fonts/BarlowSemiCondensed-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

body {
color: #333;
font-size: 93%;
line-height: 1.6;
font-weight:400;
font-family: ' BIZUDPGothic ';
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%;
line-height: 1.8;
letter-spacing: 0.08rem;
}


}


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

/* 共通
---------------------------------------------------- */
.bg-stripe{position: absolute;z-index: 1!important; width: 100%;height: 100%;display: flex;}
.bg-stripe li{width: 16.666%;border-right: 1px solid #eee;}
.bg-stripe li:last-child{border-right:none;}

.fluid {position: relative;
	max-width: 1140px;
	margin: 0 auto;
}
.clearfix:after {
  content: "";
  clear: both;
	display: table;
}
.clear {clear: both;}

.f-right {float: right;}
.f-left {float: left;}
.pointer {cursor: pointer;}
ul.decimal li{list-style: decimal;margin-left: 25px;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;}
.mb80mb50{margin-bottom: 80px;}
.mb50mb30{margin-bottom: 50px;}
.mb30mb10{margin-bottom: 30px;}

@media (max-width: 1199px) {



.mb120mb80{margin-bottom: 80px;}
.mb150mb100{margin-bottom: 100px;}
.mb50mb30{margin-bottom: 40px;}

}


@media (max-width: 991px) {
.bg-stripe li{width: 20%;}

.mb120mb80{margin-bottom: 60px;}
.mb150mb100{margin-bottom: 90px;}
.mb30-md{margin-bottom: 30px;}
.mb50mb30{margin-bottom: 30px;}

}

@media (max-width: 767px) {
.bg-stripe li{width: 25%;}

.space15{margin-bottom: 15px;}
.mb150mb100{margin-bottom: 80px;}
.mb120mb80{margin-bottom: 50px;}
.mb80mb50{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) {
.bg-stripe li{width: 33.333%;}

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


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

/* font-size color
---------------------------------------------------- */
.x-small { font-size: .8em; line-height: 1.5; }
.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-weight: 700;font-family: ' BIZUDPGothic-Bold ';}

.white { color: #ffffff; }
.red { color: #f00; }
.blue{color: dodgerblue;}
.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:#fff;}
	
.sc .logo{padding-left: 15px;font-weight: 700;}
.sc .logo a{display: flex;align-items: center; transition: .4s;color: #111;font-size: 1.2em;}
.sc .logo a img{width: 34px;height: auto;margin-right: 5px;}


header{display: none;}



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

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


.site-header{
  position: fixed;
  width: 100%;
  background: rgba(255,255,255,0);
  top: 0px;
  margin: auto;
  z-index: 100;
  transition: .3s;
  height: 80px;
  display: flex;
  align-items: center;justify-content: space-between;
}

.header {
  color: #fff;
  position: fixed;
  top: 0px;
  left:0;
  transition: color 0.4s ease-out;
  width: 100%;
  z-index: 500;
  height: 85px;
  display: flex;
  align-items: center;justify-content: space-between;
}
.header.page {color: #111;background: #fff;}

.logo{padding-left: 50px;}
.logo a{position: relative;display: flex;align-items: center;color: white;transition: .4s;font-weight: 700;font-size: 1.4em;}
.logo a img{margin-right: .3em;}
.header.page .logo a{color:#000;}

.header .navi{ display: flex;align-items: center;justify-content: flex-end;}
.header .info{display: flex;flex-direction: column;align-items: flex-end; margin-right: 2em;}
.header .info .telbox{color: white;display: flex;align-items: center;}
.header .info .tel{font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";margin-right: 1.5em;}
.header .info .tel span{font-size: 1.8em;letter-spacing: .1rem;color: white;}
.header .info .time{font-size: 13px;line-height: 1.2;}
.head-mail{}
.head-mail a{width: 138px;height: 85px; display: flex;flex-direction: column;align-items: center;justify-content: center;color: white; transition: .4s; background: #015d9e;  /* fallback for old browsers */
background: -webkit-linear-gradient(to right, #0296c3, #015d9e);  /* Chrome 10-25, Safari 5.1-6 */
background: linear-gradient(to right, #0296c3, #015d9e); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
.head-mail a .fas{font-size: 1.5em;}
.head-mail a span{margin-top: .2em;;}

.header.page .info .telbox{color:#222;}
.header.page .info .tel span{color: #222;}

/* ナビゲーションメニュー */
.nav-menu {}
.menu-list {
  display: flex;
  justify-content: center; /* メニューアイテムを中央揃えに */
}
.menu-item {position: relative;margin: 0 1.5em;}
.menu-item:last-child {margin: 0 0 0 1.5em;}

/* メニューアイテムのホバースタイル */
.menu-item a {
font-size: 16px;
font-weight: 500;
  align-items: center;
  color: white;
  display: flex;
  justify-content: center;
  text-decoration: none; /* リンクの下線を非表示 */
  transition: .3;
}
.menu-item a:hover {color: #FFF;}
.menu-item a.active {color:#fff;}
.menu-item a.active::after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: -.1em;
  left:0;
  width: 100%;
  height: .1em;
  background: white;
  transition: .3s;
}

.header.page .menu-item a {color:#222;}
.header.page .menu-item a:hover {color: #999;}
.header.page .menu-item a.active {color:#39f;}
.header.page .menu-item a.active::after {background: #39f;}


}

.contents {}
/* スクロールしたらヘッダーメニューのフォントカラー変更 */
.header.headerColorScroll {
  color: #222;
  background: #fff;
  height: 85px;
  transition: color 2s ease-out;
}
.header.headerColorScroll .logo a{color: #111;}
.header.headerColorScroll .menu-item a {color: #222;}
.header.headerColorScroll .menu-item a:hover {color:#ADDEEA;}
.header.headerColorScroll .menu-item a.active {color:#0094C5;}
.header.headerColorScroll .menu-item a.active::after {background:#0094C5;}
.header.headerColorScroll .info .telbox{color:#111;display: flex;align-items: center;}
.header.headerColorScroll .info .tel span{color:#111;}



@media (max-width: 1680px){


}

@media (max-width: 1366px){
.logo{padding-left: 20px;}


}

@media (max-width: 1199px){
.menu-item {position: relative;margin: 0 1em;}
.menu-item:last-child {margin: 0 0 0 1em;}
.menu-item a {font-size: 15px;}
.header .info .tel span{font-size: 1.6em;}

}











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

#main{position: relative;}


.main-h2{position: absolute;z-index: 50;top: 50%;
  left: 18.5%;
  transform: translateY(-50%);
  -webkit-backdrop-filter: blur(8px);
  color: white;
  }
.main-h2 h2{color: white;font-size: 3em;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";letter-spacing: .2rem;margin-bottom: .4em;text-shadow: 1px 1px 1px #000;}
.main-h2 h2 span{font-size: .7em;}
.main-h2txt{font-size: 1.1em;text-shadow: 1px 1px 1px #000;}

.mv02 .btn-fv {
  position: absolute;
  z-index: 1;
  top: 65%;
  bottom: auto;
  left:18.5%;
  margin: auto;
  display: flex;
}
.mv02 .btn-fv a {
display: block;
  width: auto;
  height: 55px;
  line-height: 55px;
  padding: 0 1.5em;
  margin-right: .5em;
  transition: .4s;
  background-color: rgba(0,0,0,.0);color: white;border:1px solid #ddd;box-sizing: border-box;font-size: 1.1em;
}
.mv02 .btn-fv a:hover {background-color: rgba(0,0,0,.9);color: white;border:1px solid #ddd;}



/* スクロールダウンの位置 */
.scroll {
  position: absolute;z-index: 50;
  right:15%;
  bottom: 140px;
  color: #ddd;
  font-size: 11px;
  writing-mode: vertical-rl;
  letter-spacing: .2rem;
  font-weight: 400;
  text-transform: uppercase;
}
/* 線のアニメーション部分 */
.scroll::before {
  animation: scroll 2s infinite;
  background-color: #ccc;
  bottom: -115px;
  left:0;
  content: "";
  height: 100px;
  margin: auto;
  position: absolute;
  right:0;
  width: 1px;
}
/* 線のアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}



@media (max-width: 1680px){
.main-h2{left: 10%;  }
.mv02 .btn-fv {left:10%;}


}



@media (max-width: 1280px){
.main-h2 h2{font-size: 2.3em;}
.main-h2 h2 span{font-size: .7em;}
.main-h2txt{font-size: 1.1em;}

.mv02 .btn-fv a {
  height: 50px;
  line-height: 50px;
  padding: 0 1em;
  margin-right: .5em;
  font-size: 1em;
}




}


@media (max-width: 1199px){
.main-h2{left: 5%;  }
.mv02 .btn-fv {left:5%;}
.mv02 .btn-fv a {
  height: 40px;
  line-height: 40px;
  padding: 0 1em;
  margin-right: .5em;
  font-size: .9em;
}

}




@media only screen and (max-width: 991px) {
.main-h2{position: absolute;z-index: 50;top: 40%;
  transform: translateY(0);
  }

.scroll {display: none;}


}

@media only screen and (max-width: 767px) {
.main-h2 h2{font-size: 2em;}
.main-h2 h2 span{font-size: .7em;}
.mv02 .btn-fv a {
  height: 36px;
  line-height: 36px;
  padding: 0 .5em;
  margin-right: .3em;
  font-size: .9em;
}


}


@media only screen and (max-width: 666px) {
.mv02 .btn-fv {
top:auto;
right:30px;
bottom:0px;
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 30px;
}
.mv02 .btn-fv a {
  height: 32px;
  line-height: 32px;
  margin-right: .3em;
  margin-bottom: .3em;
  font-size: .9em;
}





}

@media only screen and (max-width: 414px) {
.main-h2{top: 28%;}

.main-h2txt{font-size: 1em;padding-right: 1.5em;}


}



/* index.html 
---------------------------------------------------- */
.btn-posi-center{display: flex;justify-content: center;position: relative;z-index: 30;}
.btn-posi-right{display: flex;justify-content: flex-end;}
.btn-more{position: relative;color: black;width: 200px;height: 60px;border:1px solid black;display:flex;align-items: center;justify-content: center;font-family: ' Rubik ';font-weight: 400;transition: .4s;}
.btn-more:after{
font-family: "Font Awesome 5 Free";
  content: "\f0da";
font-weight: 900;
position: absolute;
right:15px;;
}
.btn-more:hover{color: white;border:1px solid #015e9f;background: #069;}

.btn-arrow {
font-family: ' Barlow Semi Condensed ';font-weight: 500;
width: 150px;
    height: 40px;   
    display: flex;
    justify-content: space-between;
    align-items: center;background: rgba(255,255,255,0);
    color: #111;
	padding: 0 1em;
    border: 1px solid #333;
    cursor: pointer;
	transition: .5s;
	position: relative;
	font-size: 14px;}
.btn-arrow:after{
  content: '';/*何も入れない*/
  position: absolute;
  right:2em;top:49%;
  width: 20px;/*画像の幅*/
  height: 6px;/*画像の高さ*/
  background-image: url(../images/arrow.png);
  background-size: contain;
  vertical-align: middle;
  transition: .4s;
}
.btn-arrow:hover {
    align-items: center;background:#eee;
    color: #000;
	padding: 0 1em;
    }
.btn-arrow:hover:after{right:1em;}




.home #section01{position: relative;z-index: 5; padding: 0px 0;}
.home #section01 .titlebox{padding: 20px 15px;background-image: linear-gradient(to right, #cecece 0%, #eee 100%);}
.home #section01 .titlebox .headline{margin-bottom: 0;}
.newsarea{position: relative;overflow-y: scroll;background: white;border-bottom: 1px solid rgba(0,0,0,.08);}
.newsarea .set{padding: 15px;border-bottom: 1px solid rgba(0,0,0,.08);}
.newsarea .set:last-child{margin-bottom: 0;}
.newsarea .set .date{margin-bottom:.3em;line-height: 1.4;font-family: ' Rubik ';font-weight: 400;}
.newsarea .set .date span.new{color: red;margin-left: 10px;}
.newstext{line-height: 1.4;width: 100%;}
.newstext a{transition: .5s;}
.newstext a:hover{color:#000;}
.newstext a.more{transition: .5s;display: inline-block;position: relative;color:#333;}
.newstext a.more:hover{background: #eee;}


.home #section02{position: relative;z-index: 5; }
.home #section02 ul li{position: relative;z-index: 20;}
.home #section02 .wrap{padding: 30px 15px 15px;z-index: 20;position: relative;}
.home #section02 .thumb{}
.home #section02 .thumb2{display: none;}


.home #section03{position: relative;padding: 50px 0;z-index: 5;margin-bottom: 50px;}
.home #section03 ul{position: relative;z-index: 30;}
.home #section03 ul li{margin-bottom: 30px;}
.home #section03 a{transition: .4s;}
.home #section03 a:hover{opacity: .7;}
.home #section03 a .thumb{margin-bottom: .4em;}
.home #section03 a .title{color: black;line-height: 1;font-size: .9em;}
.home #section03 a .title span{position: relative;font-family: ' Rubik ';font-weight: 400;font-size: 1em;padding-right: .6em;margin-right: .3em;}
.home #section03 a .title span:after{
  content: '';/*何も入れない*/
  position: absolute;
  right:0em;bottom:.2em;
  width: .5em;
  height: 2px;
  background:#222;
}
.home #section03 a:hover .title{color:#0072AF;}
.home #section03 .bg{position: absolute;z-index: 5; bottom:0;left:0;width: 100%;height: 40%; background: rgba(183,221,232,.3);}


.home #section04{position: relative;z-index: 5; background: url("../images/bg-top-recruit.jpg");background-position: center;background-size: cover;padding: 30px 0 130px;color: white;}
.home #section04 .headline{color: white;}
.home #section04 .headline span.ja{color: #fff;}
.home #section04 .headline span.ja:before {background: #fff;}
.home #section04 .sub{font-weight: 700;font-size: 1.2em;margin-bottom: .6em;line-height: 1.5;}
.home #section04 .sub span{font-size: 15px;}
.home #section04 .txt{font-size: 14px;margin-bottom: 1.5em;}
.home #section04 .btn-more{color:white;border:1px solid white;}
.home #section04 .pic{position: absolute;bottom:-130px;left:50%;transform: translateX(-50%);margin-right: -50%;width: 200px;}

.home #section05{position: relative;z-index: 5;}
.home #section05 .wrap{padding: 40px 15px}
.linkbox{ }
.home #section05 .wrap ul.linkbox li{ margin-bottom: 30px;}
.home #section05 .wrap ul.linkbox li:last-child{margin-bottom: 0px;}
.home #section05 .wrap a{display: block;transition: .4s}
.home #section05 .wrap a .thumb{position: relative;margin-bottom: .6em;transition: .4s;overflow: hidden;}
.home #section05 .wrap a .thumb img{transition: transform .6s ease;}
.home #section05 .wrap a .thumb .index{position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);margin-right: -50%; color: white;font-family: ' Rubik ';font-weight: 400;font-size: 1.2em;text-shadow: 1px 1px 1px #111;}
.home #section05 .wrap a .btn-row{text-align: center;color: #111;position: relative;}
.home #section05 .wrap a .btn-row:after{ content: '';/*何も入れない*/
  position: absolute;
  top:50%;
  transform: translateY(-50%);
  right:25px;
  width: 20px;/*画像の幅*/
  height: 6px;/*画像の高さ*/
  background-image: url(../images/arrow.png);
  background-size: contain;
  vertical-align: middle;
  transition: .4s;}
.home #section05 .wrap a:hover .btn-row:after{right:10px; }

.home #section05 .wrap a:hover .thumb img{filter: grayscale(80%);transform: scale(1.07);}

.gmap{margin-bottom: 15px;padding: 1em;border-radius: .5em;background: white;border:1px solid #ddd;}
.gmap:last-child{margin-bottom: 0px;}

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

@media (min-width: 414px) {

.linkbox{width:300px; margin: 0 auto;}
}

@media (min-width: 667px) {
.home #section01{display: flex;}
.home #section01 .titlebox{padding: 20px 15px;width: 25%;display: flex;align-items: center;}
.newsarea{background: white;width: 75%;}

.home #section02 {padding-bottom: 50px;}
.home #section02 .thumb{width: 50%;margin-left: 50%;}
.home #section02 .thumb2{display: block; position: absolute;left:0;bottom:0px;z-index: 10;width: 60%;}

.home #section04{padding: 30px 0 50px;}
.home #section04 .pic{position: absolute;bottom:-50px;left:-45px;transform: translateX(0);margin-right: auto;width: 200px;}

.home #section05 .wrap{padding:40px 15px;}
.home #section05 .wrap ul.linkbox{display: flex;justify-content: space-between;width: 100%;}
.home #section05 .wrap ul.linkbox li{margin-bottom: 0px;width: 32%;}

}




@media (min-width: 768px) {
.home #section01 .titlebox{padding: 20px 15px;width: 20%;display: flex;align-items: center;}
.newsarea{background: white;width: 80%;}
.newsarea .set{padding: 15px 20px;display: flex;align-items: center;}
.newsarea .set .date{margin-bottom:0;line-height: 1.4;width: 160px;}
.newstext{line-height: 1.4;width: calc(100% - 160px);}

.home #section02 .wrap{padding: 0px 15px 0px 10%;}
.home #section02 .thumb{width: 100%;margin-left: 0%;}
.home #section02 .thumb2{position: absolute;left:0;bottom:0px;z-index: 10;width: 70%;}


.gmap{margin-bottom: 20px;}



.home #section03{padding: 70px 0;margin-bottom: 70px;}
.home #section03 a .thumb{margin-bottom: .7em;}
.home #section03 a .title{font-size: 1em;}
.home #section03 a .title span{font-size: 1.2em;padding-right: .6em;margin-right: .3em;}

.home #section04{padding: 70px 0 70px;}
.home #section04 .sub{font-size: 1.6em;margin-bottom: .6em;line-height: 1.5;}
.home #section04 .sub span{font-size: 17px;}
.home #section04 .txt{font-size: 15px;margin-bottom: 2em;}
.home #section04 .pic{position: absolute;bottom:-70px;left:-10px;transform: translateX(0);margin-right: auto;width: 300px;}

.home #section05 .wrap{padding:70px 15px}



.link-pdf{width: 100px;}

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


}



@media (min-width: 992px) {
.home #section01 .titlebox{padding: 20px 15px;width: 16.666%;display: flex;align-items: center;}
.newsarea{background: white;width: calc(100% - 16.666%);}
.newsarea .set .date{width: 180px;}
.newstext{width: calc(100% - 180px);}

.home #section02 .wrap{padding: 0px 50px 0px 20%;}
.home #section02 .wrap p{line-height: 2;}

.home #section03 a .title{font-size: 1.1em;}
.home #section03 a .title span{font-size: 1.4em;padding-right: .6em;margin-right: .3em;}

.home #section04 .pic{position: absolute;bottom:-70px;left:10px;transform: translateX(0);margin-right: auto;width: 300px;}
.home #section05 .wrap a .btn-row{font-size: 1.1em;}

.btn-more{width: 230px;height: 70px;}

.btn-arrow{
width: 200px;
    height: 60px;   
	padding: 0 1em;
	}

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

}




@media (min-width: 1200px) {
.newsarea .set{padding: 15px 30px;}
.newsarea .set .date{width: 200px;}
.newstext{width: calc(100% - 200px);}



.home #section02{padding-bottom: 100px;}
.home #section02 .wrap{padding: 0px 50px 0px 10%;}
.gmap{margin-bottom: 30px;padding: 1.5em;}


.home #section03{padding: 100px 0;margin-bottom: 100px;}
.home #section03 ul li{margin-bottom: 50px;}

.home #section04{padding: 100px 0;}
.home #section04 .sub{font-size: 2.1em;margin-bottom: .6em;line-height: 1.5;letter-spacing: .1rem;}
.home #section04 .sub span{font-size: 22px;}
.home #section04 .txt{font-size: 18px;margin-bottom: 2em;}

.home #section04 .pic{position: absolute;bottom:-100px;left:10px;transform: translateX(0);margin-right: auto;width: 400px;}

.home #section05 .wrap{padding:100px 15px}
.home #section05 .wrap a .thumb .index{font-size: 1.5em;}
.home #section05 .wrap a .btn-row{font-size: 1.2em;}


}





@media (min-width: 1440px) {
.home #section02 .wrap{padding: 0px 60px 0px 16%;}


.home #section03 a .title{font-size: 1.2em;}
.home #section03 a .title span{font-size: 1.4em;padding-right: .6em;margin-right: .3em;}

.home #section05 .wrap{padding:100px 50px}
.gmap iframe{width: 100%;height: 400px;}

}

@media (min-width: 1680px) {
.newsarea .set{padding: 20px 55px;}
.newsarea .set .date{width: 200px;}
.newstext{width: calc(100% - 200px);}
.home #section02 .wrap{padding: 0px 80px 0px 35%;}
.home #section02 .wrap p{line-height: 2.5;}

.home #section02 .thumb2{position: absolute;left:5%;bottom:0px;z-index: 10;width: 70%;}


.home #section03 .container{max-width: 66%;}
.home #section03 .bg{left:50%;transform: translateX(-50%);width: 90%;height: 40%;}
.home #section04{padding: 110px 0;}

.home #section04 .pic{position: absolute;bottom:-110px;left:50px;transform: translateX(0);margin-right: auto;width: 450px;}

.home #section05 .wrap{padding: 100px 0;width: 90%;margin: 0 auto;}
.home #section05 .wrap ul.linkbox li{margin-bottom: 0px;width: 31.5%;}

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

}




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


.cp_button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 180px;
  padding: 1em;
  cursor: pointer;
  background: rgba(153,138,92,0.2);
  border-radius: 0;
  transition: color 0.4s, transform 0.4s cubic-bezier(0.645, 0.045, 0.355, 1);
  z-index: 1;
}
.cp_button a{color: black;position: relative;z-index: 10;}
.cp_button:hover a {color: #ffffff;}
.cp_button:before,
.cp_button:after {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.cp_button:before {
  background-color: rgba(153,138,92,1);
  transition: transform cubic-bezier(1, 0, 0, 1) 0.4s;
  transform: scaleY(0);
  transform-origin: top center;
}
.cp_button:after {
  top: -6px;
  left: -6px;
  border: 1px solid  rgba(153,138,92,1);
  transition: transform cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s;
}
.cp_button:hover:before {
  border: none;
  transform: scaleY(1);
}
.cp_button:hover:after {
  border: 1px solid  rgba(153,138,92,1);
  transform: translate(6px, 6px);
}
.cp_button:active {
  transition-duration: 0.05s;
  transform: translate(6px, 6px);
}
.cp_button:active:after {
  transition-duration: 0.05s;
  transform: translate(0, 0);
}


.btn-view {position: relative;display: flex;align-items: center;color: #333;font-size: .9em;letter-spacing: .05rem;transition: .5s;}
.btn-view::after{
content: "";
display: inline-block;
  width: 50px;
  height: 50px;
  border:1px solid #06f;
  margin-left: 3em;
  transition: .5s;
}
.btn-view::before {
content: "";
    width: 60px;
    height: 6px;
    position: absolute;
	left:9em;
    border-bottom: 1px solid #06f;
    border-right: 1px solid #06f;
    -webkit-transform: skew(45deg);
    transform: skew(45deg);
}
.btn-view:hover {color: #069;}
.btn-view:hover::after{background:rgba(247,130,9,.5);}


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) {
.cp_button {
  width: 230px;
  padding: 1em;
}

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) {
.cp_button {
  width: 290px;
  padding: 1em;
}

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


}



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


@media (max-width: 1280px) {
#pagetop {right: 40px;}


}

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

}



/* -----  common / footer ------- */
.common{padding: 50px 0;position: relative;color: white;}
.common .headline{color: white;}
.common .headline span.ja{color: white;}
.common .headline span.ja:before {background: #fff;}

.common ul{max-width: 600px;margin: 0 auto;}
.common .tel{display: flex;flex-direction: column; align-items: center;justify-content: center;line-height: 1;margin-bottom: 1.6em;font-family: ' Rubik ';}
.common .tel p.txt{line-height: 1;margin-bottom: .3em;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";}
.common .tel .call{color: #fff;margin-left: .2em;font-size: 28px;}
.common .tel p.time{line-height: 1;font-size: .9em;letter-spacing: 0;}
.common .mail{color: #111;border:1px solid #ddd;letter-spacing: 0;display: flex;align-items: center;justify-content: center;text-align: center;height: 58px; background:white;font-family: ' Rubik ';transition: .4s;}
.common .mail:hover{color: #fff;border:1px solid #0034a0;background: #0034A0;}


footer{position: relative;z-index: 5; background:url("../images/bg-footer.jpg");background-position: center;background-size: cover;color: white;}
.footer{background: rgba(0,51,102,.5);padding: 50px 0;position: relative;}
footer .container{max-width: 100%;padding: 0 15px;}
footer .logoblock{position: relative; margin-bottom: 25px;display: flex;align-items: center;justify-content: center;}
footer .logoblock img{width: 30px;height: auto;}
footer .logoblock span{color: white;font-weight: 700;font-size: 1.2em;margin-left: .4em;}

footer .address{font-size: .9em;letter-spacing: 0;margin-bottom: .3em;}
footer .address a{color: white;}

footer .tel{font-size: 1em;margin-bottom: 1.5em;font-family: ' Rubik ';}
footer .tel span{color: #fff;font-size: 1.1em;letter-spacing: .15rem;}


.footer-menu{width: 100%;margin: 0 auto; margin-bottom: 1.5em;}
.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 a{color: #fff;text-decoration: none; text-align: center; padding: .7em 0;background:rgba(0,51,153,.5);display: block;transition: .3s;margin-bottom: 12px;}
.footer-menu li a:hover{color:#fff;background: #555;}

.bn-km{text-align: center;margin-bottom: 1em;}

.copy{text-align: center;color: #ccc; font-size: .8em;letter-spacing: 0;}
.copy{padding-top: 1.5em;}

@media (min-width: 667px) {
.common .container{max-width: 100%;}
.common ul{max-width: 100%;margin: 0 auto;}
.common .tel{margin-bottom: 0;}
.common .headline{margin-bottom: 0;}
.common .tel .call{font-size: 25px;}



footer .address{text-align: center;}
footer .address a{color: white;}

footer .tel{text-align: center;}

.footer-menu{width: 100%;border-top: none;padding: 0px;}
.footer-menu{border-top: none;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;font-size: 14px;}
.footer-menu li a{letter-spacing:0.05rem;border-right:none; padding: 0 .6em;text-align: left;border-bottom: none;line-height: 1;background: none;}
.footer-menu li a:hover{color:#fff;background:none;}

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

}



@media (min-width: 768px) {

.common ul{max-width: 100%;margin: 0 auto;}
.common .tel .call{margin-left: .2em;font-size: 28px;letter-spacing: .1rem;}
.common .mail{height: 58px;font-size: 1.2em;}

.footer{padding: 70px 0 30px;}
footer .container{max-width: 600px;padding: 0 15px;}
footer .logoblock{position: relative; width: auto;margin-bottom: 25px;}
footer .address{font-size: .9em;}
footer .tel{font-size: .9em;}




.copy{font-size: 12px;}


}


@media (min-width: 992px) {
.common ul{max-width: 90%;margin: 0 auto;}


footer .container{max-width: 900px;padding: 0 0px;}

footer .logoblock{margin-bottom: 30px;text-align: left;margin-left: 0;justify-content: flex-start;}
footer .logoblock img{width: 40px;height: auto;}
footer .logoblock span{font-size: 1.4em;margin-left: .4em;}

footer .address{font-size: .9em;text-align: left;}
footer .tel{font-size: 1em;margin-bottom: 0;text-align: left;}
footer .tel span{font-size: 1.1em;}

.footer-menu{width: auto;border-top: none;padding-top: 0;margin-bottom: 3em;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 0;}
.footer-menu ul{justify-content:flex-end;}

.footer-menu li {padding-bottom: 0px;text-align: left;}
.footer-menu li a{text-decoration: none;padding: 0 .5em;letter-spacing: .08rem;margin-bottom: 0em!important;display: block;}
.footer-menu li:last-child a{padding: 0 0 0 .5em;}
.footer-menu li a:hover{color:#ccc;}
.bn-km{text-align:right;margin-bottom: 1em;display: flex;flex-direction: column;align-items: flex-end;}
.bn-km p{text-align: left;font-size: .9em;width: 205px;margin-bottom: .2em;}
.bn-km .bn a img{transition: .4s;}
.bn-km .bn a:hover img{opacity: .8;}

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

.copy{font-size: 12px;}

}




@media (min-width: 1200px) {
.common{padding: 100px 0;}
.common ul{max-width: 840px;margin: 0 auto;}
.common .mail{font-size: 18px;height: 70px;}
.common .tel .call{margin-left: .2em;font-size: 36px;}




.footer{padding: 100px 0 50px;}

footer .container{max-width: 1110px;padding: 0;}
footer .logoblock{position: relative; margin-bottom: 40px;}
footer .logoblock img{width: 50px;height: auto;}
footer .logoblock span{font-size: 1.5em;margin-left: .4em;}

footer .address{font-size: .9em;}
footer .tel{font-size: 1em;}
footer .tel span{font-size: 1em;}

.footer-menu li a{text-decoration: none;font-size: 1.05em; letter-spacing: .08rem;}

.copy{font-size: 12px;}



}

@media (min-width: 1680px) {
.common{padding: 140px 0;}


}


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

.h2area{
margin-top: 85px;
position: relative;
z-index: 10;
width:100%;
height: 320px;
display: flex;align-items:center;justify-content: center;
}
.h2area::after {
  content: "";
  position: absolute;
  top: 0;  bottom: 0;
  left: 0;  right: 0;
  background: rgba(0,0,0,.5);
}
.h2area.h2-business{background: url("../images/h2-service.jpg");background-position: center;background-size: cover;}
.h2area.h2-company{background: url("../images/h2-company.jpg");background-position: center;background-size: cover;}
.h2area.h2-detail{background: url("../images/h2-detail.jpg");background-position: center;background-size: cover;}
.h2area.h2-recruit{background: url("../images/h2-recruit.jpg");background-position: center;background-size: cover;}
.h2area.h2-contact{background: url("../images/h2-contact.jpg");background-position: center bottom;background-size: cover;}

.h2-txt{position:absolute;z-index: 10; left:20%; top:50%;transform: translateY(-50%);font-family: ' Rubik ';font-weight: 400;font-size: 60px;letter-spacing: .3rem;color: #fff;}
.h2-txt span { display: block;font-size: 20px;font-family: ' BIZUDPGothic ';font-weight: 700;letter-spacing: .2rem;margin-top: .3em;}


@media (max-width: 1440px){
.h2area{height: 300px;}



}


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

.h2-txt{font-size: 50px;left:15%;}
.h2-txt span {font-size: 22px;}



}

@media only screen and (max-width: 991px) {
.h2area{height: 200px;margin-top: 0px;}

.h2-txt{font-size: 40px;left:10%;}
.h2-txt span {font-size: 22px;}


}


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

.h2-txt{font-size: 35px;}
.h2-txt span {font-size: 20px;}



}

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

.h2area{height: 160px;}

.h2-txt{font-size: 26px;}
.h2-txt span {font-size: 18px;}


}

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

.headline-h3 {
color: #000;
  position: relative;
  margin-bottom: 2em;
  font-size: 22px;
  letter-spacing: .2rem;
  line-height: 1.4;
font-family: ' BIZUDPGothic ';font-weight: 700;text-align: center;}
.headline-h3 span{display: block;font-family: ' Barlow Semi Condensed ';font-weight: 500;position: relative;}
.headline-h3 span.ja{display:inline-block!important;font-family: ' BIZUDPGothic-Bold ';font-weight: 700;font-size: 18px;margin-right: .4em;}
.headline-h3::after {
  content: '';
  width: 1.4em;
  height: 5px;
  display: inline-block;
  background-color:#9cC;
  position: absolute;
  bottom: -.6em;border-radius: 4px;
  left: calc(50% - .7em)
}


.headline-h4 {
  font-family: ' BIZUDPGothic-Bold ';font-weight: 700;
  font-size: 1.15em;
 position: relative;
  margin-bottom: 1em;
  text-align: left;
  border-left:3px solid #0034A0;padding-left: .5em;
}

.headline {
 position: relative;
  margin-bottom: 2em;
  color:#222;
}
.headline span{line-height: 1;}
.headline span.ja{ display: block;font-size: 14px;font-family: ' BIZUDPGothic ';font-weight: 400;margin-bottom: .4em;position: relative;padding-left: .8em;color: #333;}
.headline span.ja:before {
  content: '';/*何も入れない*/
  position: absolute;
  left:0px;
  top:50%;
  width: .5em;
  height: 1px;
  background: #555;
}
.headline span.en{ font-size: 19px; font-family: ' Rubik ';font-weight: 400;letter-spacing: .05em;position: relative;}

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

@media (min-width: 667px) {




}



@media (min-width: 768px) {
.headline {margin-bottom: 2.5em;}
.headline span.ja{ display: block;font-size: 16px;}
.headline span.en{letter-spacing: .08em;position: relative;}


.headline-h3 {font-size: 24px;margin-bottom: 2.2em;}
.headline-h3 span.ja{font-size: 18px;margin-right: .3em;}

.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 {font-size: 26px;}



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


}


@media (min-width: 1200px) {
.headline {}
.headline span.ja{ display: block;font-size: 18px;}


.headline-h3 {font-size: 30px;margin-bottom: 2.4em;}
.headline-h3 span.ja{font-size: 20px;margin-right: .3em;}


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



}


@media (min-width: 1680px) {

.headline span.en{ font-size: 22px;letter-spacing: .1em;position: relative;}




}




#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:180px;
  text-decoration: none;
  border-radius: 3px;
  background:#555;
  color: #fff;/*文字色*/
  font-size: 15px;
  letter-spacing: 0;
  transition: .3s;
}
.btn-back:hover{
  color: #fff;/*文字色*/
  background:#999;

}

.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;
}
.paging span.current {
	background:#08ace2;
	color:#fff;
}
.paging span.paging-text a:hover {
	background:#08ace2;
	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: 666px) {
.table-responsive {
border:none;margin-bottom: 30px;
}
.table-responsive::-webkit-scrollbar {
height: 8px;
}

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

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



/*サムネ付きスライダー start*/
.slickwrap {
width: 800px;
margin: 0px auto;
  background-color: #fff;
  padding: .5em;
border:1px solid #eee;
display: flex;
align-items: center;
justify-content: center;}

.slider {
  width: 100%;
  margin: 0;
  overflow:hidden;
  background: white;
  padding: 0;
}
.slide-item img {width: 100%;height: auto;}


.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:1200px) {
.slickwrap{width: 600px;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 0px 0;}

}

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

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










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









/* business.html
--------------------------------------------------------- */

.business #section01{padding: 40px 0px 35px;position: relative;z-index: 10;background: white;}
.business #section01.result{padding: 50px 0px;background: none;}
.category-nav{display: flex;flex-wrap: wrap;}
.category-nav a{background: #ddd;color: #222;line-height: 1;padding: .6em;margin-right: .3em;margin-bottom: .3em;display: block;transition: .4s;}
.category-nav a:hover{background:#007EB8;color: white;}
.category-nav a.active{background:#007EB8;color: white;}

.business #section01.result .category{margin-bottom: 1em;}
.business #section01.result .category span{background:#DAECF1;padding: .3em .5em;font-size: .9em;}
.business #section01.result .itemtitle{font-weight:700;font-size: 1.2em;padding-bottom: .3em;border-bottom: 1px solid #555;margin-bottom: 1.6em;}
.business #section01.result .item-slide{padding: .5em;border:1px solid #ddd;background: white;position: relative;margin-bottom: 1.6em;}
.business #section01.result .swiper-wrapper{align-items: center;}
/* ページネーション */
.swiper-pagination-bullet {
  width: 15px;
  height: 8px;
  border-radius: 1px;
}
.swiper-pagination-bullets.swiper-pagination-horizontal {bottom: 0;}
.swiper-pagination-bullet {background-color:#008CC0;}
.swiper-button-next,
.swiper-button-prev {color: #008CC0;}
/* 前への矢印 */
.swiper-button-prev {left: 0px;}
/* 次への矢印 */
.swiper-button-next {right: 0px;}

.resultlist {
  width: 100%;
  background: rgba(173,222,234,.2);
  margin-bottom: 1.7em;
}
.resultlist dt, .resultlist dd {box-sizing: border-box;}
.resultlist dt {
  display: flex;
  align-items: center;
  font-weight: 700;
  width: 100%;
  padding: 15px;
  border-bottom: 1px solid #eee;
}
.resultlist dt:last-of-type,
.resultlist dd:last-of-type {border: none;}
.resultlist dd {
  display: flex;
  align-items: center;
  width:100%;
  margin-left: 0;
  padding: 15px;
  background: rgba(255,255,255,.5);
  border-bottom: 1px solid #eee;
}


.business #section02{padding:50px 0px 50px;position: relative;z-index: 10; background: rgba(153,204,204,.1);}
.business .item-title{font-weight: 700;font-size: 1.2em;background: #0080BE;border-radius: 3px;color: white;padding: .5em;text-align: center;margin-bottom: 2em;}
.item-thumb{margin-bottom: 1.3em;}
.item-html{margin-bottom: 1.3em;}

.pdf{margin-bottom: 1.5em;}
.pdf a{display: inline-block;background: rgba(0,52,160,1.00);color: white;padding: 1em 1.5em;transition: .4s;border-radius: .3em;}
.pdf a:hover{background: rgba(0,52,160,.7);}
.business #section03{padding: 50px 0px;position: relative;z-index: 10;}
.business #section03 ul li{margin-bottom: 30px;}
.business #section03 .title{color: #222;text-align: center;font-size: .9em;margin-top: .3em;}
.business #section03 .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;
}

.business #section03 a img {transition: .4s;}
.business #section03 a:hover img {opacity: .7;}

#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;}
#works{position: absolute;left:0;top:-60px;}

@media (min-width: 667px) {
.business #section01 .container{max-width: 100%;}
.business #section01.result .item-slide{width: 400px;margin: 0 auto;margin-bottom: 1.6em;}
.resultlist {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  background: rgba(173,222,234,.2);
}
.resultlist dt, .resultlist dd {box-sizing: border-box;}
.resultlist dt {
  display: flex;
  align-items: center;
  font-weight: 700;
  width: 30%;
  padding: 20px;
  border-bottom: 1px solid #eee;
}
.resultlist dt:last-of-type,
.resultlist dd:last-of-type {border: none;}
.resultlist dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 20px;
  background: rgba(255,255,255,.5);
  border-bottom: 1px solid #eee;
}





}



@media (min-width: 768px) {

.business #section01.result{padding: 70px 0px;}
.business #section01.result .item-slide{width: 500px;margin: 0 auto;margin-bottom: 1.6em;}
.resultlist {margin-bottom: 40px;}

.business #section02{padding: 70px 0px 70px;}
.business #section02 .txt1{line-height: 2;text-align: center;margin-bottom: 55px;}
.business #section02 ul{margin-bottom: 50px;}

.pdf{margin-bottom:0;}


.business #section03{padding: 70px 0px 30px;}

}



@media (min-width: 992px) {
.business #section01 .container {max-width: 960px;}
.business #section01.result .item-slide{width: 600px;margin: 0 auto;margin-bottom: 2.5em;}

.category-nav a{padding: .8em 1em;font-size: 1.1em;}
.business .item-title{font-size: 1.4em;padding:.7em .5em;margin-bottom: 2em;}


.business #section03 ul li{margin-bottom: 50px;}

#works{position: absolute;left:0;top:-85px;}
#target1{position: absolute;left:0;top:-85px;}



}



@media (min-width: 1200px) {
.business #section01{padding:80px 0px 75px;}
.business #section01 .container{max-width: 1140px;}
.business #section01.result{padding: 100px 0px;}
.business #section01.result .container{max-width: 1000px;}
.business #section01.result .item-slide{width: 800px;margin: 0 auto;margin-bottom:3em;}
.resultlist {margin-bottom: 70px;}


.business #section02{padding:90px 0px;}
.business .item-title{font-size: 1.6em;padding:.7em .5em;margin-bottom: 2em;letter-spacing: .3rem;}


.business #section03{padding:80px 0px;}



}


@media (min-width: 1440px) {

}





/* recruit.html
--------------------------------------------------------- */
.recruit #section01{padding: 50px 0px 50px;position: relative;z-index: 5;}
.recruit #section01 .index{font-size: 1.1em;text-align: center;font-weight: 700;margin-bottom: 1.5em;}
.recruit #section01 .index span{font-size: 1.4em;}
.recruit #section01 .txt{}

.recruit #section02{padding: 50px 0px 50px;position: relative;z-index: 5;background: #f6f6f6;}
.h3-recruit{text-align: center;font-weight: 700;font-size: 1.2em;margin-bottom: 1.3em;color: black;}
.recruit #section02 ul li div{background: #ccc;border-radius: .5em;width: 280px;height: 180px;margin: 0 auto;}
.recruit #section03{padding: 50px 0px 50px;position: relative;z-index: 5;}
.recruit #section03 .table{margin-bottom: 0;}
.recruit #section03 .table th{display: block;background:#E8F0F2!important;color: black;font-weight: 400;}
.recruit #section03 .table td{display: block;background:#fff!important;}
.recruit #section03 .table td span.call{color: #222;}
.recruit #section03 .table td a{color: #222;transition: .4s;}
.recruit #section03 .table td a:hover{color:#008ABE;transition: .4s;}
.recruit #section03 .table td .list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.recruit #section03 .table td .list dt, .list dd {
  box-sizing: border-box;
}
.recruit #section03 .table td .list dt {
  display: flex;
  font-weight: 400;
  width: 100px;
  padding: 0;
  background-color:none;
  line-height: 1.3;
  padding-bottom: .5em;
}
.recruit #section03 .table td .list dt:last-of-type,
.recruit #section03 .table td .list dd:last-of-type {border: none;padding-bottom: 0;}
.recruit #section03 .table td .list dd {
  display: flex;
  align-items: center;
  width: calc(100% - 100px);
  margin-left: 0;
  padding: 0;
  background-color: #fff;
  line-height: 1.3;
  padding-bottom: .5em;
}
.recruit #section03 .table td .list.short{margin-top: .4em;}
.recruit #section03 .table td .list.short dt {
  display: flex;
  font-weight: 400;
  width: 3em;
  padding: 0;
  background-color:none;
  line-height: 1.3;
  padding-bottom:0;
}
.recruit #section03 .table td .list.short dd {
  display: flex;
  align-items: center;
  width: calc(100% - 3em);
  margin-left: 0;
  padding: 0;
  background-color: #fff;
  line-height: 1.3;
  padding-bottom:0;
}

.recruit #section04{padding: 50px 0px 50px;position: relative;z-index: 5;background: #f6f6f6;}

@media (min-width: 667px) {

}


@media (min-width: 768px) {
.recruit #section01{padding: 70px 0px;}
.recruit #section01 .index{font-size: 1.4em;margin-bottom: 1.5em;}

.recruit #section02{padding: 70px 0px;}
.h3-recruit{font-size: 1.5em;margin-bottom: 1.3em;}
.recruit #section02 ul li div{background: #ccc;border-radius: 50%;width: 200px;height: 200px;}


.recruit #section03{padding: 70px 0px;}
.recruit #section03 .table th{display: table-cell;width: 150px;}
.recruit #section03 .table td{display:table-cell;width: auto;}

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


}


@media (min-width: 992px) {
.recruit #section01 .txt{padding: 0 2em;line-height: 2;}

.recruit #section02 ul li div{width: 250px;height: 250px;}
.recruit #section03 .table th{display: table-cell;width: 200px;padding: 20px;}
.recruit #section03 .table td{display:table-cell;width: auto;padding: 20px;}

}


@media (min-width: 1200px) {
.recruit #section01{padding: 100px 0px;}
.recruit #section01 .index{font-size: 1.7em;margin-bottom: 1.5em;}
.recruit #section01 .txt{padding: 0 3em;line-height: 2;line-height: 2.2;font-size: 1.08em;}


.recruit #section02{padding: 100px 0px;}
.h3-recruit{font-size: 2em;margin-bottom: 1.7em;}
.recruit #section02 ul li div{width: 300px;height: 300px;}

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

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

}


.second_block {
    display: block;
    position: relative;
    padding: 0 0 0px;
}
.second_inner {
    max-width: 1100px;
    width: 100%;
    margin: 50px auto 0;
}

.second_chart ul {
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    border: none;
}
.second_chart ul li {
    width: 33%;
    background: #ddd;
    filter: drop-shadow(0px 1px 12px #ddd);
}
.second_chart ul li {
    width: 25%;
    background: #E8F5FF;
    display: flex;
    flex-flow: column;
    padding: 25px 30px 45px;
	position: relative
}
.second_chart ul li:first-child {z-index: 4;}
.second_chart ul li:nth-child(2) {z-index: 3;}
.second_chart ul li:nth-child(3) {z-index: 2;}


.second_chart ul li h3 {
    text-align: center;
    font-size: 1.3em;
	font-weight: 700;
    letter-spacing: 0.18rem;
    margin: 20px 0 30px;
    padding: 0;
}

.second_chart ul li p {
    font-size: 1rem;
    letter-spacing: 0.02rem;
    line-height: 1.6rem;
	padding-left: 5px;
}

.second_chart ul li:first-child:after {
    content: "";
    width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid #e8f5ff;
    top: 40px;
    position: absolute;
    right: -58px;
}
.second_chart ul li:nth-child(2):after {
    content: "";
    width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid #e8f5ff;
    top: 40px;
    position: absolute;
    right: -58px;
}
.second_chart ul li:nth-child(3):after {
    content: "";
    width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid #e8f5ff;
    top: 40px;
    position: absolute;
    right: -58px;
}


/* 2nd */
@media screen and (max-width: 767px) {
/* （ここにモバイル用スタイルを記述） */
	.second_inner {
    padding: 0 15px;
	}

	.second_chart ul {
    flex-flow: column;
	}
	.second_chart ul li {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
	}
	.second_chart ul li h3 {margin-bottom: 30px;	}
	.second_chart ul li:first-child:after {
    top: 99.5%;
    position: absolute;
    right: 50%;
    left: 50%;
    margin: 0 auto;
    border-top: 30px solid #e8f5ff;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
    transform: translate(-50%, 0px);
	}
	.second_chart ul li:nth-child(2):after {
    top: 99.5%;
    position: absolute;
    right: 50%;
    left: 50%;
    margin: 0 auto;
    border-top: 30px solid #e8f5ff;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
    transform: translate(-50%, 0px);
	}
	.second_chart ul li:nth-child(3):after {
    top: 99.5%;
    position: absolute;
    right: 50%;
    left: 50%;
    margin: 0 auto;
    border-top: 30px solid #e8f5ff;
    border-right: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
    transform: translate(-50%, 0px);
	}
}





/* company.html
--------------------------------------------------------- */
.company #section01{padding: 50px 0px 50px;position: relative;z-index:5;}
.company #section01 .txt1{text-align:center;padding: 0 50px;}

.company #section02{padding: 50px 0px 50px;position: relative;background:url("../images/bg-policy.jpg");background-position: center;background-repeat: no-repeat;background-size: cover; z-index:5;}
.company #section02 .index{margin-bottom: 2em;text-align: center;}
.company #section02 .index span{background: #0094C5;color: white;padding: .5em .8em;border-radius: .4em;font-weight: 600;font-size: 1.2em;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";}
.company #section02 .wrap{padding: 0 20px;width: auto; display: flex;flex-direction: column;}
.company #section02 .wrap .txt{font-size: 1.2em;color: black;margin-bottom: .5em;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";font-weight: 600;}
.company #section02 .wrap .txt:last-child{margin-bottom:0;}
.company #section02 .wrap .txt .fas{color: #0097CA;}
.company #section02 .pic{width: 260px;margin: 0 auto;}
.company #section02 .greeting{;}

.company .table{font-size: .9em;}
.company .table.gaiyo{margin-bottom: 50px;}
.company .table.pgroup{margin-bottom: 50px;}
.company .table.pgroup:last-child{margin-bottom:0px;}
.company .table th{font-weight:normal;width: 100%;display: block;padding: 15px .5em;}
.company .table.gaiyo th{background:#f7f7f7!important;}
.company .table.pgroup th{background:rgba(12,146,212,.04)!important;}
.company .table td{width: 100%;display: block;padding-left: 1em;background: white!important;}
.company .table td span{color: #333;}
.company .table td .wrap{}

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

.company #section04{padding: 50px 0px 50px;position: relative;z-index: 5;background: #fafafa;}
.company #section05{padding: 50px 0px 50px;position: relative;z-index: 5;}



@media (min-width: 667px) {

.company #section01 .txt1{text-align:center;padding: 0 0px;width: 350px;margin: 0 auto;}

.company .table th{width: 130px;display: table-cell;vertical-align: middle;}
.company .table td{width: auto;display: table-cell;padding-left: 1em;vertical-align: middle;}
.company .table.pgroup th{width: 180px;}

.company #section02 h4{margin-bottom: 1.2em;font-size: 1.4em;}
.company #section02 h4 span{width: 80px;margin-right: 10px;}

}



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


.company #section02{padding: 70px 0px 70px;}
.company #section02 .container{max-width: 650px;}

.company #section02 .index{margin-bottom: 0em;text-align: left;margin-top: .8em;}
.company #section02 .index span{padding: .6em 1em;font-size: 1.4em;}
.company #section02 .wrap{padding: 0 20px;width: auto; display: flex;flex-direction: column;}
.company #section02 .wrap .txt{font-size: 1.8em;color: black;margin-bottom: .5em;}
.company #section02 .wrap .txt:last-child{margin-bottom:0;}
.company #section02 .wrap .txt .fas{color: #0097CA;}
.company #section02 .pic{width: 360px;margin: 0 auto;}

.company #section03{padding: 70px 0px 70px;}
.company .table td .wrap{display: flex;}

.company #section04{padding: 70px 0px 70px;}
.company #section05{padding: 70px 0px 70px;}

.company .table.gaiyo{margin-bottom: 70px;}
.company .table.pgroup{margin-bottom: 70px;}

.company .table{font-size: 1em;}
.company .table th{width: 180px;}

.company .table.pgroup th{width: 200px;}

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


}




@media (min-width: 992px) {
.company #section01 .txt1{width: 450px;margin: 0 auto;}

.company .table th{width: 200px;}
.company .table td .wrap{display: flex;}
.company .table td .wrap ul{margin-right: 2em;}
.company .table td .wrap ul:last-child{margin-right: 0;}

.company #section02 .pic{width: 450px;margin: 0 auto;}
.company #section02 .greeting{font-size: 1.1em;line-height: 2;}

}



@media (min-width: 1200px) {
.company #section01{padding: 100px 0px 100px;}
.company #section01 .txt1{}

.company #section02{padding: 100px 0px 100px;}
.company #section02 .container{max-width: 760px;}
.company #section02 .greeting{font-size: 1.2em;line-height: 2.3;letter-spacing: .1rem;}

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

.company .table.gaiyo{margin-bottom: 80px;}
.company .table.pgroup{margin-bottom: 80px;}

.company .table th{padding: 1.5em 1.2em;width: 230px;}
.company .table td{padding: 1.5em 1em;}
.company .table.pgroup th{width: 250px;}

.company #section04{padding: 100px 0px 100px;}
.company #section05{padding: 100px 0px 100px;}

}


.timeline {
  list-style: none;
}
.timeline > li {
  margin-bottom: 25px;
}

/* for Desktop */
@media ( min-width : 667px ){
  .timeline > li {
    overflow: hidden;
    margin: 0;
	display: flex;
    position: relative;
	 margin-bottom: 0px;
	padding-bottom: 0px;
  }
  .timeline-date {
    width:180px;
    float: left;
    margin-top: 0px;
  }
  .timeline-content {
    width:calc(100% - 180px);
    border-left: 3px #ddd solid;
    padding-left: 30px;
	padding-bottom: 1.5em;
  }
  .timeline-content:before {
    content: '';
    width: 15px;
    height: 15px;
    background:#0086BC;
    position: absolute;
    left: 174px;
    top: 2px;
    border-radius: 100%;
  }
}

@media (min-width: 1200px) {
  .timeline-content {
    width:calc(100% - 180px);
    border-left: 3px #ddd solid;
    padding-left: 50px;
	padding-bottom: 1.5em;
  }

}

/* contact.html
--------------------------------------------------------- */


.contact #section01{padding: 50px 0px 50px;position: relative;z-index: 5;}
.contact #section01 .wrap{}
.contact #section01 .telbox{
    position: relative;
    margin: 0 auto;
    text-align: center;
	background:#ECFBFE;
	padding: 1.5em;
}
.contact #section01 .telbox:last-child{margin-bottom: 0;}
.contact #section01 .telbox .tel{font-size: 16px;font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";line-height: 1.5;}
.contact #section01 .telbox .tel .call{font-size: 28px;font-weight: 600;letter-spacing: .1rem;color: #333;}
.contact #section01 .time{font-size: .8em;letter-spacing: 0;}

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

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

.contact span.hissu{color: white;background:red; padding: 3px 5px;border-radius: 2px;font-size: 12px;line-height: 1.5;}
.contact .table {margin-bottom: 50px;}
.contact .table th{background: rgba(225,234,241,.6)!important;vertical-align: middle;font-weight: 700;position: relative;display: block;}
.contact .table td{background: white!important;vertical-align: middle;display: block;}
.contact .table th span.hissu{color: white;background: red; padding: 3px 5px;border-radius: 2px;position: absolute;right:15px;top:50%;transform: translateY(-50%);font-size: 12px;line-height: 1.5;}
.contact .table th span.small{font-weight: normal;font-size: 13px;}

.contact h5{font-weight: normal;border-bottom: 1px solid #ddd;padding-bottom: 10px; margin-bottom: 15px;font-size:1.2em;}
.tenpu{margin: 0;}
.tenpu input {
width: 90%;
 display: block;
 position: relative;
 font-size: 13px;
 letter-spacing: 0;
 padding: 5px 10px 5px 0;
 border-radius: 4px;
 transition: all 0.3s;
 color: #555;
 cursor: pointer!important;
 margin: 0px 0px 2px;
}


@media (min-width: 667px) {



}


@media (min-width: 768px) {

.contact #section01{padding: 70px 0px;}
.contact #section01 .wrap{width: 100%;margin: 0 auto;}
.contact #section01 .wrap{display: flex;align-items: flex-start;justify-content: space-between;}
.contact #section01 .telbox{width: 60%;margin-bottom: 0;}

.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 #section01 .wrap{width:100%;margin: 0 auto;}
.contact #section01 .telbox{padding: 2em 0;}

.contact #section01 .telbox .tel{font-size: 25px;letter-spacing: .2rem;}
.contact #section01 .telbox .tel .call{font-size:35px;letter-spacing: .2rem;}

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


}




@media (min-width: 1200px) {

.contact #section01{padding: 100px 0px;}
.contact #section01 .telbox{width:66.664%;margin: 0 auto;padding: 3em 0;}
.contact #section01 .telbox .tel{font-size: 25px;}
.contact #section01 .telbox .tel .call{font-size:45px;}


.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 #section01 .telbox{width:58%;margin: 0 auto;padding: 3em 0;}

}


.doi-box{padding: 30px 15px;border-radius: 5px;background: white;}
.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;}

@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-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:white!important;border:1px solid red!important;}

input::placeholder {
	color: #ddd;font-size: 14px;letter-spacing: 0.03rem;
}
input::-webkit-input-placeholder {
	color: #ddd;font-size: 14px;letter-spacing: 0.03rem;
}
input:-ms-input-placeholder {
	color: #ddd;font-size: 14px;letter-spacing: 0.03rem;
}
input::-moz-placeholder {
	color: #ddd;font-size: 14px;letter-spacing: 0.03rem;
}
textarea::placeholder {
	color: #ddd;font-size: 14px;letter-spacing: 0.03rem;
}
textarea::-webkit-input-placeholder {
	color: #ddd;font-size: 14px;letter-spacing: 0.03rem;
}
textarea:-ms-input-placeholder {
	color: #ddd;font-size: 14px;letter-spacing: 0.03rem;
}
textarea::-moz-placeholder {
	color: #ddd;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; }
.cb-header2 {display: none!important;}
header{display: block;}
.cb-header2 {display: none;}

.header {
  color: #fff;
  position:absolute;
  top: 0px;
  left:0;
  transition: color 0.4s ease-out;
  width: 100%;
  z-index: 500;
  height: 85px;
  display: flex;
  align-items: center;justify-content: space-between;
}

.logo{padding-left: 20px;}
.logo a{position: relative;display: flex;align-items: center;color: white;transition: .4s;font-weight: 700;font-size: 1.2em;}
.logo a img{margin-right: .3em;}

.header .navi{ display: flex;align-items: center;justify-content: flex-end;}
.header .info{display: flex;flex-direction: column;align-items: flex-end; margin-right: 2em;}
.header .info .telbox{color: white;display: flex;align-items: center;}
.header .info .tel{font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";margin-right: 1.5em;}
.header .info .tel span{font-size: 1.4em;letter-spacing: .1rem;color: white;}
.header .info .time{font-size: 12px;line-height: 1.2;}
.head-mail{}
.head-mail a{width: 130px;height: 85px; display: flex;flex-direction: column;align-items: center;justify-content: center;color: white; transition: .4s; background: #015d9e;  /* fallback for old browsers */
background: -webkit-linear-gradient(to right, #0296c3, #015d9e);  /* Chrome 10-25, Safari 5.1-6 */
background: linear-gradient(to right, #0296c3, #015d9e); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
.head-mail a .fas{font-size: 1.5em;}
.head-mail a span{margin-top: .2em;;}

/* ナビゲーションメニュー */
.nav-menu {}
.menu-list {
  display: flex;
  justify-content: center; /* メニューアイテムを中央揃えに */
}
.menu-item {position: relative;margin: 0 1.5em;}
.menu-item:last-child {margin: 0 0 0 1.5em;}

/* メニューアイテムのホバースタイル */
.menu-item a {
font-size: 15px;
font-weight: 500;
  align-items: center;
  color: white;
  display: flex;
  justify-content: center;
  text-decoration: none; /* リンクの下線を非表示 */
  transition: .3;
}
.menu-item a.active {color:#fff;}
.menu-item a.active::after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: -.1em;
  left:0;
  width: 100%;
  height: .1em;
  background: white;
  transition: .3s;
}



/* ナビゲーションメニュー */
.nav-menu {}
.menu-list {
  display: flex;
  justify-content: center; /* メニューアイテムを中央揃えに */
  margin-right: 0px;
}
.mv02{height:700px;z-index: 10;}
.mv02 .slide {height: 700px;}
.home #section02 .thumb{width: 100%;margin-left: 0%;}
.home #section04{padding: 70px 0 70px;}
.home #section04 .pic{position: absolute;bottom:-70px;left:10px;transform: translateX(0);margin-right: auto;width: 300px;}


.company .table th{width: 200px;}
.company .table.pgroup th{width: 230px;}

.contact #section01 .wrap{display: flex;align-items: flex-start;justify-content: space-between;}
.contact #section01 .telbox{width: 48%;margin-bottom: 0;}
.contact .table {margin-bottom: 70px;}
.contact .table th{display: table-cell;width: 200px;}
.contact .table td{display: table-cell;width: auto;}

.common ul{max-width: 100%;margin: 0 auto;}
.common .tel{margin-bottom: 0;}
.common .headline{margin-bottom: 0;}
.common .tel .call{font-size: 25px;}
footer .logoblock{margin-bottom: 30px;text-align: left;margin-left: 0;justify-content: flex-start;}
footer .logoblock img{width:30px;height: auto;}
footer .logoblock span{font-size: 1.4em;margin-left: .4em;}
footer .address{text-align: left;}
footer .tel{text-align:left;}
.footer-menu ul{justify-content:flex-end;}
.footer-menu li {padding-bottom: 0px;text-align: left;}
.footer-menu li a{text-decoration: none;padding: 0 .5em;letter-spacing: .08rem;margin-bottom: 0em!important;display: block;}
.footer-menu li:last-child a{padding: 0 0 0 .5em;}

.bn-km{text-align:right;margin-bottom: 1em;display: flex;flex-direction: column;align-items: flex-end;}
.bn-km p{text-align: left;font-size: .9em;width: 205px;margin-bottom: .2em;}

.drawer_menu{display: none!important;}

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

}
