@charset "utf-8";
@import url(https://use.typekit.net/mmt7hpw.css);
@import url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/css/yakuhanjp.min.css);
@import url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.0/dist/css/yakuhanmp.min.css);
html {
  margin: 0;
  padding: 0;
  overflow-y: scroll;
  height: 100%;
}
body {
  margin: 0;
  padding: 0;
  font-family: YakuHanJP,"游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
  color: #333;
  font-size: 14px;
}
nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav ul li {
  list-style: none;
  display: inline;
  margin-right: 0px;
}
label {
  width: auto;
  max-width: auto;
}
p {
  line-height: 1.8;
}
.center {
  text-align: center;
}
@font-face {
  font-family: 'icomoon';
  src: url('fonts/icomoon.eot?8au1wb');
  src: url('fonts/icomoon.eot?8au1wb#iefix') format('embedded-opentype'), url('fonts/icomoon.ttf?8au1wb') format('truetype'), url('fonts/icomoon.woff?8au1wb') format('woff'), url('fonts/icomoon.svg?8au1wb#icomoon') format('svg');
  /*font-weight: normal*/;
  font-style: normal;
}
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  /*font-weight: normal*/;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 5px;
  font-size: 10px;
  color: #595757;
}
.icon-home:before {content: "\e900";}
.icon-home3:before {content: "\e902";}
.icon-pencil:before {content: "\e905";}
.icon-pencil2:before {content: "\e906";}
.icon-connection:before {content: "\e91b";}
.icon-folder:before {content: "\e92f";}
.icon-search:before {content: "\e986";}
.icon-cross:before {content: "\ea0f";}
.icon-checkmark:before {content: "\ea10";}
.icon-checkmark2:before {content: "\ea11";}
.icon-play3:before {content: "\ea1c";}
.icon-arrow-up-left:before {content: "\ea31";}
.icon-arrow-up:before {content: "\ea32";}
.icon-arrow-up-right:before {content: "\ea33";}
.icon-arrow-right:before {content: "\ea34";}
.icon-arrow-down-right:before {content: "\ea35";}
.icon-arrow-down:before {content: "\ea36";}
.icon-arrow-down-left:before {content: "\ea37";}
.icon-arrow-left:before {content: "\ea38";}
.icon-arrow-up-left2:before {content: "\ea39";}
.icon-arrow-up2:before {content: "\ea3a";}
.icon-arrow-up-right2:before {content: "\ea3b";}
.icon-arrow-right2:before {content: "\ea3c";}
.icon-arrow-down-right2:before {content: "\ea3d";}
.icon-arrow-down2:before {content: "\ea3e";}
.icon-arrow-down-left2:before {content: "\ea3f";}
.icon-arrow-left2:before {content: "\ea40";}
.icon-circle-up:before {content: "\ea41";}
.icon-circle-right:before {content: "\ea42";}
.icon-circle-down:before {content: "\ea43";}
.icon-circle-left:before {content: "\ea44";}
.icon-checkbox-checked:before {content: "\ea52";}
.icon-checkbox-unchecked:before {content: "\ea53";}
.icon-radio-checked:before {content: "\ea54";}
.icon-radio-checked2:before {content: "\ea55";}
.icon-radio-unchecked:before {content: "\ea56";}
.icon-table2:before {content: "\ea71";}
.icon-mail:before {content: "\ea83";}
.icon-mail4:before {content: "\ea86";}
.icon-facebook2:before {ontent: "\ea91";}
.icon-instagram:before {content: "\ea92";}
.icon-twitter:before {content: "\ea96";}
.icon-file-pdf:before {content: "\eadf";}
.icon-new-tab:before {content: "\ea7e";}
/* リンクなど ----------------------------------------------------*/

a {
  text-decoration: underline;
  color: #0099FF;
}
a:link {
  text-decoration: underline;
}
a:visited {
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}
a:active {
  color: rgba(71, 71, 71, 1.00);
}

/* 汎用 ----------------------------------------------------*/
/* clerfix */
#contents:after {
  content: ".";
  display: block;
  visibility: hidden;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
  clear: both;
}
.alignright {float: right; margin: 0px 0 10px 20px;}
.alignleft {float: left; margin: 0px 20px 10px 0;}
.imgR, img.alignright { float: right; margin: 7px 0 10px 20px;}
.imgL, img.alignleft { float: left; margin: 7px 20px 10px 0;}
.tC, .btn { text-align: center;}
.tR, .sign { text-align: right;}
.center { text-align: center;}
.aligncenter { display: block; margin-left: auto; margin-right: auto;}

/* text ---------------------------------------------------- */
.ac {text-align: center !important;}
.ar {text-align: right !important;}
.al {text-align: left !important;}
.bold{font-weight: bold !important;}
.font10 {font-size: 10px !important;}
.font11 {font-size: 11px !important;}
.font12 {font-size: 12px !important;}
.font13 {font-size: 13px !important;}
.font14 {font-size: 14px !important;}
.font15 {font-size: 15px !important;}
.font16 {font-size: 16px !important;}
.font17 {font-size: 17px !important;}
.font18 {font-size: 18px !important;}
.font19 {font-size: 19px !important;}
.font20 {font-size: 20px !important;}
.font21 {font-size: 21px !important;}
.font22 {font-size: 22px !important;}
.font23 {font-size: 23px !important;}
.font24 {font-size: 24px !important;}
.font25 {font-size: 25px !important;}
.font26 {font-size: 26px !important;}
.font27 {font-size: 27px !important;}
.font28 {font-size: 28px !important;}
.font29 {font-size: 29px !important;}
.font30 {font-size: 30px !important;}
.font31 {font-size: 31px !important;}
.font32 {font-size: 32px !important;}
.font33 {font-size: 33px !important;}
.font34 {font-size: 34px !important;}
.font35 {font-size: 35px !important;}

/* -float
---------------------------------------------------- */

