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


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

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



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


@media (min-width: 768px) {
body {

}
}

@media (min-width: 992px) {

body {
font-size: 94%;
line-height: 1.7;
padding-top: 0;}

}
@media (min-width: 1200px) {
body {
font-size: 99%;
line-height: 1.8;
}


}


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

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

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

.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: 1140px) {
.mb120mb80{margin-bottom: 80px;}
.mb150mb100{margin-bottom: 100px;}
.mb50mb30{margin-bottom: 40px;}

}


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

}

@media (max-width: 767px) {
.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-sm{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: 2em;
  text-indent: -2em;
  line-height: 1.3;
}

.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: bolder;}
.f-normal{font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";}
.white { color: #ffffff; }
.red { color: #f00; }
.blue{color: dodgerblue;}
.green { color: forestgreen; }
.pink { color:rgba(255,87,154,.8); }
.orange { color: #f60; }
.murasaki { color:#AF47C2!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;
justify-content: space-between;
    width: 100%;
    margin: 0 auto;
	height: 60px;
	position: relative;
	background:white;
	border-bottom: 1px solid #ccc;}

.sc .logo{padding-left: 15px;width: 100px;}
.sc .logo a{}


header{display: none;}

@media (min-width: 768px) {
.sc .logo{padding-left: 15px;width: auto;}

}




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

header{display: block;position: relative;z-index: 160;}
.cb-header2 {display: none;}

.header {
  position: fixed;
  z-index: 100;
  background:url("../images/bg.jpg");
  top: 0px;
  left:0;
  transition: color 0.4s ease-out;
  width: 100%;
  height: 85px;
  display: flex;
  align-items: center;justify-content: space-between;
}
.header .logo{margin-left:20px;width: 160px;}
.header .logo a{}

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


/* ナビゲーションメニュー */
.nav-menu {}
.menu-list {
  display: flex;
  align-items: center;
  justify-content:flex-end;
  margin-right:20px;
}
.menu-item {position: relative;margin: 0 .5em;}
.menu-item:last-child {margin: 0 0 0 .5em;}

/* メニューアイテムのホバースタイル */
.menu-item a {
position: relative;
font-size: 16px;
text-align: center;
  align-items: center;
  color: #20319d;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-decoration: none; /* リンクの下線を非表示 */
  transition: .3;
  padding: 0;
  line-height: 1;
  font-family: ' TenorSans ';
  text-shadow:1px 1px 1px rgba(255,255,255,.8);
}
.menu-item a span{display: block;font-size: 14px;margin-top: .4em;font-family: ' NotoSansJP ';}

.menu-item a:hover {color:#20319d;}
.menu-item a:hover:after {
content:"";
position:absolute;
left:50%;
transform: translateX(-50%);
top:-.5em;
background:#20319d;/*線の色指定*/
width:5px;
height:5px;
border-radius: 50%;
}

.menu-item a.active {color: #20319d;}
.menu-item a.active:after {
content:"";
position:absolute;
left:50%;
transform: translateX(-50%);
top:-.5em;
background:#20319d;/*線の色指定*/
width:5px;
height:5px;
border-radius: 50%;
}

}

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

.menu-item a {
font-size: 17px;
  letter-spacing: 0;
}


}


@media (min-width: 1440px){
.menu-item {position: relative;margin: 0 1em;}
.menu-item:last-child {margin: 0 0 0 1em;}

.header .logo{margin-left:50px;}
.header .navi{padding-right:50px;}

}


@media (min-width: 1680px){

.menu-item {position: relative;margin: 0 1.5em;}
.menu-item:last-child {margin: 0 0 0 1.5em;}

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


}


/* スクロールしたらヘッダーメニューのフォントカラー変更 */
.header.headerColorScroll {
  height: 80px;
  background: white;
  transition: color 2s ease-out;
}








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

#main{position: relative;max-width: 1920px;margin: 0 auto; }
.mv02{ width:100%;position: relative;}
.swiper {
position: relative;
max-width: 100%;
  height: auto;
}

.swiper-slide {
  /*スライド要素の幅と高さを調整*/
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: bold;
}
.swiper-slide img{width: 100%;height: auto;}
.h2-main {
  color: #20319d;
  font-size:32px;
  line-height: 1.6;
  font-weight: 400;
  position: absolute;
  top: 50%;
  left: 3%;
  letter-spacing: .125em;
  transform: translateY(-50%);
  text-shadow:1px 1px 2px rgba(255,255,255,.8);
}
.h2-main.migi {
  left: auto;
 right: 3%; 
  transform: translateY(-50%);
}
/* アニメーションのキーフレーム設定 */
@keyframes fade-text {
  from {
      opacity: 0;
  }

  to {
      opacity: 1;
  }
}
/* テキストのアニメーション設定 */
.swiper-slide-active .h2-main {
  animation-name: fade-text;
  animation-duration: 1.5s;
  animation-delay: 1.5s;
  animation-fill-mode: both;
}



@media (max-width: 1780px){

.h2-main {
  font-size:27px;
  left: 30px;
  letter-spacing: .1em;
  transform: translateY(-50%);
}
.h2-main.migi {
  left: auto;
 right: 30px; 
}


}



@media (max-width: 1366px){
.h2-main {
  font-size:24px;
  left: 30px;
  letter-spacing: .08em;
}
.h2-main.migi {
  left: auto;
 right: 30px; 
}




}


@media (max-width: 1199px){
.h2-main {
  font-size:19px;
  left: 20px;
  letter-spacing: .05em;
}
.h2-main.migi {
  left: auto;
 right: 20px; 
}



}


@media only screen and (max-width: 991px) {
.h2-main {
  font-size:17px;
  top:70%;
  left: 20px;
  letter-spacing: .05em;
}
.h2-main.migi {
  left: auto;
 right: 20px; 
}




}

@media only screen and (max-width: 767px) {
.h2-main {
  font-size:16px;
  top:76%;
  left: 20px;
  letter-spacing: .05em;
}
.h2-main.migi {
  left: auto;
 right: 20px; 
}


}


@media only screen and (max-width: 666px) {
.h2-main {
  font-size:16px;
  top:15%;
  left: 20px;
  letter-spacing: .05em;
  text-shadow:1px 1px 1px rgba(255,255,255,.8);
}
.h2-main.migi {
  left: auto;
 right: 20px; 
 top:auto;
 bottom:15px;
}


}





/* index.html 
---------------------------------------------------- */
.home #section01{position: relative;padding: 70px 0 70px;}
.home #section01 .container{max-width: 1310px;}
.home .titlebox{margin-bottom: 25px;}
.home .titlebox h3{font-family: ' TenorSans ';font-weight: 400;font-size: 28px;color: #20319d;}
.home .titlebox h3 span{display: block;font-size: 16px;letter-spacing: 0;font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";margin-bottom: .3em;}
.newsarea{position: relative;overflow-y: scroll;background: white;border-top: 1px solid #ececec;}
.newsarea .set{padding: 15px;border-bottom: 1px solid #ececec;}
.newsarea a .set{position: relative;}
.newsarea .set:last-child{margin-bottom: 0;}
.newsarea .set .date{margin-bottom:.3em;line-height: 1.4;color: #222;}
.newsarea .set .date span.new{color:#20319d;margin-left: 5px;}
.newsarea .set .newstext{padding-right: 30px;position: relative;}
.newsarea .set .newstext .pdf{position: absolute;right:0px;top:.2em;top:50%;transform: translateY(-50%);}
.newsarea .set .newstext .pdf:hover{opacity: .7;}


.home #section02{position: relative;padding: 50px 0 20px;}
.home #section02 .pic1{position: relative;width: 80%;}
.home #section02 .pic2{position: relative;width:40%;margin-top: -55%;margin-left: 50%;}
.home #section02 .pic3{position: relative;width:25%;margin-left:15%;}
.home #section02 .pic4{position: relative;width:35%;margin-left:65%;}
.home #section02 .pic5{position: relative;width:38%;margin-left:45%;margin-top: -15%;}
.home #section02 .h3box{position: absolute;left:15px;bottom:36%;}
.home #section02 .h3box h3{font-weight: 400; color: #20319d;line-height: 1.7;font-size: 17px;}

.home #section03{position: relative;padding: 20px 0 20px;z-index: 5;}
.home #section03 .container{position: relative;}
.home #section03 h3{font-weight: 400; color: #20319d;line-height: 1.7;font-size: 17px;margin-bottom: 1.2em;}
.home #section03 p{margin-bottom: 1.5em;}

.home #section03 .pic1{position: relative;width:80px;margin-left: 10px;}
.home #section03 .pic2{position: relative;width: 30%;margin-left: 67%;margin-top: -50px;margin-bottom: 15px;}
.home #section03 .pic3{position: relative;width: 40%;margin-left: 50%;margin-top: -20px;}


.home #section04{position: relative;padding: 50px 0 100px;background: url("../images/bg1.jpg");background-position: center;background-size: cover;z-index: 3;}
.home #section04 .container{max-width: 1310px;}
.home #section04 h3{font-family: ' TenorSans ';font-weight: 400;font-size: 28px;color: #20319d;text-align: center;margin-bottom: 1em;}
.home #section04 h3 span{display: block;font-size: 16px;letter-spacing: 0;font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";margin-bottom: .3em;}
.home #section04 .index{color: #20319d;font-size: 1.2em;margin-bottom: 1em;}
.home #section04 .txt{margin-bottom: 1.5em;}
.home #section04 .pic{width: 280px;margin: 0 auto;}
.home #section04 h4{background: url("../images/bg2.jpg");background-position: top right;background-size: cover;font-family: ' TenorSans ';font-weight: 400; text-align: center;height: 70px;display: flex;flex-direction: column;align-items: center;justify-content: center;margin-bottom: .5em;font-size: 26px;color: #20319d;line-height: 1.2;}
.home #section04 h4 span{display: block;font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";margin-bottom: .3em;font-size: 14px;}
.home #section04 .txt2{text-align: center;}


.home #section05{position: relative;padding: 50px 0 130px;z-index: 5;}
.home #section05 .container{max-width: 1310px;}
.home #section05 h3{font-family: ' TenorSans ';font-weight: 400;font-size: 28px;color: #20319d;margin-bottom: 1em;}
.home #section05 h3 span{display: block;font-size: 16px;letter-spacing: 0;font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";margin-bottom: .3em;}
.home #section05 .pic1{width: 150px;margin-top: -100px;}
.home #section05 .pic2{width: 120px;margin-left: 50%;margin-top: -90px;margin-bottom: 1.5em;}
.home #section05 .index{color: #20319d;font-size: 1.2em;margin-bottom: 1em;}
.home #section05 .txt{margin-bottom: 1.5em;}
.home #section05 .pic3{width: 130px;position: absolute;left:50%;bottom:15px;z-index: 4;}
.home #section05 .pic4{width:45%;position:absolute;z-index: 3;right:0;bottom:0;}


.home #section06{position: relative;padding: 50px 0;}
.home #section06 .container{max-width: 1310px;z-index: 2;}
.home #section06 .container .box{border:1px solid #20319d;padding: 1.5em;}

.home #section06 h3{font-family: ' TenorSans ';font-weight: 400;font-size: 28px;color: #20319d;margin-bottom: 1em;}
.home #section06 h3 span{display: block;font-size: 16px;letter-spacing: 0;font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";margin-bottom: .3em;}
.home #section06 .pic1{width: 150px;position: absolute;top: -50px;left:0;}
.home #section06 .pic2{width: 100px;position: absolute;right:0;bottom: 0px;}

.gmap{margin-bottom: 1.5em;}
.gmap iframe{width: 100%;height: 220px;}

.btn-posi-right{display: flex;justify-content: flex-end;}

.btn-view{color: #333;font-weight: 500;padding: 0 1em; display: flex;align-items: center;justify-content: space-between; transition: .4s;border-radius: .6em;height: 50px;}
.arrow{
	position: relative;
	display: inline-block;
	padding: 0 15px 0 0px;
	color: #20319d;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
	font-family: ' TenorSans ';font-weight: 400;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0px;
	margin: auto;
	content: "";
	vertical-align: middle;
}
.arrow-migi::before{
	right: -5px;
	width: 10px;
	height: 1px;
	background: #20319d;
}
.arrow-migi::after{
	right: -5px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #20319d;
	border-right: 1px solid #20319d;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


@media (min-width: 450px) {
.btn-view{width: 250px;}

}


@media (min-width: 667px) {
.home .titlebox h3{font-size:3em;}
.home .titlebox h3 span{font-size: 17px;}
.home #section02 .h3box{position: absolute;left:15%;bottom:36%;}
.home #section02 .h3box h3{color: #20319d;line-height: 1.7;font-size: 20px;}

.home #section03{position: relative;padding: 40px 0 20px;}
.home #section03 .container{position: relative;max-width: 400px;}
.home #section03 h3{font-size: 20px;}
.home #section03 .pic1{position: absolute;left:10px; top:20px;width:80px;margin-left: auto;}
.home #section03 .pic2{position: absolute;width: 100px;left:30px;bottom:-30px;margin-left: auto;margin-top:auto;margin-bottom:auto;}
.home #section03 .pic3{position: absolute;width:130px;right:10px;bottom:70px;margin-left: auto;margin-top: auto;}

.home #section05 .pic3{width: 150px;position: absolute;left:55%;bottom:20px;z-index: 4;}
.home #section05 .pic4{width:28%;position:absolute;z-index: 3;right:0;bottom:0;}


.home #section06 .container{max-width: 480px;z-index: 2;}

.arrow{font-size: 16px;}


}




@media (min-width: 768px) {

.home #section01{padding: 90px 0 70px;}
.newsarea{margin: 0 auto;}
.newsarea .set{padding: 15px 15px;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{padding: 70px 0px 40px;}
.home #section02 .pic1{position: relative;width: 60%;}
.home #section02 .pic2{position: relative;width:30%;margin-top: -40%;margin-left: 5%;}
.home #section02 .pic3{position: relative;width:23%;margin-left:39%;margin-top: -80px;}
.home #section02 .pic4{position: relative;width:28%;margin-left:72%;margin-top: -70px;}
.home #section02 .pic5{position: relative;width:23%;margin-left:65%;margin-top: -20%;}
.home #section02 .h3box{position: absolute;left:35px;bottom:18%;}
.home #section02 .h3box h3{font-weight: 400; color: #20319d;line-height: 1.7;font-size: 20px;}

.home #section03{padding-bottom: 100px;}
.home #section03 h3{font-size: 20px;}
.home #section03 .pic1{position: absolute;left:15px; top:20px;width:100px;margin-left: auto;}
.home #section03 .pic2{position: absolute;width: 130px;left:50px;bottom:-30px;margin-left: auto;margin-top:auto;margin-bottom:auto;}
.home #section03 .pic3{position: absolute;width:160px;right:15px;bottom:70px;margin-left: auto;margin-top: auto;}




.home #section04{padding: 70px 0 130px;}
.home #section04 h3{font-size: 34px;}
.home #section04 h3 span{}
.home #section04 .index{color: #20319d;font-size: 1.2em;margin-bottom: 1em;}
.home #section04 .txt{margin-bottom: 1.5em;padding-right: 1.5em;}
.home #section04 .txt:last-child{margin-bottom:0;}
.home #section04 .pic{width: 90%;margin: 0 auto;margin-right: 0;}
.home #section04 h4{height: 100px;display: flex;flex-direction: column;align-items: center;justify-content: center;margin-bottom: .5em;font-size: 26px;color: #20319d;line-height: 1.2;}

.home #section05{padding: 70px 0;}
.home #section05 h3{font-size: 32px;margin-bottom: 1em;}
.home #section05 h3 span{font-size: 16px;}
.home #section05 .pic1{width:200px;margin-left: 15%; margin-top: -120px;}
.home #section05 .pic2{width: 150px;margin-left: 50%;margin-top: -90px;margin-bottom: 1.5em;}
.home #section05 .index{color: #20319d;font-size: 26px;margin-bottom: 1em;}
.home #section05 .txt{margin-bottom: 1.5em;}

.home #section05 .pic3{position: absolute;z-index: 3; top:56%;right: 14%; width:200px;margin-left: auto;}
.home #section05 .pic4{position: absolute;z-index: 2; top:50%;;right:-20%;width:40%;margin-left: auto;margin-top: auto;}




.home #section06{padding: 70px 0;}
.home #section06 .pic1{width: 300px;position: absolute;top: 0px;left:-50px;}
.home #section06 .pic2{width: 130px;position: absolute;right:0;bottom: 0px;}


.gmap{}


}



@media (min-width: 992px) {

.home #section01{padding: 90px 0 70px;}
.home .titlebox h3{font-size:35px;}
.home .titlebox h3 span{font-size: 18px;}
.newsarea{background: white;width:100%;}
.newsarea .set .date{width: 180px;}
.newstext{width: calc(100% - 180px);}

.home #section02 .pic1{position: relative;width: 50%;}
.home #section02 .pic2{position: relative;width:27%;margin-top: -35%;margin-left: 5%;}
.home #section02 .pic3{position: relative;width:20%;margin-left:46%;margin-top: 0px;}
.home #section02 .pic4{position: absolute;width:23%;margin-left:auto;margin-top:auto;top:20px;left:67%;}
.home #section02 .pic5{position: absolute;width:20%;margin-left:auto;margin-top:auto;right:3%;top:200px;}

.home #section02 .h3box{position: absolute;left:45%;bottom:auto;top:18%;}
.home #section02 .h3box h3{font-weight: 400; color: #20319d;line-height: 1.7;font-size: 22px;}

.home #section03 .container{position: relative;max-width: 600px;}
.home #section03 h3{font-size: 22px;}
.home #section03 p{margin-bottom: 1.8em;}
.home #section03 .pic1{position: absolute;left:15px; top:30px;width:130px;}
.home #section03 .pic2{position: absolute;width: 150px;left:50px;bottom:-30px;}
.home #section03 .pic3{position: absolute;width:190px;right:19px;bottom:80px;}

.home #section04 h4 span{font-size: 15px;}

.home #section05 h3{font-size: 38px;margin-bottom: 1em;}
.home #section05 h3 span{font-size: 16px;}
.home #section05 .pic1{width:300px;margin-left: 15%; margin-top: -120px;}
.home #section05 .pic2{width: 200px;margin-left: 55%;margin-top: -90px;margin-bottom: 1em;}
.home #section05 .pic3{position: absolute;z-index: 3; top:60%;right: 14%; width:250px;margin-left: auto;}
.home #section05 .pic4{position: absolute;z-index: 2; top:50%;;right:-20%;width:38%;margin-left: auto;margin-top: auto;}

.home #section06 .container{max-width:580px;z-index: 2;}
.home #section06 .pic2{width: 160px;position: absolute;right:0;bottom: -20px;}

.btn-view{font-size: 1.1em;height: 60px;width: 300px;}
.arrow{font-size: 18px;}


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

}




@media (min-width: 1200px) {

.home #section01{padding: 150px 0 100px;}
.home .titlebox h3{font-size:42px;}

.newsarea .set{padding: 20px 15px;}


.home #section02{padding: 100px 0 70px;}
.home #section02 .h3box{position: absolute;left:40%;bottom:auto;top:18%;}
.home #section02 .h3box h3{font-size: 26px;}



.home #section03{padding-bottom: 150px;}
.home #section03 .container{position: relative;max-width: 850px;}
.home #section03 h3{font-size: 26px;}
.home #section03 .pic3{position: absolute;width:190px;right:19px;bottom:180px;}


.home #section04{padding: 100px 0 180px;}
.home #section04 h3{font-size: 48px;}
.home #section04 h3 span{font-size: 18px;}
.home #section04 .index{color: #20319d;font-size: 28px;margin-bottom: 1em;}
.home #section04 .txt{margin-bottom: 1.5em;padding-right: 2.5em;font-size: 16px;}
.home #section04 .txt:last-child{margin-bottom:0;}
.home #section04 .pic{width: 90%;margin: 0 auto;margin-right: 0;}
.home #section04 h4{height: 95px;display: flex;flex-direction: column;align-items: center;justify-content: center;margin-bottom: 1em;font-size: 32px;}


.home #section05{padding: 100px 0;}
.home #section05 h3{font-size: 48px;margin-bottom: 1em;}
.home #section05 h3 span{font-size: 18px;}
.home #section05 .txt{margin-bottom: 1.5em;padding-right: 2em;}

.home #section05 .pic1{width:300px;margin-left: 15%; margin-top: -120px;}
.home #section05 .pic2{width: 200px;margin-left: 55%;margin-top: -90px;margin-bottom: 1em;}
.home #section05 .pic3{position: absolute;z-index: 3; top:auto;bottom:50px;;right: 15%; width:300px;margin-left: auto;}
.home #section05 .pic4{position: absolute;z-index: 2; top:auto;bottom:0px;right:0;width:400px;margin-left: auto;margin-top: auto;}

.home #section06{padding: 100px 0;}
.home #section06 .container{max-width:820px;z-index: 2;}
.home #section06 .container .box{padding: 2em 4em;}

.home #section06 h3{font-size: 48px;margin-bottom: 1em;}
.home #section06 h3 span{font-size: 18px;}
.home #section06 .pic1{width: 32%;position: absolute;top: 0px;left:-50px;}
.home #section06 .pic2{width: 230px;position: absolute;right:10px;bottom: 0px;}



.arrow{font-size: 20px;}





}





@media (min-width: 1440px) {
.home #section02 .pic1{position: relative;width: 55%;}
.home #section02 .pic2{position: relative;width:27%;margin-top: -35%;margin-left: 15%;}
.home #section02 .pic3{position: relative;width:20%;margin-left:47%;margin-top: 0px;}
.home #section02 .pic4{position: absolute;width:23%;margin-left:auto;margin-top:auto;top:20px;left:67%;}
.home #section02 .pic5{position: absolute;width:20%;margin-left:auto;margin-top:auto;right:2%;top:300px;}
.home #section02 .h3box{position: absolute;left:49%;bottom:auto;top:18%;}
.home #section02 .h3box h3{font-size: 26px;}

.home #section03 h3{font-size: 28px;}
.home #section03 .pic1{position: absolute;lwidth:180px;left:25px; top:30px;}
.home #section03 .pic2{position: absolute;width: 230px;left:50px;bottom:-45px;}
.home #section03 .pic3{position: absolute;width:260px;right:19px;bottom:120px;}

.home #section05 .txt{margin-bottom: 1.5em;padding-right: 4em;}
.home #section05 .pic1{width:300px;margin-left: 15%; margin-top: -180px;}
.home #section05 .pic2{width: 230px;margin-left: 55%;margin-top: -90px;margin-bottom: 1em;}
.home #section05 .pic3{position: absolute;z-index: 3; top:auto;bottom:50px;;right: 15%; width:300px;margin-left: auto;}
.home #section05 .pic4{position: absolute;z-index: 2; top:auto;bottom:0px;right:0;width:400px;margin-left: auto;margin-top: auto;}

.home #section06 .pic1{width: 430px;position: absolute;top: 0px;left:0px;}
.home #section06 .pic2{width: 230px;position: absolute;right:20px;bottom: 0px;}

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


}

@media (min-width: 1680px) {
.home .titlebox h3{font-size:46px;}
.home .titlebox h3 span{font-size: 18px;}

.home #section02 .container .box p{text-align: center;font-size: 1.3em;margin-bottom: .6em;}

.home #section06 .pic1{width: 430px;position: absolute;top: 0px;left:0px;}
.home #section06 .pic2{width: 300px;position: absolute;right:40px;bottom: 0px;}




}


@media (min-width: 1850px) {
.home #section03{padding-bottom: 0px;padding: 80px 0 180px;}
.home #section03 .pic1{position: absolute;lwidth:200px;left:70px; top:20px;}
.home #section03 .pic2{position: absolute;width: 300px;left:120px;bottom:-110px;}
.home #section03 .pic3{position: absolute;width:480px;right:30px;bottom:50px;}

.home #section04 .txt{margin-bottom: 1.5em;padding-right: 3em;font-size: 16px;}

.home #section05 .pic1{width:400px;margin-left: 13%; margin-top: -190px;}
.home #section05 .pic2{width: 370px;margin-left: 60%;margin-top: -220px;margin-bottom: 2em;}
.home #section05 .pic3{position: absolute;z-index: 3; top:auto;bottom:75px;;right: 15%; width:400px;margin-left: auto;}
.home #section05 .pic4{position: absolute;z-index: 2; top:auto;bottom:0px;right:0;width:550px;margin-left: auto;margin-top: auto;}

.home #section06{padding: 150px 0;}
.home #section06 .pic1{width: 600px;position: absolute;top: 0px;left:0px;}
.home #section06 .pic2{width: 300px;position: absolute;right:50px;bottom: 50px;}
.home #section06 .container .box{padding: 3em 4em;}


}



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






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: #66ccff;}

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

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


}



/* pagetop 
---------------------------------------------------- */
#pagetop {
    position: absolute;
    bottom: 0px;
    right: 50px;
    z-index: 500;
	transition: .5s;
}
#pagetop:hover {opacity: .8;}


@media (max-width: 1440px) {
#pagetop {
	width: 30px;
    bottom: 0px;
    right: 25px;
}



}

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

}

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

}


/* -----  common / footer ------- */
#common{max-width: 1920px;margin: 0 auto;padding: 50px 0; margin-top: 50px; position: relative;background:url("../images/bg-common.jpg");background-position: center;background-size: cover;}
#common .container{max-width: 700px;}
#common h3{font-family: ' TenorSans ';font-weight: 400;font-size: 30px;color: #20319d;margin-bottom: 1em;text-align: center;}
#common h3 span{display: block;font-size: 16px;letter-spacing: 0;font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";margin-bottom: .3em;}
#common .container ul li{margin-bottom: 30px;}
#common .container ul li:last-child{margin-bottom: 0px;}
#common .wrap{display: flex;flex-direction: column;align-items: center;}
#common .wrap .icon{width: 45px;margin: 0 auto; margin-bottom: 1em;;}

#common .tel{text-align: center;display: flex;align-items: center;justify-content: center;line-height: 1.2;}
#common .tel .call{font-size: 30px;color:#313131;font-family: ' TenorSans ';font-weight: 400;}
#common .time{text-align: center;font-size: .9em;}
#common .mail{display:flex;align-items: center;justify-content: center;width: 90%;text-align: center;padding: .7em 1em; font-size:15px;letter-spacing: 0;transition: .4s; color:#313131;border:1px solid #313131;position: relative;}
#common .mail:hover{color:#fff;background:#313131; }
.dli-arrow-right {position: absolute;
right:20px;
top:50%;
transform: translateY(-50%);
  vertical-align: middle;
  color: #313131;
  line-height: 1;
  width: 1em;
  height: 0.1em;
  background: currentColor;
}
.dli-arrow-right::before {
  content: '';
  width: 0.65em;
  height: 0.65em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  right: -0.05em;
  box-sizing: border-box;
}

#common .mail:hover .dli-arrow-right {color: #eee;}


footer{ padding: 50px 0px 20px;position: relative;background: #20319d;color: white;}
footer .container{max-width: 1310px;z-index: 10;padding-top: 50px;border-top:1px solid #eee;}
.shopBN{max-width: 1100px;padding: 0 15px; margin: 0 auto;margin-bottom: 50px;display:  flex;flex-wrap: wrap;justify-content: space-between;}
.shopBN a{width: 48%;background: white;display: flex;align-items: center;justify-content: center;padding: 1em;margin-bottom: 4%;}


footer .logoblock{position: relative;text-align: center;margin-bottom: 20px;}
footer .logoblock a{color:white;font-weight: 500;transition: .4s;letter-spacing: 0;font-size: 1.3em;line-height: 1.2;}


footer .address{font-size: .9em;letter-spacing: 0;text-align: center;margin-bottom: .6em;}
footer .address a{font-size:1.1em;color: white;}
footer .address a:hover{color:#eee;}

footer .tel{font-size: 1em;text-align: center;font-weight: 400;margin-bottom: 1.5em;line-height: 1.5;}
footer .tel span.call{color: #fff;}


.footer-menu{width: 100%;margin: 0 auto; margin-bottom: 1.5em;padding: 0 20px;}
.footer-menu ul{display: block;}
.footer-menu li{width:100%;text-align: left;background:none;font-size: 15px;}
.footer-menu li a{color: #fff;text-decoration: none; text-align:center; padding: .7em .3em;line-height: 1.2; border-bottom: 1px dashed rgba(255,255,255,.4);display: block;letter-spacing: 0; transition: .3s;font-family: ' TenorSans ';font-weight: 400;}
.footer-menu li a span{display: block;font-family: ' NotoSansJP ';font-size: .9em;}

.footer-menu li:first-child a{border-top: 1px dashed rgba(255,255,255,.4);}

.footer-menu li a:hover{color:#f69;}



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

@media (min-width: 667px) {

#common .tel{text-align: center;}
#common .tel .call{font-size: 23px;}
#common .tel .mail{font-size:16px;letter-spacing: 0;transition: .4s;}
#common .tel .mail:hover{color:#A62800;}

.shopBN a{width: 23%;background: white;display: flex;align-items: center;justify-content: center;padding: 1em;margin-bottom:0;}

footer .address{text-align: center;font-size: 1em;}
footer .tel{text-align: center;font-size: 1em;letter-spacing: .1rem;}
footer .tel span.call{color: #fff;margin-right: 1em;}

.footer-menu{width: 100%;border-top: none;padding: 0px;}
.footer-menu{border-top: none;margin-bottom: 1.5em;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 0;display: flex;flex-wrap: wrap;justify-content: center;}
.footer-menu li {width: auto;padding-bottom: 0px;position: relative;background: none;text-align: left;font-size: 13px;}
.footer-menu li a{letter-spacing:0rem;border-right:none; padding:0em .5em;text-align:center;border-bottom: none;line-height: 1.3;color: white;}
.footer-menu li:first-child a{border-top: none;padding:0em .5em 0 0;}
.footer-menu li:last-child a{border-top: none;padding:0em 0 0 .5em;}

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

}



@media (min-width: 768px) {
#common{padding: 70px 0;}
#common h3{font-size: 38px;margin-bottom: 1em;}
#common h3 span{font-size: 16px;letter-spacing: 0;margin-bottom: .3em;}
#common .container ul li{margin-bottom: 0px;}
#common .tel{text-align: center;display: flex;align-items: center;justify-content: center;line-height: 1.2;font-size: 17px;}
#common .tel .call{font-size: 35px;color:#313131;font-family: ' TenorSans ';font-weight: 400;}
#common .time{text-align: center;font-size: .9em;}
#common .mail{display: block;width: 90%;text-align: center;padding: 1em 1em; font-size:16px}


footer {padding: 70px 0 130px;}
.shopBN{margin-bottom: 70px;}

footer .container{padding-top: 70px;}

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

.footer-menu li {font-size: 15px;}
.footer-menu li a{letter-spacing:0.03rem;border-right:none; padding:0em .6em;}
.footer-menu li:first-child a{border-top: none;padding:0em .6em 0 0;}
.footer-menu li:last-child a{border-top: none;padding:0em 0 0 .6em;}



.copy{font-size: 12px;}


}


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

footer .container{padding: 70px 60px 0;}

footer .logoblock{margin-bottom: 20px;margin-left: 0;text-align: left;}
footer .logoblock a{font-size: 20px;}

footer .address{font-size: .9em;text-align: left;margin-bottom: 5px;}
footer .tel{text-align: left;margin-bottom: 0;}
.footer-menu{border-top: none;margin-bottom: 0;}

.footer-menu ul{justify-content: flex-end;}



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

.copy{font-size: 12px;text-align: right;}
.copy{padding-top: 30px;}

}




@media (min-width: 1200px) {
#common{padding: 80px 0;margin-top: 100px;}
#common h3{font-size: 48px;margin-bottom: 1em;}
#common h3 span{font-size: 18px;letter-spacing: 0;margin-bottom: .3em;}
#common .wrap .icon{width: 52px;margin: 0 auto; margin-bottom: 1.6em;;}
#common .tel{text-align: center;display: flex;align-items: center;justify-content: center;font-size: 18px;font-weight: 600;}
#common .tel .call{font-size: 35px;color:#313131;font-family: ' TenorSans ';font-weight: 400;}


footer{padding: 100px 0 130px;}
footer .logoblock a{font-size:22px;}
.shopBN{margin-bottom: 100px;}

footer .container{padding: 80px 80px 0;}

.footer-menu li {font-size: 15px;}


.copy{font-size: 14px;}



}


@media (min-width: 1440px) {
#common{padding: 100px 0;}
#common .tel{text-align: center;display: flex;align-items: center;justify-content: center;font-size: 18px;font-weight: 600;}
#common .tel .call{font-size: 38px;color:#313131;font-family: ' TenorSans ';font-weight: 400;}
#common .mail{display: block;width: 90%;text-align: center;padding: 1.2em 1em; font-size:16px}




footer{padding: 100px 0 150px;}
footer .logoblock{margin-bottom: 30px;}
.footer-menu li a{letter-spacing:0.03rem;border-right:none; padding:0em .6em;font-size: 1.05rem;}
.footer-menu li a span{font-size: 14px;}

.copy{padding-top: 50px;}




}



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

.h2area{
position: relative;
max-width: 100%;
height: 350px;
display: flex;
align-items: center;
}

.h2area.service{background: url("../images/h2-service.jpg");background-position: center;background-size: cover;}
.h2area.kaigai{background: url("../images/h2-oversea.jpg");background-position: center;background-size: cover;}

.h2area.h2-company{background: url("../images/h2-company.jpg");background-position: center;background-size: cover;}
.h2area.h2-contact{background: url("../images/h2-contact.jpg");background-position: center;background-size: cover;}
.h2-txt{position: absolute;top:50%;left:50%;z-index: 50; transform: translate(-50%, -50%);margin-right: -50%; font-size: 30px;letter-spacing: .2em; color:#2F43AB;padding-top: 80px; text-align: center;font-weight: 400;
text-shadow:1px 1px 5px #ccc;line-height: 1;font-family: ' TenorSans ';}
.h2-txt span{display: block;margin-top: .5em;font-size: 16px;}
.h2-txt::before,
.h2-txt::after {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background: #2F43AB;
}
.h2-txt::before {margin-bottom: .4em;margin-left: -.1em;}
.h2-txt::after {margin-top: .5em;margin-left: -.1em;}
.h2-txt.long{letter-spacing: .03rem;left:50%;}

@media (max-width: 1366px){
.h2area{
height: 320px;
}



}


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






}

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


.h2-txt{ font-size:30px;padding-top: 0px;}



}


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


.h2-txt{ font-size:30px;}




}

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

.h2-txt{font-size: 24px;letter-spacing: .05rem;}


}




/*------------------------------　　下層ページ style　　------------------------------------------*/
.headline-h3{font-family: "Limelight", sans-serif;font-weight: 400;font-size: 2.5em;color: #b78623;border-bottom:1px solid #555;padding-bottom:.3em;margin-bottom: 40px;}
.headline-h3 span{display: block;font-family: ' ZenMaruGothic ';font-weight: 500; font-size: 16px;letter-spacing: 0;color: #333;}
.headline-h3 span:before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 20px;/*画像の幅*/
  height: 16px;/*画像の高さ*/
  background-image: url(../images/ico-diamond.png);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-right: 2px;
}




.headline-h4 {
  font-weight:bold;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  font-size: 1.3em;
 position: relative;
 padding-bottom: .6em;
  margin-bottom: 1.2em;
}
.headline-h4::after {
  content: '';
  position: absolute;
  bottom:0;
  left:0%;
  display: block;
  width: 1.5em;
  height: 1px;
  background:#3044AC;
}

.headline {
font-weight: bold;
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
font-size: 1.5em;
 position: relative;
 z-index: 10;
 display: flex;
 align-items: center;
 justify-content: center;
 text-align:center;
  margin-bottom: 1.3em;
  letter-spacing: .08rem;
  color:#2F43AB;
}
.headline::before,
.headline::after {
  background-color:#2F43AB;
  content: "";
  height: 1px;
  width: 20px;
  border-radius: 2px;
}
.headline::before {margin-right: 7px;}
.headline::after {margin-left: 5px;}

@media (min-width: 667px) {


}



@media (min-width: 768px) {
.headline {
font-size: 1.8em;
  margin-bottom:1.5em;
  letter-spacing: .2rem;
}


.headline-h3 {font-size: 50px;margin-bottom: 50px; }

.headline-h4 {
  font-size: 1.6em;
 position: relative;
  margin-bottom: 1.2em;
}


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

}


@media (min-width: 992px) {
.headline {font-size:32px;font-weight:600;letter-spacing: .3rem;}
.headline::before,
.headline::after {
  height: 1px;
  width: 25px;
}
.headline::before {margin-right: 10px;}
.headline::after {margin-left: 5px;}

.headline-h3 {letter-spacing: .2rem;}

.headline-h3 span{font-size: 25px;}
.headline-h3 span:before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 31px;/*画像の幅*/
  height: 25px;/*画像の高さ*/
  background-image: url(../images/ico-diamond.png);
  background-size: contain;
  vertical-align: middle;
  margin-right: 5px;
}


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


}


@media (min-width: 1200px) {

.headline-h4 {
  font-size: 26px;
 position: relative;
  margin-bottom: 1.8em;
}


}


@media (min-width: 1680px) {
.headline {font-size:38px;margin-bottom: 1.3em;}

.headline-h3 {font-size: 62px;}

.headline-h3 span{font-size: 26px;}




}




#pankuzu{}





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



.btn-back {
  display: inline-block;
  padding:10px 5px;
  text-align: center;
  width:200px;
  text-decoration: none;
  background:#1B32A4;
  color: #fff;/*文字色*/
  letter-spacing: .05rem;
  transition: .3s;
}
.btn-back:hover{
  color: #333;/*文字色*/
  background:rgba(19,51,171,.1);

}

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

}


@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 {
	line-height: 1.4;
	font-size: 15px;font-weight: 400;
}
.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:#3044AC;
	color:#fff;
}
.paging span.paging-text a:hover {
	background:#3044AC;
	color:#fff;
}



/* shadow */
.box-shadow {box-shadow: 4px 4px #cdeaf8;}
.box-shadow2 {box-shadow: 5px 7px 5px rgba(0,0,0,.2)}
.drop-shadow { -webkit-filter: drop-shadow(0px 2px 7px rgba(0,0,0,.09));filter: drop-shadow(0px 2px 7px rgba(0,0,0,.09)); }
.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: 768px) {
.table-responsive {
border:none;margin-bottom: 15px;
}
.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:#B6C1E6;
}
}



/*サムネ付きスライダー start*/
.slickwrap {
position: relative;
width: 100%;
max-width: 780px;
margin: 0px auto;
margin-bottom: 60px;
  background-color:none;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.slider {
border:1px solid #eee;
  width: 100%;
  margin: 0 0 10px 0;
  overflow:hidden;
  background: white;
  padding: 0;
}
.slide-item img {width: 100%;height: auto;}
.slide-item .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;
}


.thumbnail-list {
  width: 100%;
  margin: 0;
  padding:0 0px;
}
.thumbnail-list .slick-track {
  transform: unset !important;
  width: 100% !important;
  display: flex!important;
flex-wrap: wrap;
}
.thumbnail-item {
  transition: .3s;
  padding: 1px;
  width:16.666%!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 green;
opacity: 1;
}
.thumbnail-item:hover img{opacity: 1;}
.thumbnail-item img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.arrow_box {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: absolute;
  width: 100%;
  top:40%;
}

.prev-arrow{
  display: block;
  width: 70px;
  height: 70px;
  background: rgba(102,153,51,.6);
  border-radius: 50%;
  transition: all .3s ease;
  cursor: pointer;
  position:absolute;
  left:-35px;
}
.next-arrow {
  display: block;
  width: 70px;
  height: 70px;
  background: rgba(102,153,51,.6);
  border-radius: 50%;
  transition: all .3s ease;
  cursor: pointer;
  position:absolute;
  right:-35px;
}
.prev-arrow {transform: rotate(180deg);}
.prev-arrow:hover{background: rgba(102,153,51,.9);}
.next-arrow:hover{background: rgba(102,153,51,.9);}


.prev-arrow::before{
  position:absolute;
  content: "";
  width:10px;
  height:10px;
  border-right: 2px solid #FFF;
  border-top: 2px solid #FFF;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  transform:rotate(45deg);
}
.next-arrow::before{
  position:absolute;
  content: "";
  width:10px;
  height:10px;
  border-right: 2px solid #FFF;
  border-top: 2px solid #FFF;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  transform:rotate(45deg);
}

@media screen and (max-width:991px) {
.slickwrap{width: 500px;}
  .prev-arrow,
  .next-arrow {
    width: 40px;
    height:40px;
  }
.prev-arrow{left:-15px;}
.next-arrow {right:-15px;}


}

@media only screen and (max-width:767px){
.slickwrap{width:90%;}

.slider {margin: 0 0 10px 0;}
  .prev-arrow,
  .next-arrow {
    width: 30px;
    height:30px;
  }
.prev-arrow{
  left:-12px;
}

.next-arrow {
  right:-12px;
}
.prev-arrow::before{
  position:absolute;
  content: "";
  width:8px;
  height:8px;
  border-right: 2px solid #FFF;
  border-top: 2px solid #FFF;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  transform:rotate(45deg);
}
.next-arrow::before{
  position:absolute;
  content: "";
  width:8px;
  height:8px;
  border-right: 2px solid #FFF;
  border-top: 2px solid #FFF;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  transform:rotate(45deg);
}

}

@media only screen and (max-width:500px){
.slickwrap{width:100%;margin-bottom: 30px;}
}
/*サムネ付きスライダー end*/










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








/* ----- service.html  -----*/
#cate-tab{padding: 50px 15px 20px;position: relative;}

.service #section01{padding: 50px 0 50px;position: relative;}
.service #section01 .container{max-width: 100%;}
.bubble{padding: 50px 0 0!important;position: relative;}
.bubble .bg1{position: absolute;left:0;top:10px;width: 70%;}
.bubble .bg2{padding: 1.5em 0;}
.bubble .container{max-width: 100%;}
.h3-itemcategory{margin-bottom: 1.5em;font-size: 1.2em;}
.bubble .h3-itemcategory{line-height: 1.4;margin-bottom: 2em;}
.bubble .h3-itemcategory span{background: rgba(19,51,171,1);color: white;padding: .3em .5em;position: relative;}
.bubble .h3-itemcategory span::before,
.bubble .h3-itemcategory span::after {
    position: absolute;
    width: 10px;
    height: 10px;
    content: '';
}
.bubble .h3-itemcategory span::before {
    border-left: solid 1px #0234B2;
    border-top: solid 1px #0234B2;
    top: -5px;
    left: -5px;
}
.bubble .h3-itemcategory span::after {
    border-right: solid 1px #0234B2;
    border-bottom: solid 1px #0234B2;
    bottom: -5px;
    right: -5px;
}
.bubble .h4-title{line-height: 1.4;margin-bottom: 1.5em;font-size: 1.2em;font-weight: normal;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";letter-spacing: .05rem;color: black;}

.itembox{background: white;padding: .5em;display: flex;align-items: center;justify-content: space-between;border:1px solid #ccc;border-radius: 1em;}
a .itembox{transition: .4s;}
a:hover .itembox{background:white;}

.itembox .thumb{background:white;width: 45%;}
.itembox .thumb .photo-ofi {
  height: 0;
  display: block;
  background: none;
  overflow: hidden;
  position: relative;
  padding-bottom: 100%;
}
.itembox .exp{padding: 0.7em .7em .2em;width: 50%;}
a .itembox .exp{color: #333;}
.itembox .exp .itemtitle{line-height: 1.4;letter-spacing: .05rem;position: relative;padding-right: 1em;}
.itembox .exp .itemtitle::after {
  font-family: "Font Awesome 5 Free";
  content: "\f0da";
  font-weight: 900;
  font-size: .8em;
  position: absolute;
  right:0;
  top:50%;
  transform: translateY(-50%);
}
.thumb2{position: relative;background: white;padding: .5em;border:1px solid #ccc;border-radius: 1em;}
.thumb2 .photo-ofi {
  height: 0;
  display: block;
  background: none;
  overflow: hidden;
  position: relative;
  padding-bottom: 90%;
  /* 高さを指定（ボックスの横幅を基準） */
}
.thumb2 .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;
}



.service #section02{padding: 50px 0;position: relative;border-top:6px dotted #DF9C00;}
.service #section02 .container{max-width: 100%;}

.service #section03{padding: 50px 0;position: relative;border-top:6px dotted #DF9C00;}
.service #section03 .container{max-width: 100%;}

.service #section04{padding: 50px 0 50px;position: relative;border-top:6px dotted #DF9C00;}
.service #section04 .container{max-width: 100%;}


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

@media (min-width: 667px) {
.service-pic{width: 350px;}
.h3-itemcategory{margin-bottom: 1.5em;font-size: 1.2em;}
.itembox{padding: .8em;display: flex;flex-direction: column;}
a .itembox{padding: .8em;}
.itembox .thumb{background:white;width: 100%;}
.itembox .thumb .photo-ofi {
  height: 0;
  display: block;
  background: none;
  overflow: hidden;
  position: relative;
  padding-bottom: 100%;
}
.itembox .exp{padding: 1.7em .5em .9em;width: 100%;margin-top: auto;}
.itembox .exp .itemtitle{}
.bubble .container{max-width: 100%;}

}


@media (min-width: 768px) {
#cate-tab{padding: 50px 20px;}

.service #section01{padding: 5px 0 70px;}
.bubble{padding: 150px 0 0px!important;}
.bubble .h3-itemcategory {margin-bottom: 3em;}
.bubble .h3-itemcategory span{padding: .5em .8em;}



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


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

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


}


@media (min-width: 992px) {
.bubble .h3-itemcategory{line-height: 1.4;font-size: 20px;}
.bubble .h3-itemcategory span::before,
.bubble .h3-itemcategory span::after {
    position: absolute;
    width: 10px;
    height: 10px;
    content: '';
}
.bubble .h3-itemcategory span::before {
    border-left: solid 1px #0234B2;
    border-top: solid 1px #0234B2;
    top: -5px;
    left: -5px;
}
.bubble .h3-itemcategory span::after {
    border-right: solid 1px #0234B2;
    border-bottom: solid 1px #0234B2;
    bottom: -5px;
    right: -5px;
}
.bubble .bg1{position: absolute;left:0;top:10px;width: 70%;}


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

}


@media (min-width: 1200px) {

#cate-tab{padding: 80px 20px 50px;}


.service #section01{padding: 50px 0 100px;}
.bubble .container{max-width: 1110px!important;}

.itembox{padding: 1em;}
a .itembox{padding: 1em;}
.bubble{padding: 200px 0 0px!important;}
.bubble .h3-itemcategory span{padding: .5em 1em;}
.bubble .h3-itemcategory span::before,
.bubble .h3-itemcategory span::after {
    position: absolute;
    width: 10px;
    height: 10px;
    content: '';
}
.bubble .h3-itemcategory span::before {
    top: -8px;
    left: -8px;
}
.bubble .h3-itemcategory span::after {
    bottom: -8px;
    right: -8px;
}
.bubble .bg1{position: absolute;left:0;top:10px;width: 800px;}

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


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

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




}

@media (min-width: 1366px) {

#cate-tab{padding: 80px 0px 80px;width: 1210px;margin: 0 auto;}
.service #section01 .container{max-width: 1200px;}
.bubble{padding: 200px 0 0px!important;}
.bubble .container{max-width: 1110px!important;}

.bubble .h3-itemcategory{line-height: 1.4;font-size: 23px;}
.bubble .bg1{position: absolute;left:0;top:10px;width: 1115px;}

}


.catemenu {display:none;}
.menubtn {
	padding: 12px 15px 12px 20px;
	background:#1B32A4;
	font-family: ' TenorSans ';
	color: #fff;
}
.menubtn:hover {cursor: pointer;}

#menu ul {
	margin: 0;
	padding: 0;
}
#menu li {list-style: none;}
#menu li a {position: relative;display: block;color: #555;background: white;border-bottom:1px solid #1B32A4;padding: .7em;transition: .4s;font-weight: 400;}
#menu li a::after {
  font-family: "Font Awesome 5 Free";
  content: "\f0da";
font-weight: 900;
font-size: .8em;
position: absolute;
  right:.5em;
  top:50%;
  transform: translateY(-50%);
}



@media only screen and (min-width: 667px) {
.menubtn {display:none;	}
.catemenu {display:block;}
#menu ul{display: flex;flex-wrap: wrap;}
#menu li {width: 25%;padding: .2em;}
#menu li a {position: relative;display: block;color: #333;background: white;border:1px solid #1B32A4;padding: .7em;}
#menu li a:hover {color: #fff;background: white;background: #1B32A4;}
#menu li a.active {color: #fff;background: white;background: #1B32A4;}

}

@media only screen and (min-width: 1200px) {
#menu li {width: 20%;padding: .2em;}
#menu li a {padding: .7em .7em .7em 1em;}


}


/* overseascustomers.html
--------------------------------------------------------- */


.overseascustomers #section01{padding: 50px 0px 50px;position: relative;}
.overseascustomers #section01 h3{text-align: center;font-weight: bold;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";font-size: 1.3em;letter-spacing: .05rem;line-height: 1.6;margin-bottom: 1.3em;}
.overseascustomers #section01 .txt1{letter-spacing: .05rem;line-height: 1.6;margin-bottom: 2em;}
.overseascustomers .chat{width: 290px;margin: 0 auto;margin-bottom: 40px;}
.overseascustomers .chat li{margin-bottom: 15px;}
.overseascustomers .chat li:last-child{margin-bottom: 0px;}
.overseascustomers #section01 .txt2{letter-spacing: .05rem;}

.mail-oversea{display: flex;align-items: center;flex-direction: column;justify-content: center;height: 90px;margin-top: 1em;border:1px solid #333;color: black;font-size: 2em;transition: .4s;}
.mail-oversea span{font-size: 15px;margin-top: .3em;}
.overseascustomers #section01 .en{margin-bottom: 50px;font-family: ' TenorSans ';border: 5px solid #eee;padding: 1.5em;position: relative;}
.overseascustomers #section01 .en::after {
   background-color:rgba(12,48,236,1.00);
   content: ''; 
   display: block;
   position: absolute;
   top: -5px;
   left: -5px;
   width: 5px;
   height: 5px;
   z-index: 1;
}
.overseascustomers #section01 .en h3{margin-bottom: 1em;font-family: ' TenorSans ';font-weight: 400;text-align: left;color: rgba(12,48,236,1.00);letter-spacing: 0;}
.overseascustomers #section01 .en p{line-height: 1.5;}

.overseascustomers #section02{padding: 50px 0px 40px;position: relative;}


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


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


@media (min-width: 667px) {
.overseascustomers .chat{width: 600px;margin: 0 auto;margin-bottom: 60px;}
.mail-oversea{margin-top: 0;}

}


@media (min-width: 768px) {
.overseascustomers #section01{padding: 70px 0px;}
.overseascustomers #section01 h3{font-size: 1.5em;}
.overseascustomers #section01 .txt1{letter-spacing: .05rem;line-height: 1.6;text-align: center;}
.overseascustomers #section01 .en{margin-bottom: 70px;border: 8px solid #eee;padding: 2em;}
.overseascustomers #section01 .en::after {
   top: -8px;
   left: -8px;
   width: 8px;
   height: 8px;
}
.overseascustomers #section01 .en h3{margin-bottom: .6em;font-size: 1.7em;}
.overseascustomers .chat{width: 700px;margin: 0 auto;margin-bottom: 60px;}
.overseascustomers #section01 .txt2{width: 700px;margin: 0 auto;}

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

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

}


@media (min-width: 992px) {
.overseascustomers #section01 h3{font-size: 1.5em;font-weight: 600;}
.overseascustomers #section01 .txt1{letter-spacing: .05rem;line-height: 2;text-align: center;}
.overseascustomers .chat{width: 900px;margin: 0 auto;margin-bottom: 70px;}
.overseascustomers #section01 .txt2{width:680px;margin: 0 auto;display: flex;flex-direction: column;justify-content: center;}

.mail-oversea{display: flex;align-items: center;flex-direction: column;justify-content: center;height: 90px;border:1px solid #333;color: black;font-size: 2em;transition: .4s;}
.mail-oversea:hover{border:1px solid #333;color: #fff;background: #333;}

}


@media (min-width: 1200px) {
.overseascustomers #section01{padding: 100px 0px;}
.overseascustomers #section01 .txt1{letter-spacing: .08rem;line-height: 2.2;text-align: center;}
.overseascustomers .chat{width: 900px;margin: 0 auto;margin-bottom: 100px;}
.overseascustomers #section01 .en{margin-bottom: 100px;border: 10px solid #eee;padding: 3em;}
.overseascustomers #section01 .en::after {
   top: -10px;
   left: -10px;
   width: 10px;
   height: 10px;
}
.overseascustomers #section01 .en h3{margin-bottom: .5em;font-size: 2em;}


.overseascustomers #section02{padding:100px 0px 70px;}



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





}






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


.company #section01{padding: 50px 0px 50px;position: relative;}
.company #section01 h4{margin-bottom: .6em;font-weight: bold;font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";color: black;font-size: 1.2em;letter-spacing: .08rem;}
.company #section01 .txt{margin-bottom: 1em;}
.company #section01 h4.sec{}
.company #section01 .txt2{margin-bottom: 1em;}
.company #section01 .txt3{}


.company #section02{padding: 50px 0px 50px;position: relative;background:url("../images/top-about1.jpg");background-position: center;background-size: cover;}
.company .table{font-size: .95em;letter-spacing: .03rem;border-bottom:none;margin-bottom:0;}
.company .table th{font-weight:normal;width: 100%;display: block; background:none!important;padding: 15px .5em;border-top:none;border-bottom: 1px solid #999;}
.company .table td{width: auto;width: 100%;display: block;background: none!important;border-top:none;border-bottom: 1px solid #999;}
.company .table td span{color: #333;}

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


@media (min-width: 667px) {




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



}



@media (min-width: 768px) {
.company #section01{padding: 70px 0px 70px;}
.company #section01 h4{margin-bottom: .6em;font-weight: bold;font-size: 1.2em;letter-spacing: .08rem;}
.company #section01 .txt{margin-bottom: 0;}
.company #section01 h4.sec{}

.company #section01 .txt2{margin-bottom: 0em;}
.company #section01 .txt3{}




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

.company .table{font-size: 1em;margin-bottom: 0;}
.company .table th{width: 130px;}
.company .table.gaiyo th{width: 120px;}




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


}




@media (min-width: 992px) {
.company #section01 h4{margin-bottom: 1.3em;font-weight: 600;font-size: 1.4em;letter-spacing: .08rem;padding-left:28px;}
.company #section01 .txt{line-height: 2;padding-left:30px;}
.company #section01 h4.sec{padding-left:0;}
.company #section01 .txt2{line-height: 2;padding-right:30px;}



.company .table{margin-bottom: 0;}
.company .table th{width: 180px;}




}



@media (min-width: 1200px) {
.company #section01{padding: 100px 0px 100px;}
.company #section01 h4{padding-left:58px;}
.company #section01 .txt{line-height: 2.2;padding-left:60px;}
.company #section01 .txt2{line-height: 2.2;padding-right:50px;}


.company .table th{padding: 1.5em .5em;width: 260px;}
.company .table td{padding: 1.5em 1em; }




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

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


}

@media (min-width: 1680px) {
.company #section01 h4{margin-bottom: 1.3em;font-size: 1.6em;letter-spacing: .08rem;}
.company #section01 .txt{line-height: 2.3;}
.company #section01 .txt2{line-height: 2.3;}



}







/* contact.html
--------------------------------------------------------- */
.contact #section01{padding: 50px 0px 0;position: relative;}
.contact #section01 .tel{text-align: center;margin-bottom: .5em;color:black;display: flex;align-items: center;justify-content: center;}
.contact #section01 .tel img{width: 30px;height: auto;}
.contact #section01 .tel span{margin-left: 4px;color: #000;font-size: 1.8em;line-height: 1;}
.contact #section01 .time{text-align: center;font-size: .8em;color: #555;line-height: 1;letter-spacing: 0;}



.contact #section02{padding: 50px 0px 50px;position: relative;}


.contact #section02 .pre-scrollable{max-height: 300px;padding: 15px;background: #fafafa; 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:#263BA8; padding: 2px 5px 3px;border-radius:5px;font-size: 12px;line-height: 1;}
.contact .table {margin-bottom: 30px;}
.contact .table th{background:#263BA8!important;color: white; vertical-align: middle;font-weight: 400;position: relative;display: block;}
.contact .table th span.hissu{color: #263BA8;background:white; padding: 2px 5px 3px;border-radius: 5px;position: absolute;right:15px;top:50%;transform: translateY(-50%);font-size: 12px;line-height: 1;}
.contact .table td{background: white!important;vertical-align: middle;display: block;}
.auto{font-size: .9em;background: #eee;line-height: 1;padding: .5em;border-radius: .4em;margin-left: .4em;color: #555;}

.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: 100px;
    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;
}
.selectbox select.post {width:auto;}

.contact h5{font-weight: 500;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) {
.contact #section01 .tel{text-align: center;margin-bottom: .5em;color:black;display: flex;align-items: center;justify-content: center;}
.contact #section01 .tel img{width: 30px;height: auto;}
.contact #section01 .tel span{margin-left: 7px;color: #000;font-size: 2.2em;line-height: 1;}
.contact #section01 .time{text-align: center;font-size: .9em;color: #555;line-height: 1;letter-spacing: 0;}

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

.selectbox select {width: 160px;}

}


@media (min-width: 768px) {
.contact #section01{padding: 70px 0px 0;}
.contact #section01 .tel{text-align: center;margin-bottom: .5em;}
.contact #section01 .tel img{width: 35px;height: auto;}
.contact #section01 .tel span{margin-left: 8px;color: #000;font-size: 35px;line-height: 1;}
.contact #section01 .time{text-align: center;font-size: .9em;color: #555;line-height: 1;letter-spacing: 0;}



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



.contact .table {margin-bottom: 60px;}
.contact .table th{display: table-cell;width: 220px;}

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

}


@media (min-width: 992px) {



.selectbox select {width: 180px;}


}


@media (min-width: 1200px) {
.contact #section01{padding: 100px 0px 0px;}
.contact #section01 .tel{text-align: center;margin-bottom: .5em;}
.contact #section01 .tel img{width: 45px;height: auto;}
.contact #section01 .tel span{margin-left: 10px;color: #000;font-size: 38px;line-height: 1;}
.contact #section01 .time{text-align: center;font-size: 1em;}



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

.contact .table {margin-bottom: 80px;}
.contact .table th{width: 260px;}

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

}




.doi-box{padding: 30px 15px;border-top:1px solid #555;border-bottom:1px solid #555;background: rgba(255,255,255,.4);}
.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 5px;letter-spacing: 0;}

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

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

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








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

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; }
.cb-header2 {display: none!important;}
header{display: block;}
.cb-header2 {display: none;}

.header {
  position:absolute;
  z-index: 100;
  top: 0px;
  left:0;
  transition: color 0.4s ease-out;
  width: 100%;
  height: 85px;
  display: flex;
  align-items: center;justify-content: space-between;
}
.header .logo a{text-align: left;margin-left: 0;}
.header .navi{display: flex;align-items: center;justify-content: flex-end;padding-right: 15px;}

/* ナビゲーションメニュー */
.nav-menu {}
.menu-list {
  display: flex;
  align-items: center;
  justify-content:flex-end;
  margin-right:20px;
}
.menu-item {position: relative;margin: 0 .5em;}
.menu-item:last-child {margin: 0 0 0 .5em;}

/* メニューアイテムのホバースタイル */
.menu-item a {
position: relative;
font-size: 16px;
text-align: center;
  align-items: center;
  color: #20319d;
  display: flex;
  justify-content: center;
  text-decoration: none; /* リンクの下線を非表示 */
  transition: .3;
  padding: 0;
  line-height: 1.5;
  font-family: ' TenorSans ';
}
.menu-item a.active {color: #20319d;}
.menu-item a.active:after {
content:"";
position:absolute;
left:50%;
transform: translateX(-50%);
top:-.5em;
background:#20319d;/*線の色指定*/
width:5px;
height:5px;
border-radius: 50%;
}
#main{position: relative;max-width: 100%!important; width:100%!important;margin: 0 auto; }
.mv02{ width:100%!important;height: auto; position: relative;}

.h2-main {
  font-size:18px;
  top:70%;
  left: 20px;
  letter-spacing: .05em;
}
.h2-main.migi {
  left: auto;
 right: 20px; 
}
.swiper-slide {
  width: 100%;
  height: auto;
  display: block;
}

.swiper-slide img{width:1400px;height: auto; border-radius: 0;}




.company .table th{width: 230px;display: table-cell;}
.company .table td{width: auto;display: table-cell;}

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

footer .logoblock{margin-bottom: 20px;margin-left: 0;text-align: left;width: auto;}
.footer-menu ul{justify-content: flex-end;}
footer .address{font-size: .9em;text-align: left;margin-bottom: 5px;}
footer .tel{text-align: left;margin-bottom: 0;}

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


.drawer_menu{display: none!important;}

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

}