.fr {float: right !important;}
.fl {float: left !important;}
.clear {clear: both;}
.clearfix:after { content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.clearfix {min-height: 1px;}
* html .clearfix { height: 1px; /*¥*/ /*/ height: auto; overflow: hidden; /**/}

/* clearfix の代用<div class="hr"><hr /></div> ---------------------------------------------------- */

div.hr {clear: both;}
div.hr hr {display: none;}
.mt00 {margin-top: 0px !important;}
.mt05 {margin-top: 5px !important;}
.mt10 {margin-top: 10px !important;}
.mt15 {margin-top: 15px !important;}
.mt20 {margin-top: 20px !important;}
.mt25 {margin-top: 25px !important;}
.mt30 {margin-top: 30px !important;}
.mt35 {margin-top: 35px !important;}
.mt40 {margin-top: 40px !important;}
.mt45 {margin-top: 45px !important;}
.mt50  {margin-top: 50px !important;}
.mt55  {margin-top: 55px !important;}
.mt60  {margin-top: 60px !important;}
.mt65  {margin-top: 65px !important;}
.mt70  {margin-top: 70px !important;}
.mt75  {margin-top: 75px !important;}
.mt80  {margin-top: 80px !important;}
.mt85  {margin-top: 85px !important;}
.mt90  {margin-top: 90px !important;}
.mt95  {margin-top: 95px !important;}
.mt100  {margin-top: 100px !important;}
.mr00  {margin-right: 0px !important;}
.mr05  {margin-right: 5px !important;}
.mr10  {margin-right: 10px !important;}
.mr15  {margin-right: 15px !important;}
.mr20  {margin-right: 20px !important;}
.mr25  {margin-right: 25px !important;}
.mr30  {margin-right: 30px !important;}
.mr35  {margin-right: 35px !important;}
.mr40  {margin-right: 40px !important;}
.mr45  {margin-right: 45px !important;}
.mr50  {margin-right: 50px !important;}
.mr55  {margin-right: 55px !important;}
.mr60  {margin-right: 60px !important;}
.mr65  {margin-right: 65px !important;}
.mr70  {margin-right: 70px !important;}
.mr75  {margin-right: 75px !important;}
.mr80  {margin-right: 80px !important;}
.mr85  {margin-right: 85px !important;}
.mr90  {margin-right: 90px !important;}
.mr95  {margin-right: 95px !important;}
.mr100  {margin-right: 100px !important;}
.mb00  {margin-bottom: 0px !important;}
.mb05  {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;}
.mb35  {margin-bottom: 35px !important;}
.mb40  {margin-bottom: 40px !important;}
.mb45  {margin-bottom: 45px !important;}
.mb50  {margin-bottom: 50px !important;}
.mb55  {margin-bottom: 55px !important;}
.mb60  {margin-bottom: 60px !important;}
.mb65  {margin-bottom: 65px !important;}
.mb70  {margin-bottom: 70px !important;}
.mb75  {margin-bottom: 75px !important;}
.mb80  {margin-bottom: 80px !important;}
.mb85  {margin-bottom: 85px !important;}
.mb90  {margin-bottom: 90px !important;}
.mb95  {margin-bottom: 95px !important;}
.mb100  {margin-bottom: 100px !important;}
.ml00  {margin-left: 0px !important;}
.ml05  {margin-left: 5px !important;}
.ml10  {margin-left: 10px !important;}
.ml15  {margin-left: 15px !important;}
.ml20  {margin-left: 20px !important;}
.ml25  {margin-left: 25px !important;}
.ml30  {margin-left: 30px !important;}
.ml35  {margin-left: 35px !important;}
.ml40  {margin-left: 40px !important;}
.ml45  {margin-left: 45px !important;}
.ml50  {margin-left: 50px !important;}
.ml55  {margin-left: 55px !important;}
.ml60  {margin-left: 60px !important;}
.ml65  {margin-left: 65px !important;}
.ml70  {margin-left: 70px !important;}
.ml75  {margin-left: 75px !important;}
.ml80  {margin-left: 80px !important;}
.ml85  {margin-left: 85px !important;}
.ml90  {margin-left: 90px !important;}
.ml95  {margin-left: 95px !important;}
.ml100  {margin-left: 100px !important;}

/* -padding ---------------------------------------------------- */

.pt00 { padding-top: 0px !important;}
.pt05 { padding-top: 5px !important;}
.pt10 { padding-top: 10px !important;}
.pt15 { padding-top: 15px !important;}
.pt20 { padding-top: 20px !important;}
.pt25 { padding-top: 25px !important;}
.pt30 { padding-top: 30px !important;}
.pt35 { padding-top: 35px !important;}
.pt40 { padding-top: 40px !important;}
.pt45 { padding-top: 45px !important;}
.pt50 { padding-top: 50px !important;}
.pt55 { padding-top: 55px !important;}
.pt60 { padding-top: 60px !important;}
.pt65 { padding-top: 65px !important;}
.pt70 { padding-top: 70px !important;}
.pt75 { padding-top: 75px !important;}
.pt80 { padding-top: 80px !important;}
.pt85 { padding-top: 85px !important;}
.pt90 { padding-top: 90px !important;}
.pt95 { padding-top: 95px !important;}
.pt100 { padding-top: 100px !important;}
.pr00 { padding-right: 0px !important;}
.pr05 { padding-right: 5px !important;}
.pr10 { padding-right: 10px !important;}
.pr15 { padding-right: 15px !important;}
.pr20 { padding-right: 20px !important;}
.pr25 { padding-right: 25px !important;}
.pr30 { padding-right: 30px !important;}
.pr35 { padding-right: 35px !important;}
.pr40 { padding-right: 40px !important;}
.pr45 { padding-right: 45px !important;}
.pr50 { padding-right: 50px !important;}
.pr55 { padding-right: 55px !important;}
.pr60 { padding-right: 60px !important;}
.pr65 { padding-right: 65px !important;}
.pr70 { padding-right: 70px !important;}
.pr75 { padding-right: 75px !important;}
.pr80 { padding-right: 80px !important;}
.pr85 { padding-right: 85px !important;}
.pr90 { padding-right: 90px !important;}
.pr95 { padding-right: 95px !important;}
.pr100 { padding-right: 100px !important;}
.pb00 { padding-bottom: 0px !important;}
.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom: 10px !important;}
.pb15 { padding-bottom: 15px !important;}
.pb20 { padding-bottom: 20px !important;}
.pb25 { padding-bottom: 25px !important;}
.pb30 { padding-bottom: 30px !important;}
.pb35 { padding-bottom: 35px !important;}
.pb40 { padding-bottom: 40px !important;}
.pb45 { padding-bottom: 45px !important;}
.pb50 { padding-bottom: 50px !important;}
.pb55 { padding-bottom: 55px !important;}
.pb60 { padding-bottom: 60px !important;}
.pb65 { padding-bottom: 65px !important;}
.pb70 { padding-bottom: 70px !important;}
.pb75 { padding-bottom: 75px !important;}
.pb80 { padding-bottom: 80px !important;}
.pb85 { padding-bottom: 85px !important;}
.pb90 { padding-bottom: 90px !important;}
.pb95 { padding-bottom: 95px !important;}
.pb100 { padding-bottom: 100px !important;}
.pl00 { padding-left: 0px !important;}
.pl05 { padding-left: 5px !important;}
.pl10 { padding-left: 10px !important;}
.pl15 { padding-left: 15px !important;}
.pl20 { padding-left: 20px !important;}
.pl25 { padding-left: 25px !important;}
.pl30 { padding-left: 30px !important;}
.pl35 { padding-left: 35px !important;}
.pl40 { padding-left: 40px !important;}
.pl45 { padding-left: 45px !important;}
.pl50 { padding-left: 50px !important;}
.pl55 { padding-left: 55px !important;}
.pl60 { padding-left: 60px !important;}
.pl65 { padding-left: 65px !important;}
.pl70 { padding-left: 70px !important;}
.pl75 { padding-left: 75px !important;}
.pl80 { padding-left: 80px !important;}
.pl85 { padding-left: 85px !important;}
.pl90 { padding-left: 90px !important;}
.pl95 { padding-left: 95px !important;}
.pl100 { padding-left: 100px !important;}

/*-form
-------------------------------------------------------------------*/
 
.form_small { width:50px;  height:14px;  font-size:12px;}
.form_middle { width:120px; height:14px; font-size:12px;}
.form_long { width:260px; height:14px; font-size:12px;}
input,textarea {-moz-box-shadow: inset 1px 4px 5px -6px rgba(0,0,0,0.5);  -webkit-box-shadow: inset 1px 4px 5px -6px rgba(0, 0, 0, 0.5);  box-shadow: inset 1px 4px 5px -6px rgba(0,0,0,0.5); border: 1px solid #ddd; -webkit-border-radius: 4px; border-radius: 4px; padding:5px;}

/*  header#globalHeader　----------------------------------------------------*/
.navbar {
  border-bottom: 1px solid #DDDDDD;
}
header#globalHeader nav ul { list-style: none; margin: 0; }
header#globalHeader nav ul li { list-style: none; display: inline;}
.navbar {
  padding: 0;
}
.navbar-brand {
  padding-top: 50px;
  padding-bottom: 30px;
  -webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
.fix .navbar-brand {
  padding-top: 5px;
  padding-bottom: 10px;
  -webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
.navbar-brand img {}
.navbar-brand h1{}
/*トグルアニメ*/
.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border: none;
  padding: 0px;
  width: 30px;
  height: 30px;
  box-sizing: border-box;
  position: relative;
}
.navbar-light .navbar-toggler-icon {
  background-image:none;
  background-color: #666666;
  width: 30px;
  height: 2px;
  display: block;
  position: absolute;
  transition: ease .5s;
}
.navbar-toggler-icon:nth-of-type(1) {top:7px;}
.navbar-toggler-icon:nth-of-type(2) {top:14px;}
.navbar-toggler-icon:nth-of-type(3) {top:21px;}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
top:13px;
transform: rotate(45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2) {
opacity: 0;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
top:13px;
transform: rotate(-45deg);
}
.navbar-nav {
  padding-top: 30px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}
.fix .navbar-nav {
  padding-top: 0px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}
.navbar-nav li {
  margin-left: 20px;
  display: block;
}
.navbar-nav li {
  text-decoration: none;
  background-image: url(../images/share/arrow_blue.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 20px auto;
  margin-right: 0px;
  padding-right: 25px;
  font-weight: bold;
}
.navbar-nav li:hover {
  color: #000000;
   background-image: url("../images/share/arrow_hover.png");
}
.navbar-nav li a {
  text-decoration: none;
}
.navbar-nav li a:hover{
  color: #000000;
  text-decoration: none;
}
.navbar-nav li a.open {}
.dropdown-toggle:hover > .dropdown-menu {
  display: block !important;
}
.dropdown-menu {
  background-color: rgba(0,153,255,0.80);
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  padding: 0;
  margin: 0;
  text-align: left;
  list-style: none;
  background-clip: padding-box;
  position: relative;
}
/*
.dropdown-menu:before {
  content:" ";
  position: absolute;
  top:-20px;
  left:50%;
  width: 0;
  height: 10;
  margin-left: -60px;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid rgba(0,153,255,0.80);
}
*/
.menuWrap {
  margin: 24px auto;
  width: 1005px;
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.menuWrap a:hover {
  color: #ffffff !important;
  
}
.menuWrap .all a.dropdown-item {
  border: 1px solid rgba(255,255,255,.5);
  background-color: rgba(0,68,160,.5);
  width: 190px;
  margin-right: 5px;
  padding: 59px 0;
  text-align: center;
}
.menuWrap .btnBox {
  width: 810px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.menuWrap a span {
  width: 220px;
  display: inline-block;
}
.menuWrap a img {
  margin-right: 10px
}
.menuWrap a.dropdown-item {
  width: 100%;
  max-width: 260px;
  margin-right: 15px;
  margin-bottom: 5px;
  border: 1px solid rgba(255,255,255,.5);
  background-color: rgba(0,68,160,.5);
  padding: 10px 0;
  text-align: center;
  text-decoration: none;
  color: #FFFFFF;
  font-weight: bold;

}
.menuWrap a:hover.dropdown-item {
  opacity: .8;
}
/* BUTTON */

.button {
  display: inline-block;
  min-width: 400px;
  text-align: center;
  border: 2px solid #0099FF;
  font-size: 16px;
  color: #FFFFFF;
  text-decoration: none!important;
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 4px;
  transition: .4s;
  background-color: rgba(0,153,255,1.00);
}
.button img {
  margin-left: 10px;
}
.button:hover {
  background-color: #0078C8;
  border-color: #0078C8;
  color: #FFF;
}
/* 左右に広がって背景色変更　*/
.button02 {
  display: inline-block;
  width: 200px;
  text-align: center;
  background-color: #333333;
  border: 2px solid #333333;
  font-size: 16px;
  color: #333333;
  text-decoration: none!important;
  font-weight: bold;
  padding: 10px 24px;
  border-radius: 4px;
  position: relative;
}

.button02 span {
  position: relative;
  z-index: 1;
}

.button02::before,
.button02::after {
  content: "";
  display: block;
  background-color: #FFF;
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  transition: .2s;
}
.button02::before {
  left: 0;
}
.button02::after {
  right: 0;
}

.button02:hover:before,
.button02:hover:after {
  width: 0;
  background-color: #FFF;
}

.button02:hover {
  color: #FFF;
}
/* グラデーションのボタン　*/
.button_gradation {
  display: inline-block;
  width: 180px;
  text-align: center;
  font-size: 16px;
  color: #FFF;
  text-decoration: none!important;
  font-weight: bold;
  padding: 12px 24px;
  border-radius: 4px;
  background-image: linear-gradient(-90deg, #FF006E, #FFD500);
  transition: .5s;
  background-size: 200%;
}

.button_gradation:hover {
  color: #FFF;
  background-position: right center;
}
/*  footer#globalFooter　----------------------------------------------------*/
footer#globalFooter {
  clear: both;
}
#globalFooter .contact {
  background-image: url(../images/share/bg_contact.jpg);
  background-position: center top;
  background-size: 100% auto;
  padding: 30px 0 25px;
  color: rgba(255,255,255,1.00);
}
#globalFooter .icon_ttlBox {
  margin-bottom: 20px;  
}
#globalFooter .contact p {
  margin: 0;
  text-align: center;
}
#globalFooter .contact .col-sm-4 {
  padding-left: 8%;
  padding-bottom: 15px;
}
#globalFooter .contact .col-sm-4:last-child {
  padding-left: 15px;
  padding-right: 8%;
  padding-bottom: 0;
}
#globalFooter .contact .button {
  margin: 0 auto;
  min-width: 100%;
  border: 1px solid #fff;
  background-color: transparent;
  padding-top: 15px;
  padding-bottom: 15px;
}
#globalFooter .contact .button:hover {
  background-color: #ffff;
  border-color: #fff;
  color: #0099FF;
}
#globalFooter .footer {
  background-color: rgba(0,153,255,1.00);
  padding-top: 30px;
  padding-bottom: 30px;
}
#globalFooter .footer .fnav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
footer#globalFooter nav ul {
  list-style: none;
  padding: 6px 22px;
  margin: 0;
  border-left: 1px solid rgba(255,255,255,1.00);
  display: block;
}
footer#globalFooter nav ol {
  float: left;
  padding-left: 17px;
}
footer#globalFooter nav ul:last-child {
  border-right: 1px solid rgba(255,255,255,1.00);
}
footer#globalFooter nav li {
  display: block;
  margin-bottom: 17px;
}
footer#globalFooter nav li a {
  color: rgba(255,255,255,1.00);
  text-decoration: none;
  background-image: url(../images/share/arrow_white.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 13px auto;
  padding-left: 20px;
}
footer#globalFooter nav li a:hover {
  color: rgba(0,0,0,1.00);
  text-decoration: none;
  background-image: url("../images/share/arrow_hover.png");
}
footer#globalFooter nav ol li a {
  background-size: 9px auto;
  padding-left: 14px;
}
#page-top {
  right: -50px;
  bottom: 50px;
  position: fixed;
}
#page-top a {
  background-image: url(../images/share/page-top.png);
  background-size: 40px 40px;
  width: 40px;
  height: 40px;
  background-repeat: no-repeat;
  display:block
}
/* copyright　----------------------------------------------------*/
.flogo {
  padding-top: 30px;
  padding-bottom: 30px;
}
footer#globalFooter p.copyright {
  margin: 0;  
}
footer#globalFooter p.copyright small {
  font-size: 13px;
  text-align: center;
  color: #999;
  padding-top: 15px;
  display: block;
}
/* home ------------------------------------------------------------------------------*/

.home_slider .bxslider {
  width:100%;
  height:520px;
  overflow: hidden;
  position: relative; 
}
.home_slider .bxslider img {
  width:100%;
  height: 100%;
  /*30秒かけてズームイン・アウトを永遠に繰り返す*/
  animation: animationZoom 30s ease-out 0s infinite normal;
}
.home_slider .bx-viewport{
  height: auto !important;
}
.home_slider .slidewrap{
  width:100%;
  height:100%!important;
  overflow: hidden;
}
/*イメージをズームさせるCSS3アニメーション*/
@keyframes animationZoom {
  50%{ transform:scale(1.5); }
}
.home_slider .bxslider li {
  position: relative;  
}
.belt {position: relative; }
.belt p {
  line-height: 0.8;
  color: rgba(255,255,255,1.00);
}
.belt .sub {
  font-size: 16px;
  font-weight: bold;
}
.belt .main {
  font-size: 28px;
  font-weight: bold;
}
.belt .ttl {
  color: #00FFFF;
  font-size: 28px;
  font-weight: bold;
}
.belt.bottom {
  background-color: rgba(0,34,59,0.6);
  height: 100px;
  width: 100%;
  text-align: center;
  position: absolute;
  top: 420px;
  left: 0px;
  padding-top: 20px;
}
.belt.red {
  background-color: rgba(124,0,0,0.80);
  height: 100px;
  width: 100%;
  text-align: center;
  position: absolute;
  top: 420px;
  left: 0px;
  padding-top: 20px;
}
.belt.middle {
  background-color: rgba(0,34,59,0.6);
  height: 170px;
  width: 100%;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 0px;
  margin-top: -85px;
  padding-top: 40px;
}
.homeChatch {
  padding-top: 60px;
  padding-bottom: 40px;
}
.homeChatch h2 {
  font: 25px YakuHanMP, "Hiragino Mincho ProN", "Noto Serif JP", "Yu Mincho", YuMincho, serif;
}
.homeChatch p {
  font-size: 14px;
  margin-bottom: 35px;
}

.home_slider .bxslider .gmark {
  background-image: url(../images/home/home-gmark.jpg);
  width: 160px;
  height: 48px;
  position: absolute;
  top: 26px;
  left: 50%;
  background-size: 160px auto;
  background-repeat: no-repeat;
  display: block;
  margin-left: 160px;
}

@media (max-width: 678px) {
  .home_slider .bxslider .gmark {
    width: 120px;
    height: 36px;
    position: absolute;
    top: 30px;
    left: 50%;
    background-size: 120px auto;
    background-repeat: no-repeat;
    display: block;
    margin-left: 160px;
  }
}

@media (max-width: 580px) {
  .home_slider .bxslider .gmark {
    top: 12px;
    width: 80px;
    height: 24px;
    background-size: 80px auto;
    margin-left: 120px;
  }
}
@media (max-width: 414px) {
  .home_slider .bxslider .gmark {
    top: 15px;
    width: 60px;
    height: 18px;
    background-size: 60px auto;
    margin-left: 110px;
  }
}
@media (max-width: 320px) {
  .home_slider .bxslider .gmark {
    top: 15px;
    width: 60px;
    height: 18px;
    background-size: 60px auto;
    margin-left: 90px;
  }
}
.icon_ttlBox {
  text-align: center;
}
.icon_ttlBox icon {
  margin-bottom: 10px;
  display: block;
}
.icon_ttlBox h3 {
  font-size: 20px;
  font-weight: normal;
}
.newsBox {
  margin-top: 20px;
  border-radius: 4px;
  padding: 10px 60px;
  border: 1px solid rgba(0,153,255,1.00);
  position: relative;
  display: inline-block;
}
.newsBox p {
  padding: 0;
  margin: 0;
  color: rgba(0,153,255,1.00);
  font-size: 16px;
  font-weight: bold;
  text-align: left;
}
.newsBox p .date {
  color: rgba(0,0,0,1.00);
  padding-right: 15px;
}
.newsBox a {
  text-decoration: none;  
}
.newsBox icon {
  position: absolute;
  right: 15px;
  top: 50%;
  margin-top: -15px;
}
.prdct_null {
  height: 205px;
  width: 50%;
}
.homeProducts {
  padding: 25px 0 40px;
  background-color: #eee;
}
.homeProducts .icon_ttlBox {
  padding-bottom: 35px;
}
.homeProducts .ttl1 {
  display: block;
  color: rgba(255,255,255,1.00);
  font-weight: bold;
  font-size: 18px;
  text-align: center;
  padding: 10px 0;
  background-color: #3377CC;
  margin-top: 0px;
  margin-bottom: 10px;
}
.homeProducts .ttl2 {
  display: block;
  color: rgba(255,255,255,1.00);
  font-weight: bold;
  font-size: 18px;
  text-align: center;
  padding: 10px 0;
  background-color: #DD4400;
  margin-top: 0px;
  margin-bottom: 10px;
}
.homeProductsBlock {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.homeProductsBlock .box {
  width: 50%;
  padding-right: 5px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 5px;
}
.homeProductsBlock .box:nth-child(even) {
  padding-right: 0;
}
.homeProductsBlock .box .tbl .table td.photo {
  width: 38.5%;
  padding: 0;
  border: 0 #eee !important;
}
.homeProductsBlock .box .tbl {
  width: 100%;
}
.homeProductsBlock .box .tbl .table {
  font-size: 14px;
  background-color: #fff;
  margin: 0;
  border: 1px solid #ccc;
}
.homeProductsBlock .box .tbl .table th {
  background-color: #8899AA;
  color: #fff;
  font-weight: normal;
  padding: 6px 10px;
  white-space: nowrap;
  vertical-align: middle;
}
.homeProductsBlock .box .tbl .table td {
  border: 1px solid #ccc;
  padding: 6px 10px;
}
.homeProductsBlock .box .link {
  padding: 5px 0 15px;
  text-align:center;
  width:100%;
}
.homeProductsBlock .box .link a {
  text-decoration: none;
}
.homeProductsBlock .box .link img {
  margin-left: 5px;
}
.homeProducts .button {
  
}.forte {
  width: 100%;
  max-width: 1400px;
  margin: 25px auto 40px;
}
.forte .sepa {
  margin-top: 30px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content:space-between;
}
.forte .sepa .sepaBox {
  width: 50%;
  padding-right: 10px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.forte .sepa .sepaBox:last-child {
  padding-right: 0px;
}
.forte .sepaBox .photo {
  width: 42.36%;
}
.forte .sepaBox .inner {
  width: 57.64%;
  position: relative;
}
.forte .sepaBox .inner .bg {
  position: relative;
  z-index: 0;
  vertical-align:top;
  padding: 0 !important;
}
.forte .sepaBox .inner .cnts {
  position: absolute;
  z-index: 1;
  padding: 15px 15px 20px 20px;
  top: 0px;
  left: 0px;
}
.forte .sepaBox .inner .cnts h4 {
  font-size: 18px;
  padding: 0;
  margin-bottom: 10px;
}
.forte .sepa .inner .cnts p {
  padding: 0;
  margin: 0;
}
.comapnyBanner {
  width: 100%;
  background-color: #eee;
  padding: 40px auto 50px;
}
.bannerArea {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 40px auto 0px;
  width: 1020px;
}
.bannerArea .btns {
  position: relative;
  margin: 40px 0 50px;
}
.bannerArea .btns img {
  position: relative;
}
.bannerArea .btns a:hover {
  opacity: .8;
}
.bannerArea .btns span {
  position: absolute;
  top: 40px;
  left: 0px;
  width: 100%;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: rgba(255,255,255,1.00);
}
.bannerArea .btns span img {
  margin-left: 10px;
}
.bannerArea .companyBtn {
  width: 50%;
  padding-right: 10px;
}
.bannerArea .downlordBtn {
  width: 50%;
  padding-left: 10px;  
}
.page {
  padding-top: 100px;
}
.scroll {
  padding-top: 50px;
}
@media (max-width:1280px) {
  .forte .sepaBox .inner .cnts {
    padding: 15px 15px 20px 20px;
  }
  .forte .sepaBox .inner .cnts h4 {
    font-size: 18px;
    margin-bottom: 5px;
  }
}
@media (max-width:1200px) {
  .page {
    padding-top: 80px;
  }
  .navbar-brand {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .navbar-nav {
    padding-top: 8px;
  }
  .navbar-nav li {
    font-size: 11px;
    background-size: 13px auto;
    padding-right: 15px;
  }

  @keyframes animationZoom {
    0%{ transform:scale(1.5); }
    100%{ transform:scale(1.9); }
  }
  .home_slider .bxslider {
    width:100%;
    height:450px;
  }
  .belt.bottom {
    height: 100px;
    top: 350px;
    padding-top: 20px;
  }
  .belt.red {
    height: 100px;
    top: 350px;
    padding-top: 20px;
  }
  .belt.middle {
    height: 170px;
    top: 50%;
    margin-top: -85px;
    padding-top: 40px;
  }
 .forte .sepaBox .inner .cnts h4 {
    font-size: 16px;
  }
  .forte .sepa .inner .cnts p {
    font-size: 11px;
  }
  #globalFooter .contact {
    background-size: auto 100%;
  }
  footer#globalFooter nav ul {
    padding: 6px 12px;
  }
}
@media (max-width:1024px) {
  footer#globalFooter nav ul {
    padding: 6px 10px;
  }
}
@media (max-width:992px) {
  .navbar-nav li,.navbar-nav li:hover {
    background-image:none;
  }
  .navbar-nav a {
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
  display: block;
  }
  .menuWrap {
    margin: auto;
    width: auto;
    overflow: visible;
    display: block;
  }
  .menuWrap .btnBox {
    width: auto;
    overflow: visible;
    display: block;
  }
  .dropdown-menu {
  background-color: #fff;
  width: auto;
  position: static;
  top: auto;
  left: auto;
  z-index: auto;
  display: block !important;
  float: none;
  margin: 0;
  text-align: left;
  list-style: none;
  background-clip: padding-box;
  padding-top: 10px;
  }
  .dropdown-menu:before {
    content: normal;
    position: static;
    top: auto;
    left: auto;
    width: 0;
    height: 0;
    margin-left: 0;
    border-left: none;
    border-right: none;
    border-bottom: none;
  }
  .dropdown-menu li {
  padding-top: 10px;
  padding-bottom: 10px;
  }
  .menuWrap .all a.dropdown-item {
     border-bottom: 1px solid #ccc;
    background-color: transparent;
    width: auto;
    margin-right: 15px;
    padding: 0 0 0 15px;
    text-align: left;
  }
  .menuWrap a.dropdown-item {
    width: auto;
    margin-right: 15px;
    margin-bottom: 0;
     border-bottom: 1px solid #ccc;
    background-color: transparent;
    padding: 10px 0 10px 15px;
    text-align: left;
    text-decoration: none;
    color: #0099FF;
    font-weight: bold;
  }
  .menuWrap a:hover {
  color: rgba(0,0,0,1.00) !important;    
  }
  .navbar-collapse {
    padding-bottom: 15px;
  }
  .home_slider .bxslider {
    width:100%;
    height:370px;
  }
  .belt.bottom {
    height: 100px;
    top: 270px;
    padding-top: 20px;
  }
  .belt.red {
    height: 100px;
    top: 270px;
    padding-top: 20px;
  }
  .belt.middle {
    height: 170px;
    top: 60%;
    margin-top: -85px;
    padding-top: 40px;
  }
  .homeProductsBlock .box {
    width: 100%;
  }
  
  .forte .sepa .sepaBox {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
  }
  .forte .sepaBox .photo {
    width: 100%;
  }
  .forte .sepaBox .inner {
    width: 100%;
  }
  .forte .sepaBox .inner .bg {
    display: none;
  }
  .forte .sepaBox .inner .cnts {
    position: static;
    padding: 15px 15px 20px 20px;
  }
  .forte .sepaBox .inner .cnts h4 {
    margin-bottom: 5px;
  }
  .forte .sepa .sepaBox:last-child {
    padding-right:15px;
  }
  footer#globalFooter nav ul {
    padding: 6px 10px;
    width: 100%;
    border: none;
  }
   footer#globalFooter nav ul:last-child {
    border: none;
  }
  #globalFooter .contact p {
    font-size: 10px;
  }
}
@media (max-width:768px) {
  .home_slider {
    margin-top: 90px;
  }
  .home_slider .bxslider {
    width:100%;
    height:330px;
  }
  .belt.bottom {
    height: 100px;
    top: 230px;
    padding-top: 20px;
  }
  .belt.red {
    height: 100px;
    top: 230px;
    padding-top: 20px;
  }
  .belt.middle {
    height: 170px;
    top: 60%;
    margin-top: -85px;
    padding-top: 40px;
  }
  .bannerArea {
    width: 100%;
  }
  .bannerArea .companyBtn {
    padding-left: 10px;
  }
  .bannerArea .downlordBtn {
    padding-right: 10px;
  }
  .bannerArea .btns span {
    top: 25px;
  }
  .news_image_flex img{
    width: 100%;
    padding: 5px 0;
  }
}
@media (max-width:576px) {
  body {
    font-size: 13px;
  }
  .page {
    padding-top: 60px;
  }
  .navbar-brand {
  padding-top: 10px;
  padding-bottom: 20px;
  padding-left: 10px;
  }
  .navbar-light .navbar-toggler {
    margin-right: 15px;
  }
  .home_slider {
    margin-top: 65px;
  }
  .home_slider .bxslider {
    width:100%;
    height:148px;
  }
  .belt.bottom {
    height: 50px;
    top: 98px;
    padding-top: 10px;
  }
  .belt.red {
    height: 50px;
    top: 98px;
    padding-top: 10px;
  }
  .belt.middle {
    height: 170px;
    top: 60%;
    margin-top: -85px;
    padding-top: 40px;
  }
  .belt p {
    line-height: 0.4;
  }
  .belt .sub {
    font-size: 12px;
    font-weight: bold;
  }
  .belt .main {
    font-size: 18px;
    font-weight: bold;
  }
  .belt .ttl {
    color: #00FFFF;
    font-size: 12px;
    font-weight: bold;
  }
  .belt.middle p.main {
    font-size: 13px;
    line-height: 1.4;
  }
  .homeChatch {
  padding-left: 20px;
  padding-right: 20px;
  }
  .homeChatch h2 {
    font-size: 18px;
  }
  .homeChatch p {
  text-align: left;    
  }
  .newsBox {
    margin-top: 20px;
    border-radius: 4px;
    padding: 10px 10px;
    border: 1px solid rgba(0,153,255,1.00);
    position: relative;
    display: inline-block;
  }
  .newsBox icon {
    position: static;
    right: auto;
    top: auto;
    margin-top: 0;
  }
  .homeProductsBlock .box {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
  }
  .homeProductsBlock .box:nth-child(even) {
    padding-left: 20px;
    padding-right: 20px;
  }
  .homeProductsBlock .box .tbl .link {
    text-align: center;
  }
  .homeProductsBlock .box .photo {
    width: 100%;
  }
  .homeProductsBlock .box .tbl {
    width: 100%;
  }
  .button {
    min-width: 300px;
  }
  .comapnyBanner {
    padding: 10px 0 20px;
  }
  .bannerArea {
    margin:0;
  }
  .bannerArea .btns {
    margin: 10px 0;
  }
  .bannerArea .companyBtn {
    width: 100%;
    padding-left: 10px;
  }
  .bannerArea .downlordBtn {
    padding-right: 10px;
    width: 100%;
  }
  .contact .btnBox {
    margin-bottom: 15px;
  }
  #globalFooter .contact p {
    font-size: 13px;
  }
}

@media (max-width:320px) {
  .navbar-brand {
    width: 60%;
    padding-bottom: 10px;
  }
  .navbar-brand img {
    width: 100%;
    height: auto;
  }
  .belt .sub {
  font-size: 10px;
  }
  .belt .main {
    font-size: 15px;
  }
}
/*bread list -----------------------------------------*/
.breadcrumbs {
    margin: 20px 0 50px;
}
 
.breadcrumbs ul {
  display: table;
  list-style: none;
  padding: 0;
  font-size: 14px;
}
 
.breadcrumbs ul li {
  margin: 0 10px 0 0;
  font-size: 14px;
  float: left;
  position: relative;
  padding-right: 15px;
}
.breadcrumbs ul li a {
  color: #000000;
  text-decoration: none;
  padding-right: 0px;
}
.breadcrumbs ul li a:hover {
  color: #666;
  text-decoration: underline;
}
.breadcrumbs ul li::after {
  padding-top: 0;
  padding-left: 0;
  padding-bottom: 0;
  content: ">";
  font-family: FontAwesome;
  font-size: 14px;
  position: absolute;
  right: 0px;
}
.breadcrumbs ul li:last-child::after {
  content: "";
}
/* product ------------------------------------------------------------*/
.full_mg{
margin-block: 25rem;
}
.pageTitle {
  text-align: center;
  margin-bottom: 0px;
  padding-bottom: 23px;
  
}
.pageTitle h1{
  font-size: 30px;
  line-height: 1;
}
.pageTitle p{
  /*color: #bbb;*/
  font-size: 16px;
  }
.pageTitle .container {
  position: relative;
}
.page_gmark {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%)
}
.page_gmark img {
  width: 100px;
  height: auto;
}
@media (max-width: 580px) {
  .page_gmark img {
    width: 60px;
  }
}
.sliderBox {
  height: 600px;
  margin: 0;
  width: 100%;
  background-color: #99AABB;
}
.productsSlider .bx-wrapper {
  margin: 0 auto;
  width: 900px;
  position: relative;
}
.productsSlider .bx-wrapper li {
  text-align: center;  
}
.bx-prev {
  position: absolute;
  top: 50%;
  left: -80px;
  background-image: url(../images/share/prev.jpg);
  background-repeat: no-repeat;
  background-size: 40px auto;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  font-size: 0;
}
.bx-next {
  position: absolute;
  top: 50%;
  right: -80px;
  background-image: url(../images/share/next.jpg);
  background-repeat: no-repeat;
  background-size: 40px auto;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  font-size: 0;
}
.pager {
  padding: 20px 0 40px;
  text-align: center;
}
.pager a {
  margin-left: 3px;
  margin-right: 3px;
}
@media (min-width: 768px) {
  .offset-1_5 {
    margin-left: 12.5%;
    padding: 0;
  }
}
.bg {
  padding: 40px 0;
  background-color: #f3f3f3;
}
.tableNormal {
  font-size: 14px;  
  margin-bottom: 0;
}
.tableNormal th,.tableNormal td {
  padding: 10px 20px;  
}
.tableNormal th {
  background-color: #8899AA;
  color: #FFFFFF;
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
.tableNormal th.center {
  text-align: center;
}
.tableNormal td {
  background-color: #fff;
}
.form-group span {
  text-align: center;
  padding: 2px 10px 3px;
  font-size: 10px;
  margin-right: 10px;
  line-height: 1;
  border-radius: 3px;
}
.attention {
  background-color: #FF0000;
  color: #FFFFFF;
}
div small.attention {
  background-color: #ffffff;
  color: #000000;
  text-align: left;
  display: block;
}
.speace {
  width: 28px;
}
#products .box {}
#products .box h3{
  font-size: 20px;
  border-bottom: 1px solid #ccc;
  padding-bottom: 15px;
  margin-bottom: 30px;
}
#products .box p {
  font-size: 16px;
}
.products_diagram {
  padding: 40px 0 60px;  
}
.products_diagram .diagram {
  padding-bottom: 35px;  
}
.products_diagram .diagram .full {
  width: 100% !important;
  height: auto;
}
.products_diagram p span {
  display: block;
  padding-bottom: 15px;
}
.products_diagram p.line {
  position: relative;
}
.products_diagram p.line:after {
  content: "";
  width: 150px;
  margin: 15px auto;
  border-bottom: 1px dotted #ccc;
  display: block;
}
.iconTitle {
  border-bottom: 1px dotted #999;
  margin: 0 auto 30px;
  width: 150px;
  text-align: center;
}
.iconTitle span {
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 15px;
  margin-top: 15px;
  display: block;
}
.iconTitle small {
  display: block;
  font-size: 100%;
  margin-inline-end: 15px;
}
h2.news-title {
  font-weight: 700 !important;
  border-bottom: 1px dotted #999;
  margin: 0 auto 30px;
  width: 100%;
  text-align: center;
}
h2.news-title small {
  font-weight: 400 !important;
}
.news-title span {
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 15px;
  margin-top: 15px;
  display: block;
}
.competition_2024{
    padding: 0 3rem 3rem 3rem;
}

.competition_2024 p span{
    font-weight: 600;
}
@media (min-width: 1024px) {
  .bx-prev {
    left: -40px;
  }
  .bx-next {
    right: -40px;
  }
  .pager a img {
    width: 100px;
    height: auto;
  }
}
@media (max-width: 1280px) {
  .tableNormal {
    font-size: 12px;  
    margin-bottom: 0;
  }
}
@media (max-width: 1024px) {
  .tableNormal {
    font-size: 10px;  
    margin-bottom: 0;
  }
}
@media (max-width:992px) {
  .productsSlider .bx-wrapper {
    width: 100%;
  }
  .bx-prev {
    display: none;
  }
  .bx-next {
    display: none;
  }
  .pager a img {
    width: 80px;
    height: auto;
  }
}
@media (max-width:768px) {
  .flogo {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  footer#globalFooter p.copyright small {
    padding-top: 5px;
  }
}
@media (max-width:576px) {
  .tableNormal th {
    white-space: pre;
  }
  .tableNormal th,.tableNormal td {
    padding: 10px 10px;  
  }
  .breadcrumbs {
    margin: 10px 0 20px;
  }
  .breadcrumbs ul li,.breadcrumbs ul li::after {
    font-size: 9px;
  }
  .pageTitle h1 {
    font-size: 20px;
  }
  .pageTitle p {
    font-size: 12px;
    line-height: 1.2;
  }
  .sliderBox {
    height: 300px;
  }
  .slider li img {
    width: auto;
    height: 300px;
  }
  .pager {
    padding: 10px 0 10px;
  }
  .pager a img {
    width: 40px;
  }
  #products .box h3 {
    margin-bottom: 15px;
  }
  .prdct_null {
    display: none;
  }

}
@media (max-width:375px) {
  .pager a img {
    width: 30px;
  }
  #products .box p {
    font-size: 13px;
  }
}
@media (max-width:320px) {
}

.titleBlock {
  color: #FFFFFF;  
}
.titleBlock li, .titleBlock h1, .titleBlock p, .titleBlock a {
  color: #FFFFFF !important;
}
#company .titleBlock {
  background-image: url(../images/company/bg_page_title.jpg);
  background-repeat: repeat-x;
  background-position: center top;
  height: 274px;
  width: 100%;
}
.contentsTitle {
  text-align: center;
  font-size: 24px;
  padding-top: 50px;
}
.page .iconTitle {
  border: none;
  width: 100%;
}
.grayTitleBox {
  border: 1px solid #ccc;
  background-color: #FFFFFF;
  margin-bottom: 40px;
}
.grayTitleBox h2 {
  background-color: #8899aa;
  color: #FFFFFF;
  font-size: 16px;
  text-align: center;
  padding: 10px 0;
  font-weight: bold;
  margin: 0;
  display: block;
}
.grayTitleBox .inner {
  padding: 20px;
}
.voice {
  padding-block: 20px;
}
.voice__box {
  padding: 20px;
  border: 1px solid; #ccc;
  margin-top: 20px;
}
.voice__box p {
  margin: 0;
}
.inner2 .line {
  border-right: 1px solid #ccc;
}
.inner2 .box {
  padding: 10px 0;
}
.companyBox {
  padding-top: 30px;
}
.companyBox p {
  margin-bottom: 0;
}
#outline {
  padding-top: 50px;
}
tr .se {
  padding: 5px;
}
.outlineTitle {
  background-image: url(../images/company/bg_title.jpg);
  background-repeat: repeat-x;
  background-position: center top;
  color: #FFFFFF;
  font-size: 24px;
  font-weight: bolder;
  padding: 28px 0;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .responsiveTbl {
    width: 100%;
  }
.th_dsp_no {
  display: none !important;
}
tr .se {
  display: none !important;
}
    .responsiveTbl th,
    .responsiveTbl td{
    width: 100%;
    display: block;
    border-top: none;
    }
  .responsiveTbl tr:first-child th { border-top: 1px solid #ddd; }
  
}
@media screen and (max-width: 578px) {
  #company .titleBlock {
    height: 200px;
  }
}
.compeTitle {
  background-color: rgba(0,153,255,0.75);
  width: 100％;
  font-size: 24px;
  line-height: 1;
  color: rgba(255,255,255,1.00);
  padding-top: 30px;
  padding-bottom: 30px;
  display: block;
  text-align: center;
  font-weight: normal;
}
#competition .titleBlock {
  background-image: url(../images/competition/bg_page_title.jpg);
  background-repeat: repeat-x;
  background-position: center top;
  /*height: 280px;*/
  height: 220px;
  width: 100%;
}
#competition h2 {
  font-size: 26px;
  text-align: center;
  padding-bottom: 30px;
}
.grayTitleBox .inner strong {
  color: #0099FF;
}
.imageBox {
}
.imageBox .box {
  position: relative;
  margin-bottom: 15px;
}
.imageBox .box .name {
  color: #FFFFFF;
  font-size: 12px;
  background-color: #000000;
  display: block;
  position: absolute;
  bottom: 0px;
  padding: 5px;
  left: 0px;
  width: 100%;
}
.pastTitle {
  width: 100％;
  font-size: 24px;
  line-height: 1;
  color: rgba(255,255,255,1.00);
  padding-top: 38px;
  padding-bottom:38px;
  margin-top: 40px;
  display: block;
  text-align: center;
  font-weight: normal;
  background-image: url(../images/past/bg_past.jpg);
  background-repeat: repeat-x;
  background-position: center top;
  margin-bottom: 0px;
}
.history {
  padding: 40px 0;
}
.history p {
  margin-bottom: 15px;
}
.history p .day {
  color: #b2b2b2;
  padding-right: 20px;
   width: 200px;
  display: inline-block;
}
#competition .attentionBox {
  text-align: center;
  border: 1px solid #ccc;
  padding-top: 15px;
  margin-bottom: 30px;
  padding-left: 15px;
  padding-right: 15px;
}
#competition .attentionBox h2 {
  font-size: 22px;
}
.judge td{
    border: 1px solid #000;
}
#result {
  padding-top: 70px;
}
@media screen and (max-width: 1200px) {
  #competition h2 {
    font-size: 22px;
    text-align: center;
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 1024px) {
  #competition h2 {
    font-size: 18px;
    text-align: center;
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .imageBox .box .name {
    font-size: 10px;
  }
  .history p .day {
  display: block;
  }
  .pageTitle {
    padding-bottom: 27px;
  }
  .compeTitle {
    font-size: 20px;
  }

}

@media screen and (max-width: 640px) {
  .scroll {
    overflow-x: auto;
  }
  .scroll_tbl {
    min-width: 640px;
    margin: 0;
  }
  #competition .titleBlock {
    height: 230px;
  }
  #competition .attentionBox {
  text-align: left;
  }
  #competition .attentionBox h2 {
    text-align: center;
  }
  #competition .attentionBox h3 {
    text-align: center;
  }
  #competition .attentionBox p br {
    display: none;
  }
  #competition .attentionBox .competition_2024 p br{
        display: block;
    }
  .competition_2024{
        padding: 2rem 0;
    }  
}
.tel {
  font-size: 28px;
  text-align: center;
  margin-bottom: 10px;
  padding-bottom: 0;
  line-height: 1;
}
.privacyBox {
  border: 1px solid #ccc;
  padding: 20px 20px 5px;
  background-color: #FFFFFF;
}
.contact_catalog {
  padding: 25px 0 50px;
}

/*製品一覧---------------------------------------------------*/
#products .titleBlock {
  background-image: url(../images/product/bg_page_title.png);
  background-repeat: repeat-x;
  background-position: center top;
  height: 280px;
  width: 100%;
}
.pNav {
  overflow: hidden;
}
.pNav a img {
  margin-left: 10px;
}
.pNav a:hover {
  opacity: .9;
}
.pBox_all {
  width: 33%;
  float: left;
}
.pBox_all a {
  background-color: #3377CC;
  text-align: center;
  margin-right: 1px;
  padding-top: 53px;
  padding-bottom: 53px;
  display: block;
  color: #FFFFFF;
  text-decoration: none;
  font-weight: bold;
}
.btnWrap {
  width: 66%;
  float: left;
}
.pBox {
  width: 50%;
  float: left;
  overflow: hidden;
  position: relative;
}
.pBox_last:after {
  content: "";

}
.pBox a {
  background-color: #3377CC;
  text-align: center;
  margin-right: 1px;
  padding-top: 10px;
  padding-bottom: 10px;
  display: block;
  color: #FFFFFF;
  text-decoration: none;
  font-weight: bold;
  margin-bottom: 1px;
}
.btnWrapUnder {
  padding-top: 10px;
  clear: both;  
}
.btnWrapUnder .pBox {
  width: 33%;
}
.btnWrapUnder .pBox a {
  background-color: #DD4400;
}
.smp {
  display: none;
}
.pc {
  display: block;
}
@media screen and (max-width: 640px) {
  .smp {
    display: block;
  }
  .pc {
    display: none;
  }
  .pBox_all {
    width: 100%;
    margin-bottom: 1px;
  }
  .pBox_all a {
    margin-right: 0;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .btnWrap {
    width: 100%;
  }
  .pBox {
    width: 100%;
  }
  .pBox a {
    margin-right: 0;
  }
  .btnWrapUnder .pBox {
    width: 100%;
  }
  .pastTitle,.contentsTitle,.outlineTitle h2 {
    font-size: 18px;
    padding-left: 20px;
    padding-right: 20px;
  }
}
#formWrap a {
  color: transparent !important;  
}
.feedbackBtn .button {
  min-width: 200px;
  margin: 0 20px;
}
#products .icon {
  padding: 24px 0 20px;
  text-align: center;
}
.pTitle {
  background-color: #3377CC;
  color: #FFFFFF;
  padding: 10px 0;
  text-align: center;
  margin-bottom: 10px;
}
.pTitle h3 {
  font-size: 18px;
  margin: 0;
  line-height: 1;
}
.productLink a {
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
}
.pName {
  font-weight: bold;
  font-size: 18px;
}
.productLink a img {
  margin-left: 10px;  
}.title_red   {
  padding: 10px 0;
  margin-bottom: 10px;
  background-color: #dd4400;
}
.title_red h3 {
  color: #FFFFFF;
  font-size: 18px;
  margin: 0;
  padding: 0;
  text-align: center;
}
.menuWrap.center .btnBox {
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
  width: 100%;
}
#company .titleBlock .contentsTitle {
  background-color: rgba(0,153,0,0.75);
  padding: 25px 0;
  margin: 0;
}
.resultNav {
  width: 100%;
  padding: 0px 15px;
}
.resultNav ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
  height: 50px;
  width: 100%;
}
.resultNav ul li {
  /*width: 24.82%;*/
  width: 19.82%;
  margin: 10px 1px 0;
  text-align: center; 
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.resultNav ul li a {
  color: #fff;
  padding: 10px 0;
  display: block;
  text-decoration: none;
  background-color: #0099FF;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.resultNav ul li:hover {
  margin: 0 1px 0;
  padding: 0 0 10px;
}
.resultNav ul li a:hover {
  background-color: #07639E;
  padding: 10px 0 20px;
}
.resultNav ul li a.active {
  margin: 0 1px 0;
  background-color: #07639E;
}
.resultNav ul li a.active:hover {
  background-color: #07639E;
}
@media (max-width:576px) {
  .resultNav {
    
  }
  .resultNav ul {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none;
  overflow: hidden;
  height: auto;
  padding: 0;
  }
  .resultNav ul li {
    width: 48.85%;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    margin: 1px 1px;
  }
  .resultNav ul li a {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
  .resultNav ul li:hover {
    margin: 1px 1px;
    padding: 0;
  }
  .resultNav ul li a:hover {
    background-color: #07639E;
    padding: 10px 0 10px;
  }
  .resultNav ul li a.active {
    margin: 0;
  }
  .homeProductsBlock td ,.homeProductsBlock th{
    display: block;
    width: 100%;
  }
  .homeProductsBlock .box .tbl .table td.photo {
    width: 100%;
  }
}
.no_recruit {
  padding: 50px 0;
}
.no_recruit h2 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
  color: #0053A6;
  text-align: center;
  clear: both;
  border-top: solid 2px #0053A6;
  border-bottom: solid 2px #0053A6;
  padding: 10px 0 10px;
}
.no_recruit p {
  line-height: 2;
  font-size: 15px;
  text-align: center;
}
.newspageBox {
  padding: 20px;
  background-color: rgba(255,255,255,1.00);
  margin-top: 20px;
  border-radius: 4px;
  border: 1px solid rgba(158,158,158,1.00);
}
.newspageBox .iconTitle {
  text-align: left;
  display: flex;
}
.news_text h3{
    padding: 0 1.5rem;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 400;
}
.news_text p {
     padding: 0 1.5rem;
    font-weight: 400;
}
.news_image{
    width: 50%;
    margin: 0 auto;
}
.cancel-content {
  padding: 80px 0;
}

.cancel-content label {
  padding: 2rem 0;
}
.cancel-content .col-sm-8 {
  padding-bottom: 3rem;
}
.competition_2024 {}
.competition_2024 .box{
  padding-bottom: 30px;
}
.competition_2024 .box h4 {
  font-size: 15px;
  font-weight: 700;
}
.competition_2024 .box p {
  padding: 0;
  margin-bottom: 0;
}
.compe_li ol {
  padding-left: 23px;
}
.compe_li,
.t-left {
  text-align: left;
}
.compe_present {
  margin-bottom: 25px;
}
.compe_present .inner {
  text-align: left;
  display: flex;
}
.compe_present .f1 {
  display:block;
  width: 70px;
}
.compe_present .f2 {
  display:block;
  width: 60px;
}

.new_icon .date {
  display: flex;
}
.new_icon .date .new {
  font-size: 8px;
  font-weight: 700;
  background-color: #ff0000;
  color: #ffffff;
  width: 26px;
  height: 26px;
  border-radius: 100px;
  text-align: center;
  padding-block: 6px;
  font-style: normal;
  margin-right: 5px;
}
.prev {
  margin-block: 20px 20px;
}
.prev a {
  text-decoration: none;
}

table.normal {

}
table.normal tr {
  border-bottom:1px solid #ccc;
}
table.normal tr:last-child {
  border-bottom: none;
}
table.normal th {
  background-color: #8899AA;
color: #FFFFFF;
  padding: 15px;
  width: 20%;
}
table.normal td {
  padding: 15px;
}
.buttonArea {
  margin-bottom: 15px;
  display: flex;
  justify-content: center;
  gap: 30px;
}
.buttonArea .butn {
  width: 100%;
  max-width: 280px;
}
.buttonArea .butn a {
  display: block;
  background-color: #ffffff;
  border-radius: 100px;
  width: 100%;
  padding-block: 15px;
  text-align: center;
  text-decoration: none;
  border: 1px solid rgba(0,153,255,1.00);
  background-color: rgba(0,153,255,1.00);
  color: #fff;
  font-weight: 700;
  margin-bottom: 30px;
}
.buttonArea .butn a:hover {
  background-color: #fff;
  color: rgba(0,153,255,1.00);
}
.inner h3 {
  color:rgba(0,153,255,1.00);
}

@media (max-width:767px) {
    .newspageBox .iconTitle {
      display: block;
    }
    .iconTitle small {
      margin-inline-end: 0;
    }
}

@media (max-width: 743px) {
  table.normal th {
    padding: 5px 15px;
    width: 100%;
    display: block;
  }
  table.normal td {
    padding: 5px 15px;
    width: 100%;
    display: block;
  }
  .buttonArea {
    gap: 10px;
  }
}

@media (min-width:768px) {
  .flex {
    display: flex;
    justify-content: space-between;
  }
  .flex p {
    width: 48%;
  }
}
