@charset "UTF-8";
/* CSS Document */
/* sakata Sans */
/* style */
/*=================================
	Initialization of style
===================================*/
/* Open Sans */
@import url(https://fonts.googleapis.com/css?family=Open+Sans);
/* flexslider */
@import url(flexslider.css);

.flex {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row wrap;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.flexno {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.flex-st {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row wrap;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -moz-justify-content: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

.flexno-st {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

/* 基本定義 */
body {
  margin: 0;
  padding: 0;
  color: #333333;
  font-family: "メイリオ", sans-serif;
  font-size: 14px;
  line-height: 150%;
  text-align: center;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  width: 100%;
  background: #fff;
  font-weight: 400;
  position: relative;
}

a:link,
a:visited {
  text-decoration: none;
  color: #1f6bbd;
}

a:hover,
a:active {
  text-decoration: none;
  color: #1f6bbd;
}

a p,
a li,
a dd {
  color: #333;
}

div,
h1,
h2,
.ttl h3,
h3,
h4,
h5,
h6,
p,
dl,
dt,
dd,
ul,
ol,
li,
form,
figure,
article,
section,
header,
footer {
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-weight: normal;
  line-height: 140%;
}

img,
a img {
  border: none;
  vertical-align: bottom;
}

h1,
h2,
.ttl h3,
h3,
h4 {
  font-size: 1em;
}

a img {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

a:hover,
a:hover img {
  opacity: 0.9;
  filter: alpha(opacity=90);
}

/* blockgroup */
/* List_group */
ul,
ol,
li {
  list-style: none;
}

/* inline-style */
address {
  font-style: normal;
  font-size: 11px;
}

address a,
address a:link,
address a:visited {
  text-decoration: none;
  color: #fff;
}

address a:hover,
address a:active {
  text-decoration: underline;
  color: #fff;
}

/* table */
table {
  width: 100%;
}

b {
  font-weight: normal;
}

.mb10 {
  margin-bottom: 10px;
}

.mt10 {
  margin-top: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mt20 {
  margin-top: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mt30 {
  margin-top: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mt40 {
  margin-top: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

.mt50 {
  margin-top: 50px;
}

.mb60 {
  margin-bottom: 60px;
}

.mt60 {
  margin-top: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mt70 {
  margin-top: 70px;
}

.mb80 {
  margin-bottom: 80px;
}

.mt80 {
  margin-top: 80px;
}

.alignleft {
  float: left;
  margin: 0px 20px 20px 0;
}

.alignright {
  float: right;
  margin: 0px 0px 20px 20px;
}

/*=============================
   media screen base
===============================*/
@media screen and (min-width: 769px) {
  .sn {
    display: block;
  }

  .pn {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .pn {
    display: block;
  }

  .sn {
    display: none !important;
  }

  #menubtn {
    position: fixed;
    right: 15px;
    top: 15px;
    z-index: 99;
  }

  #menu {
    z-index: 100;
  }

  .mm-menu {
    text-align: left;
    z-index: 100;
  }

  #closebtn {
    display: none;
    position: fixed;
    right: 15px;
    top: 15px;
    z-index: 110;
  }

  .mm-opened #closebtn {
    display: block;
  }

  .mm-opened #menubtn {
    display: none;
  }
}

/*=============================
	Layout-Base
===============================*/
/* header
-------------------------*/
header {
  width: 100%;
  margin: 0 auto;
  z-index: 100;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

header article {
  text-align: left;
  padding: 10px 0px 0px 0px;
  max-width: 1080px;
  position: relative;
  margin: auto;
}

header .logo {
  margin-top: 5px;
}

@media screen and (max-width: 768px) {
  header .logo {
    text-align: center;
  }

  header .logo a {
    float: none;
  }
}

header .logo h1 {
  float: left;
  font-size: 14px;
  margin: 10px 0px 0px 10px;
  font-weight: 500;
  letter-spacing: 0.05%;
}

header .logo h1 strong {
  font-size: 18px;
  font-weight: 600;
}

header .logo h1 span {
  color: #1f6bbd;
  font-size: 13px;
  font-weight: 400;
  display: block;
}

@media screen and (max-width: 768px) {
  header .logo h1 {
    float: none;
  }

  header .logo h1 span {
    margin-top: 10px;
  }
}

header .logo a {
  float: left;
}

@media screen and (max-width: 768px) {
  header .logo a {
    float: none;
  }
}

header .subnav {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: flex-end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  clear: both;
  margin-bottom: 5px;
}

header .subnav li {
  background: url(../images/common/arw01.png) left center no-repeat;
  background-size: 10px 10px;
  padding-left: 12px;
  font-size: 11px;
  margin-left: 10px;
}

header .subnav li a {
  color: #333;
}

@media screen and (max-width: 768px) {
  header .subnav {
    display: none;
  }
}

/* gnav -------------------------*/
.gnav01,
.gnav02,
.gnav03 {
  width: 100%;
  background: #1f6bbd;
}

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

  .gnav01,
  .gnav02,
  .gnav03 {
    width: 100%;
    float: none;
    margin: 0 0%;
  }
}

@media screen and (max-width: 768px) {
  .gnav01,
  .gnav02 {
    display: none;
  }
  .gnav03 {
    display: flex;
  }
}

.gnav01>ul,
.gnav02>ul,
.gnav03>ul {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  max-width: 1080px;
  margin: auto;
}

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

  .gnav01>ul,
  .gnav02>ul,
  .gnav03>ul {
    max-width: 100%;
  }
}

.gnav01>ul>li,
.gnav02>ul>li,
.gnav03>ul>li {
  text-align: center;
  position: relative;
  width: 100%;
}

.gnav01>ul>li:last-child a,
.gnav02>ul>li:last-child a,
.gnav03>ul>li:last-child a {
  border-right: 1px solid #72a0d1;
}

.gnav01>ul>li>a,
.gnav02>ul>li>a {
  overflow: hidden;
  display: block;
  position: relative;
  z-index: 10;
  text-align: center;
  font-weight: 500;
  font-size: 14px;
  white-space: nowrap;
  color: #fff;
  letter-spacing: 0.05em;
  box-sizing: border-box;
  font-weight: 600;
  padding: 18px 10px 18px 10px;
  border-left: 1px solid #72a0d1;
}
.gnav03>ul>li>a {
  overflow: hidden;
  display: block;
  position: relative;
  z-index: 10;
  text-align: center;
	@media screen and (max-width: 768px) {
		font-size: 7px;
        letter-spacing: 0.00em;
        padding: 0px 0px 0px 0px;
	}
	@media screen and (min-width: 769px) {
		font-size: 14px;
        letter-spacing: 0.05em;
        padding: 18px 10px 18px 10px;
	}
  white-space: nowrap;
  color: #fff;
  box-sizing: border-box;
  font-weight: 800;
  border-left: 1px solid #72a0d1;
}

.gnav01>ul>li>a::before,
.gnav02>ul>li>a::before,
.gnav03>ul>li>a::before {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  position: absolute;
  content: "";
  left: 0;
  z-index: -1;
  top: -100%;
}

.gnav01>ul>li>a:hover::before,
.gnav02>ul>li>a:hover::before,
.gnav03>ul>li>a:hover::before {
  opacity: 1;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: white;
}

.gnav01>ul>li>a:hover,
.gnav02>ul>li>a:hover,
.gnav03>ul>li>a:hover {
  color: #1f6bbd;
}

.gnav02,
.gnav03 {
  background: #eeeeee;
  padding: 0px 0;
}

.gnav02>ul,
.gnav03>ul {
  background: url(../images/common/bg_sp.jpg) right center no-repeat;
}

.gnav02>ul>li>a,
.gnav03>ul>li>a {
  color: #333;
  background: url(../images/common/bg_sp.jpg) left center no-repeat;
  padding: 12px 15px 12px 15px;
  border: none;
}

@media screen and (max-width: 1080px) {
  .gnav02>ul>li>a,
  .gnav03>ul>li>a {
    padding: 12px 10px 12px 10px;
  }
}

.gnav02>ul>li:last-child a,
.gnav03>ul>li:last-child a {
  border: none;
}

.tag_title {
  margin: 0;
  padding: 0;
  font-weight: bold;
  font-size: 15px;
  background: #DDF1FA;
/*
  background: gainsboro;
*/
}

.tag_description {
  margin: 5px 0 0;
  padding: 0;
  font-size: 12px;
}

.search {
  float: right;
  position: relative;
  display: inline-block;
  margin-left: 10px;
  margin-top: 15px;
}

@media screen and (max-width: 768px) {
  .search {
    text-align: center;
    width: 100%;
    display: none;
  }
}

#searchform {
  position: relative;
  display: inline-block;
}

#menu .mm-listview li:first-child {
  text-align: center;
}

#menu #searchform {
  margin: 10px auto;
}

#menu #searchform #keywords {
  background: #fff;
  border: 1px solid #ddd;
}

#keywords {
  width: 180px;
  height: 14px;
  background: #eeeeee;
  box-shadow: none;
  border: none;
  padding: 8px;
  border-radius: 20px;
}

@media screen and (max-width: 768px) {
  #keywords {
    margin: auto;
    position: relative;
  }
}

#searchBtn {
  background: url(../images/common/ic_hsearch.png) center center no-repeat;
  position: absolute;
  width: 18px;
  height: 18px;
  top: 5px;
  right: 5px;
  cursor: pointer;
  border: none;
  text-indent: -9999px;
}

*:first-child+html #searchBtn {
  top: 1px;
}

@keyframes show {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.mm-menu {
  animation: show 0.3s linear 0s;
}

@media screen and (min-width: 769px) {
  .gnav.fixed {
    box-shadow: 0px 1px 2px 2px rgba(0, 0, 0, 0.05);
    position: fixed;
    opacity: 1;
    top: 0;
    left: 0;
    background-color: #fff;
    width: 100%;
    z-index: 200;
    float: none;
    margin: 0px;
    padding-left: 0;
  }

  .gnav.fixed .subnav {
    display: none;
  }

  .gnav.fixed ul {
    max-width: 1080px;
    box-sizing: border-box;
    margin: auto;
    padding: 0;
  }

  .gnav.fixed>ul>li:first-child a {
    background: url("../images/common/img_mark.jpg") left center no-repeat;
    background-size: 60px auto;
    padding-left: 60px;
  }

  .gnav.fixed>ul>li:last-child {
    display: block;
    width: 15%;
  }

  .gnav.fixed>ul>li:last-child a {
    background: #ff743c;
    color: #fff;
  }

  .gnav.fixed li .child {
    left: -50%;
  }

  .gnav.fixed>ul a {
    display: block;
    font-size: 13px;
  }

  .gnav.fixed>ul>li>a {
    width: auto;
  }
}

.gnav .glogo {
  display: none;
}

.gnav .glogo a {
  background: url(../images/common/logo_f.jpg) center left no-repeat;
  background-size: 24px 24px;
  padding-left: 30px;
}

.gnav.fixed .glogo {
  display: block;
}

/* サブメニュー */
.gnav li .child {
  display: none;
  background-color: rgba(31, 94, 166, 0.9);
  list-style: none;
  position: absolute;
  width: 200px;
  z-index: 100 !important;
  top: 100%;
  left: -50%;
  margin: 0;
}

.gnav li:nth-child(5) .child {
  width: 100%;
  left: 0%;
}

.gnav li ul li {
  font-size: 14px;
  text-align: center;
  width: 100%;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.gnav li ul li a {
  color: #fff;
  padding: 12px 15px;
  display: block;
}

/* footer
-------------------------*/
footer {
  background: #f4f4f4;
  width: 100%;
  text-align: left;
}

footer nav a {
  font-size: 14px;
  color: #333 !important;
  line-height: 200%;
}

#footer {
  padding: 40px 10px 0px 10px;
  margin: auto;
}

footer nav {
  max-width: 1080px;
  margin: auto;
  overflow: hidden;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row wrap;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -moz-justify-content: between;
  -webkit-justify-content: between;
  justify-content: between;
}

footer nav .child li a {
  background: url(../images/common/arw01.png) left center no-repeat;
  background-size: 8px 8px;
  padding-left: 15px;
}

@media screen and (max-width: 768px) {
  footer nav {
    display: block;
    padding: 3%;
  }

  footer nav>ul,
  footer nav>dl {
    border-bottom: 1px solid #ddd;
    padding: 15px 0;
  }

  footer nav a {
    display: block !important;
  }
}

footer nav>ul {
  flex-grow: 1;
}

#footer-btm {
  max-width: 1080px;
  overflow: hidden;
  margin: 30px auto 0px auto;
  padding-bottom: 30px;
  color: #333;
}

#footer-btm dl {
  float: left;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

#footer-btm dl dd {
  margin: 15px 0px 0px 20px;
}

#footer-btm dl dd span {
  font-size: 16px;
  font-weight: bold;
}

#footer-btm p {
  float: right;
}

@media screen and (max-width: 768px) {
  #footer-btm {
    padding: 15px 15px;
  }

  #footer-btm dl {
    display: block;
  }

  #footer-btm dl dd {
    margin: 15px 0px 0px;
  }

  #footer-btm dl dd span {
    font-size: 14px;
  }

  #footer-btm .logo {
    margin: auto;
  }
}

#copyright {
  width: 100%;
  background: #1f6bbd;
}

#copyright address {
  max-width: 1080px;
  margin: auto;
  padding: 5px 0px 5px 0px;
  text-align: center;
  color: #fff;
  display: block;
}

/*=============================
    Common setting
===============================*/
.clearfix {
  *zoom: 1;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/* pagetop
-------------------------*/
.pagetop {
  margin-top: 20px;
  text-align: right;
}

.pagetop a:before {
  content: '>';
  padding-left: 10px;
}

/* bread_crumb
-------------------------*/
.bread_crumb_list {
  max-width: 100%;
  left: 0;
  margin: auto;
  text-align: left;
  padding: 0px 0 0px 0;
  position: relative;
  z-index: 10;
  text-align: right;
  margin-top: -35px;
}

@media screen and (max-width: 768px) {
  .bread_crumb_list {
    padding-right: 10px;
  }
}

.bread_crumb {
  display: inline-block;
  line-height: 140%;
  margin: 10px auto;
  padding-left: 20px;
  box-sizing: border-box;
}

.bread_crumb li {
  display: inline-block;
  color: #666;
  font-size: 0.8em;
  font-weight: 400;
  padding: 0px 0px 0px 0px;
}

.bread_crumb li:last-child:after {
  content: none;
}

.bread_crumb li a {
  text-decoration: underline;
  display: inline-block;
}

.bread_crumb li:after {
  content: '>';
  padding-left: 10px;
  margin-right: 10px;
}

.bread_crumb li.current {
  color: #fff;
  padding: 10px;
  margin-left: 10px;
}

.bread_crumb li a:hover {
  text-decoration: none;
}

/* base-table
-------------------------*/
/* table */
.tbl-base,
.tbl-form {
  margin: 0 auto;
  border: none;
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 30px;
  line-height: 1.6;
}

.tbl-base th,
.tbl-form th {
  line-height: 180%;
  text-align: left;
  font-size: 14px;
  color: #333;
  padding: 15px 10px 12px 20px;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  background: #f4f4f4;
  vertical-align: top;
  width: 20%;
  color: #1f6bbd;
  font-weight: 600;
}

.tbl-base td,
.tbl-form td {
  line-height: 180%;
  text-align: left;
  font-size: 14px;
  color: #333;
  padding: 15px 10px 12px 20px;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  color: #666;
  vertical-align: middle;
}

.tbl-base td table,
.tbl-form td table {
  margin-bottom: 0;
}

.tbl-base td table th,
.tbl-form td table th,
.tbl-base td table td,
.tbl-form td table td {
  background: none;
  border: none;
  padding: 2px 5px;
  text-align: left;
}

.tbl-base td table th,
.tbl-form td table th {
  color: #333;
}

.tbl-base td .flex,
.tbl-form td .flex {
  margin: 15px 0;
}

.tbl-base td .flex li,
.tbl-form td .flex li {
  width: 50%;
  padding: 5px 5px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

.tbl-base td dl:nth-child(n+2),
.tbl-form td dl:nth-child(n+2) {
  margin-top: 15px;
}

.tbl-base td dl dt:before,
.tbl-form td dl dt:before {
  content: "■";
  color: #1f6bbd;
  font-size: 80%;
}

.tbl-base td dl dt,
.tbl-form td dl dt {
  font-weight: bold;
}

.tbl-base td dl dt,
.tbl-form td dl dt,
.tbl-base td dl dd,
.tbl-form td dl dd {
  line-height: 160%;
}

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}

.tbl-form {
  margin-top: 20px;
}

.tbl-form td,
.tbl-form th {
  padding: 10px 0;
}

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

  .tbl-base th,
  .tbl-form th,
  .tbl-base td,
  .tbl-form td {
    width: 100%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    display: block;
  }
}

/* base-layout
-------------------------*/
.content-block {
  max-width: 1080px;
  margin: auto;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  flex-direction: row-reverse;
  padding-top: 40px;
}

.content-block #content-main {
  max-width: 800px;
  width: 1080px;
  margin-left: 30px;
}

@media screen and (max-width: 1080px) {
  .content-block #content-main {
    max-width: 100%;
    width: 100%;
  }
}

.content-block aside {
  width: 250px;
}

@media screen and (max-width: 768px) {
  .content-block {
    padding-top: 10px;
    display: block;
  }

  .content-block #content-main {
    margin-left: 0px;
    padding-top: 10px;
  }
}

.container {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  width: 100%;
  padding-bottom: 60px;
}

.container .inner {
  max-width: 800px;
  margin: auto;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .container .inner {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    max-width: 100%;
  }
}

.container .inner p {
  line-height: 180%;
  font-size: 14px;
}

@media screen and (max-width: 1080px) {
  .container {
    padding-left: 2%;
    padding-right: 2%;
  }

  .container .inner {
    margin: auto;
    text-align: left;
  }
}

@media screen and (max-width: 768px) {
  .img100 {
    width: 100%;
    height: auto;
  }
}

/*=============================
	TopPage setting
===============================*/
/* mainimg */
.mainimg {
  width: 100%;
  position: relative;
  margin-bottom: 40px;
}

.flexmain {
  width: 100%;
  overflow: hidden;
}

.flexmain figure img {
  width: 100%;
  height: auto;
}

.ttl {
  text-align: left;
  margin-bottom: 30px;
}

.ttl h2,
.ttl h3 {
  font-size: 24px;
  font-weight: bold;
}

.ttl h2:before,
.ttl h3:before {
  content: " ";
  width: 100px;
  height: 2px;
  background: #1f6bbd;
  display: block;
  margin-bottom: 20px;
}

#content-top h2,
#content-top .ttl h3,
.ttl #content-top h3 {
  font-size: 24px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 60px;
  margin-top: 60px;
  padding-bottom: 50px 0;
}

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

  #content-top h2,
  #content-top .ttl h3,
  .ttl #content-top h3 {
    font-size: 20px;
    line-height: 130%;
  }
}

#topSolution ul,
#conSolution ul {
  margin-right: 1px;
}

#topSolution li,
#conSolution li {
  position: relative;
  width: 33.333%;
}

#topSolution li h4,
#conSolution li h4 {
  /*z-index: 100 !important;*/
  opacity: 1;
}

#topSolution li figure,
#conSolution li figure {
  z-index: -100 !important;
}

#topSolution li img,
#conSolution li img {
  z-index: -100 !important;
}

#topSolution li li:hover h4,
#conSolution li li:hover h4 {
  z-index: 100 !important;
  opacity: 1;
  display: block;
}

#topSolution li li:hover figure,
#conSolution li li:hover figure {
  z-index: -100 !important;
}

#topSolution li li:hover img,
#conSolution li li:hover img {
  z-index: -100 !important;
}

#topSolution .inner h4,
#conSolution .inner h4 {
  position: absolute;
  top: 10px;
  right: 10px;
  height: 100px;
  padding: 0px 10px;
  box-sizing: border-box;
  background: #1f6bbd;
  color: #fff;
  text-align: center;
  display: flex;
  min-width: 90px;
  align-items: center;
}

#topSolution .inner h4 span,
#conSolution .inner h4 span {
  flex: 1;
}

#topSolution .inner div,
#conSolution .inner div {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease;
  text-align: center;
  display: flex;
  align-items: center;
}

#topSolution .inner li:hover div,
#conSolution .inner li:hover div {
  opacity: 1;
  /* マスクを表示する */
}

#topSolution .inner li div p,
#conSolution .inner li div p {
  color: #fff;
  font-weight: bold;
  text-align: center;
  margin: auto;
  font-size: 16px;
}

#topSolution figure,
#conSolution figure {
  overflow: hidden;
}

#topSolution figure img,
#conSolution figure img {
  position: relative;
  width: 100%;
  height: auto;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

#topSolution a:hover img,
#conSolution a:hover img {
  opacity: 1;
  filter: alpha(opacity=100);
  z-index: -1000 !important;
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -o-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

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

  #topSolution li,
  #conSolution li {
    width: 50%;
    margin-bottom: 15px;
  }

  #topSolution .inner div,
  #conSolution .inner div {
    opacity: 1;
    position: static;
    color: #333;
    width: auto;
    height: auto;
    background: none;
  }

  #topSolution .inner div p,
  #conSolution .inner div p {
    color: #333 !important;
    font-size: 13px !important;
    padding: 10px;
    line-height: 140%;
  }

  #topSolution .inner li:hover div,
  #conSolution .inner li:hover div {
    padding: 0;
  }
}

#topReason li,
#conReason li,
#conTraining li {
  font-size: 18px;
  font-weight: bold;
  background: #f2f2f2;
  padding: 15px 15px 15px 0px;
  margin-bottom: 10px;
  width: 49%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  overflow: hidden;
}

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

  #topReason li,
  #conReason li,
  #conTraining li {
    width: 100%;
    font-size: 15px;
  }
}

#topReason li:nth-child(1):before,
#conReason li:nth-child(1):before,
#conTraining li:nth-child(1):before {
  content: "1";
}

#topReason li:nth-child(2):before,
#conReason li:nth-child(2):before,
#conTraining li:nth-child(2):before {
  content: "2";
}

#topReason li:nth-child(3):before,
#conReason li:nth-child(3):before,
#conTraining li:nth-child(3):before {
  content: "3";
}

#topReason li:nth-child(4):before,
#conReason li:nth-child(4):before,
#conTraining li:nth-child(4):before {
  content: "4";
}

#topReason li:nth-child(5):before,
#conReason li:nth-child(5):before,
#conTraining li:nth-child(5):before {
  content: "5";
}

#topReason li:nth-child(6):before,
#conReason li:nth-child(6):before,
#conTraining li:nth-child(6):before {
  content: "6";
}

#topReason li:nth-child(7):before,
#conReason li:nth-child(7):before,
#conTraining li:nth-child(7):before {
  content: "7";
}

#topReason li:before,
#conReason li:before,
#conTraining li:before {
  color: #fff;
  background: #1f6bbd;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  display: block;
  line-height: 40px;
  text-align: center;
  float: left;
  margin-right: 20px;
  margin-top: 5px;
}

#topReason li span,
#conReason li span,
#conTraining li span {
  overflow: hidden;
  display: block;
}

/* top-news */
#tabMenu,
#subMenu {
  background: #fff;
  margin-bottom: 10px;
}

#tabMenu li,
#subMenu li {
  width: 24%;
  text-align: center;
  display: block;
}

#tabMenu li a,
#subMenu li a {
  width: 100%;
  padding: 8px 0;
  background: #f2f2f2;
  border-radius: 50px;
  color: #333;
  display: block;
  font-weight: bold;
}

#tabMenu li:last-child a,
#subMenu li:last-child a {
  border-right: none;
}

#tabMenu .active,
#subMenu .active {
  background: #1f6bbd;
  color: #fff;
}

.newslist li {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  padding: 10px 0;
  border-bottom: 1px solid #d0d0d0;
  position: relative;
}

.newslist a {
  line-height: 180%;
  text-align: left;
  display: block;
}

.newslist time {
  width: 100px;
  font-family: 'Fjalla One';
  line-height: 30px;
}

.newslist li span {
  display: block;
  width: 140px;
  padding: 5px;
}

.newslist li span a {
  font-size: 12px;
  width: 100%;
  color: #fff !important;
  text-decoration: none !important;
  text-align: center;
  display: block;
  line-height: 22px;
  background: #1f6bbd;
}

.newslist li p {
  width: 90%;
}

.newslist li p a {
  background-size: 14px 14px;
  display: block;
  padding: 5px 20px;
  color: #333;
}

.newslist .ttl a {
  position: absolute;
  display: inline-block;
  width: auto;
  top: 10px;
  right: 0px;
  color: #333;
  background: url(../images/common/list.png) left center no-repeat;
  background-size: 10px 10px;
}

.flaw {
  width: 85%;
  line-height: 0px;
  padding: 10px;
}

@media screen and (max-width: 768px) {
  .newslist li {
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    -moz-flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -moz-justify-content: flex-start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }

  .newslist li li p {
    width: 100%;
  }
}

#tabBoxes div {
  display: none;
}

#tabBoxes #all {
  display: block;
}

#tabBoxes .menu {
  display: none;
}

.menu {
  max-width: 600px;
  display: contents;
}

.menu a {
  display: block;
  padding: 15px;
  text-decoration: none;
  color: #000;
}

.and {
  display: block;
  margin: 0 0 4px 0;
  padding: 15px;
  line-height: 1;
  color: #fff;
  background: rgb(163, 163, 163);
  cursor: pointer;
}

.lob {
  display: none;
}

.menu ul {
  margin: 0;
  padding: 0;
  background: #f4f4f4;
  list-style: none;
}

.menu li {
  height: 0;
  overflow: hidden;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  padding: 0px;
  border-bottom: 0;
}

#menu_bar01:checked~#links01 li,
#menu_bar02:checked~#links02 li {
  height: 54px;
  opacity: 1;
}

.flaw {
  width: 85%;
  line-height: 0px;
  padding: 10px;
}

.sco {}




.bnr li {
  margin-bottom: 10px;
}

.btn,
.sbtn {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  margin-bottom: 30px;
}

.btn li,
.sbtn li {
  margin-bottom: 8px;
}

.btn a,
.sbtn a {
  background: url(../images/common/arw_blue.png) 10% center no-repeat;
  width: 100%;
  display: block;
  background-size: 14px;
  color: #fff;
  padding: 6px 45px 6px 60px;
  margin-top: 50px;
  font-weight: bold;
  border: 3px solid #1f6bbd;
  border-radius: 50px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  color: #1f6bbd;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  margin: auto;
  white-space: nowrap;
}
.inverd{
  background: url(../images/common/arw.png) 12% center no-repeat #1e3d87;
  color: #fff;
}

.btn a:hover,
.sbtn a:hover {
  background: url(../images/common/arw.png) 12% center no-repeat #1f6bbd;
  background-size: 14px;
  opacity: 0.8;
  color: #fff;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

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

  .btn a,
  .sbtn a {
    padding: 6px 25px 6px 35px;
  }
}

.btn a:hover,
.sbtn a:hover {
  opacity: 1 !important;
}

.sbtn {
  text-align: right;
  position: absolute;
  top: 15px;
  right: 0;
  text-align: center;
  margin-top: 0px;
}

.sbtn a {
  text-align: center;
  display: inline-block;
  font-size: 14px;
  margin-top: 0px;
  padding: 6px 15px 3px 35px;
  color: #333;
}

@media screen and (max-width: 768px) {
  .sbtn {
    width: 80%;
    margin: 30px auto;
    position: static;
  }

  .sbtn a {
    width: 100%;
  }
}

/* pagetop
-------------------------*/
#totop a {
  clear: both;
  width: 50px;
  height: 50px;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 100;
  display: block;
  text-align: center;
}

#totop a img {
  padding-top: 5px;
  transition: all 0.3s;
  -webkit-transition: all 0.3s;
}

#totop a:hover img {
  padding-top: 0px;
  opacity: 1 !important;
}

/*=============================
	Sub(Lower)Page setting
===============================*/
.right {
  float: right;
  margin: 0px 0px 40px 40px;
}

.left {
  float: left;
  margin: 0px 40px 40px 0px;
}

.lead {
  margin: 15px 15px 60px 15px;
}

#content-main p {
  line-height: 180%;
  text-align: left;
}

.submain {
  background: url(../images/common/sub_img.jpg) left top no-repeat;
  background-size: cover;
  text-align: left;
}

.submain h2,
.submain .ttl h3,
.ttl .submain h3 {
  line-height: 160%;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  background: #1f6bbd;
  display: inline-block;
  padding: 35px 30px;
  letter-spacing: 2px;
}

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

  .submain h2,
  .submain .ttl h3,
  .ttl .submain h3 {
    font-size: 20px;
    padding: 20px 20px;
    line-height: 140%;
  }
}

.cf:after {
  content: " ";
  display: block;
  clear: both;
}

#catCase li,
#conKiji li {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ddd;
}

#catCase li:nth-child(even) a,
#conKiji li:nth-child(even) a {
  -ms-flex-flow: row-reverse;
  -webkit-flow: row-reverse;
  flex-flow: row-reverse;
}

#catCase .txt,
#conKiji .txt {
  width: 63%;
  margin-top: 0px;
}

#catCase .txt h4,
#conKiji .txt h4 {
  font-weight: bold;
  color: #333;
  margin-top: 0;
  font-style: 16px;
}

#catCase .txt dt,
#conKiji .txt dt {
  color: #1f6bbd;
  font-size: 18px;
  font-weight: bold;
  margin-top: 12px;
  margin-bottom: 12px;
}

#catCase .txt dd,
#conKiji .txt dd {
  line-height: 160%;
}

#catCase figure,
#conKiji figure {
  width: 33%;
}

#catCase figure img,
#conKiji figure img {
  width: 100%;
  height: auto;
}

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

  #catCase li a,
  #conKiji li a {
    display: block;
  }

  #catCase figure,
  #conKiji figure,
  #catCase .txt,
  #conKiji .txt {
    width: 100%;
  }
}

p.cat {
  background: #1f6bbd;
  display: inline-block;
  color: #fff;
  padding: 0px 10px;
  margin-bottom: 5px;
}

.profile {
  text-align: left;
}

.profile dl {
  background: #f1f1f1;
  padding: 15px;
}

.profile dl dt {
  font-weight: bold;
  margin-bottom: 5px;
  font-size: 13px;
}

.profile dl dd {
  font-size: 13px;
}

.profile .name {
  font-weight: bold;
  font-size: 13px;
  margin: 15px 0;
}

#contCaseDetail p.catch {
  position: relative;
  z-index: 5;
  color: #1f6bbd;
  font-weight: bold;
  text-align: left;
  margin-bottom: 30px;
  line-height: 40px;
  font-size: 18px;
}

@media screen and (max-width: 768px) {
  #contCaseDetail p.catch {
    line-height: 160%;
    margin-top: 0;
  }

  #contCaseDetail p.catch span {
    background: none;
    color: #1f6bbd;
    display: inline-block;
    padding: 0px 0;
  }
}

.case-container {
  position: relative;
  width: 100%;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-flow: row-reverse;
  -webkit-flow: row-reverse;
  flex-flow: row-reverse;
}

.case-container figure {
  width: 60%;
}

.case-container figure img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 1080px) {
  .case-container figure {
    width: 58%;
  }

  .case-container figure img {
    width: 100%;
    height: auto;
  }

  .case-container .profile {
    width: 40%;
  }
}

@media screen and (max-width: 768px) {
  .case-container {
    display: block;
  }

  .case-container figure {
    width: 100%;
  }

  .case-container figure img {
    width: 100%;
    height: auto;
  }

  .case-container .profile {
    width: 100%;
  }
}

.subpage .inner p {
  margin-bottom: 15px;
}

#contCaseDetail .inner {
  padding-top: 25px;
}

#contCaseDetail .inner h4 {
  background: #f2f2f2;
  font-size: 18px;
  font-weight: bold;
  padding: 12px;
  border-bottom: 1px solid #1f6bbd;
  margin-bottom: 35px;
}

#contCaseDetail .inner h5 {
  font-size: 16px;
  font-weight: bold;
  color: #1f6bbd;
  margin-top: 20px;
  margin-bottom: 10px;
}

#contCaseDetail .inner figure.right {
  float: right;
  display: inline-block;
  margin: 0px 0px 25px 25px;
}

#contCaseDetail .inner figure.left {
  float: left;
  display: inline-block;
  margin: 0px 25px 25px 0px;
}

#contCaseDetail .inner figcaption {
  font-size: 12px;
  margin-top: 10px;
}

#contCaseDetail .inner .link {
  margin-top: 30px;
}

#contCaseDetail .inner .link a {
  text-decoration: underline;
}

#contCaseDetail .inner p {
  margin-bottom: 15px;
}

#conFlow .tbl-base th,
#conFlow .tbl-form th,
#conFlow .tbl-base td,
#conFlow .tbl-form td {
  border: 1px solid #ccc;
}

#conFlow dl {
  margin-bottom: 20px;
}

#conFlow dl dt {
  width: 28%;
  font-size: 16px;
  font-weight: bold;
  padding-top: 20px;
  background: #f4f4f4;
  padding: 10px;
  box-sizing: border-box;
  background: url(../images/common/arw_flow.png) bottom center no-repeat #f4f4f4;
}

#conFlow dl dd {
  width: 70%;
}

#conFlow dl h4 {
  font-size: 16px !important;
  margin: 0px 0 10px 0;
  padding: 0;
  background: none;
}

#conFlow dl li {
  margin-bottom: 15px;
  padding: 15px;
}

#conFlow dl .doc span {
  font-size: 12px;
  font-weight: bold;
  padding: 4px;
  background: #fff;
  display: inline-block;
  border: 1px solid #ccc;
}

#conFlow dl .doc {
  margin-top: 10px;
  font-size: 12px;
}

@media screen and (max-width: 768px) {
  #conFlow dl {
    display: block;
  }

  #conFlow dl dt {
    width: 100%;
  }

  #conFlow dl dd {
    width: 100%;
  }
}

#conFlow dl .flowc {
  background: #f9ecec;
  border-left: 2px solid #c80000;
}

#conFlow dl .flown {
  background: #e9f6fa;
  border-left: 2px solid #1f6bbd;
}

.flowex {
  margin: 10px;
}

.flowex li {
  margin-right: 20px;
}

.flowex li span {
  width: 30px;
  vertical-align: middle;
  height: 15px;
  display: inline-block;
  margin-right: 10px;
}

.flowex li:first-child span {
  background: #f9ecec;
  border: 2px solid #c80000;
}

.flowex li:nth-child(2) span {
  background: #e9f6fa;
  border: 2px solid #1f6bbd;
}

.accordion_icon,
.accordion_icon span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}

.accordion_icon {
  position: absolute;
  right: 2px;
  top: 35%;
  width: 20px;
  height: 20px;
}

.accordion_icon span {
  position: absolute;
  left: 6px;
  width: 50%;
  height: 2px;
  background-color: #1f6bbd;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -ms-border-radius: 4px;
  -moz-border-radius: 4px;
  -o-border-radius: 4px;
}

.accordion_icon span:nth-of-type(1) {
  top: 5px;
  transform: rotate(0deg);
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
}

.accordion_icon span:nth-of-type(2) {
  top: 5px;
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
}

/*＋、－切り替え*/
.accordion_icon.active span:nth-of-type(1) {
  display: none;
}

.accordion_icon.active span:nth-of-type(2) {
  top: 5px;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
}

aside#sidebar {
  text-align: left;
}

@media screen and (max-width: 768px) {
  aside#sidebar {
    width: 100%;
  }

  aside#sidebar .bnr,
  aside#sidebar .btn,
  aside#sidebar .sbtn {
    width: 94%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
}

aside#sidebar h2,
aside#sidebar .ttl h3,
.ttl aside#sidebar h3 {
  font-size: 18px;
  color: #1f6bbd;
  font-weight: bold;
  margin-bottom: 8px;
}

aside#sidebar h3 {
  background: url(../images/common/ic_maru.png) 12px 15px no-repeat #f2f2f2;
  background-size: 10px 10px;
  font-size: 15px;
  font-weight: bold;
  padding: 10px 10px 10px 25px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  border-bottom: 1px solid #1f6bbd;
}

aside#sidebar .sidenav>ul {
  margin-bottom: 30px;
}

aside#sidebar .sidenav>ul>li {
  font-weight: bold;
  padding: 0px;
  border-bottom: 1px solid #ddd;
}

aside#sidebar .sidenav li>div {
  cursor: pointer;
  position: relative;
  padding: 10px;
}

aside#sidebar .sidenav li>div h4 {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  font-weight: bold;
}

aside#sidebar .sidenav li>div h4:hover {
  color: #1f6bbd;
}

aside#sidebar .sidenav>ul>li li a {
  background: url(../images/common/dot.jpg) left bottom repeat-x;
  padding: 5px;
  margin-left: 10px;
  color: #333;
  display: block;
  font-size: 12px;
}

aside#sidebar .sidenav>ul>li li a:hover {
  background-color: #f4f4f4;
}

aside#sidebar .sidenav>ul>li li:last-child a {
  background: none;
}

aside#sidebar .sidenav>ul>li li:last-child a:hover {
  background-color: #f4f4f4;
}

aside#sidebar .sidenav .child {
  display: none;
  margin-bottom: 15px;
}

.note {
  width: 100%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  overflow: hidden;
  background: #f1f1f1;
  padding: 15px;
  margin-top: 40px;
}

.note dt {
  font-weight: bold;
  margin-bottom: 5px;
}

.note dd {
  font-size: 12px;
  margin-bottom: 10px;
  line-height: 160%;
}

#subMenu {
  margin-bottom: 30px;
}

#subMenu li {
  width: 19.8%;
}

#subMenu li a {
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  border-radius: 0;
}

#subMenu li a:hover {
  background: #1f6bbd;
  color: #fff;
}

#content-main .container .rinen {
  font-size: 18px;
  color: #1f6bbd;
  font-weight: bold;
  text-align: center;
  margin: 50px 0 70px;
}

#conGreeting .name {
  text-align: right;
  margin-bottom: 30px;
}

#conGreeting figure img {
  width: 100%;
  height: auto;
}

#conHistory dl {
  width: 100%;
  overflow: hidden;
  position: relative;
  background: url(../images/company/line.jpg) 5px top repeat-y;
}

#conHistory dl dt {
  position: absolute;
  background: url(../images/company/bg_his.jpg) left center no-repeat;
  background-size: 14px 43px;
  padding: 10px 0px 10px 20px;
  top: 0px;
  left: 0;
  width: 10%;
}

#conHistory dl dd {
  margin-left: 15%;
  padding: 10px;
  width: 85%;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  overflow: hidden;
  border-bottom: 1px solid #ddd;
}

#conHistory dl dd span {
  width: 8%;
  display: block;
  float: left;
  line-height: 180%;
  font-weight: bold;
}

#conHistory dl dd p {
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  #conHistory dl {
    background: none;
    margin-bottom: 20px;
  }

  #conHistory dl dt {
    position: static;
    border-bottom: 1px solid #1f6bbd;
    width: 100%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
  }

  #conHistory dl dd {
    margin-left: 0px;
    width: 100%;
  }

  #conHistory dl dd span {
    width: 12%;
  }
}

#conAccess .access {
  margin-bottom: 50px;
}

#conAccess .access dl {
  padding: 20px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  width: 49%;
  background: #f1f1f1;
}

#conAccess .access dl dt {
  color: #1f6bbd;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
}

#conAccess .access dl dd p {
  line-height: 140%;
}

#conAccess .access ul {
  margin-top: 20px;
}

#conAccess .access ul li {
  font-size: 13px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  #conAccess .access {
    display: block;
  }

  #conAccess .access dl {
    width: 100%;
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 768px) {
  #conAccess figure img {
    width: 100%;
    height: auto;
  }
}

#conKiji .txt {
  width: 76%;
}

#conKiji figure {
  width: 20%;
}

.txt-list {
  margin-top: 30px;
}

.txt-list li {
  margin-bottom: 20px;
}

.txt-list li span {
  font-weight: bold;
  display: block;
  font-size: 16px;
  margin-bottom: 5px;
}

.txt-list li:nth-child(1) span:before {
  content: "1. ";
}

.txt-list li:nth-child(2) span:before {
  content: "2. ";
}

.txt-list li:nth-child(3) span:before {
  content: "3. ";
}

.txt-list li:nth-child(4) span:before {
  content: "4. ";
}

.txt-list li:nth-child(5) span:before {
  content: "5. ";
}

.txt-list li:nth-child(6) span:before {
  content: "6. ";
}

.txt-list li:nth-child(7) span:before {
  content: "7. ";
}

.txt-list li:nth-child(8) span:before {
  content: "8. ";
}

.txt-list li:nth-child(9) span:before {
  content: "9. ";
}

.txt-list li:nth-child(10) span:before {
  content: "10. ";
}

.txt-list li:nth-child(11) span:before {
  content: "11. ";
}

.txt-list li:nth-child(12) span:before {
  content: "12. ";
}

.txt-list li:nth-child(13) span:before {
  content: "13. ";
}

.txt-list li:nth-child(14) span:before {
  content: "14. ";
}

.txt-list li:nth-child(15) span:before {
  content: "15. ";
}

.txt-list li:nth-child(16) span:before {
  content: "16. ";
}

.pri-dl {
  margin-top: 20px;
  background: #f1f1f1;
  padding: 0px 20px 20px;
}

.pri-dl dt {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
  padding-top: 20px;
}

.pri-dl dd {
  line-height: 160%;
}

.pri-dl dd span {
  display: block;
  font-weight: bold;
  margin-top: 15px;
}

.pri-dl2 {
  margin-top: 20px;
  padding: 0px 20px 0px;
}

.pri-dl2 dt {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
  padding-top: 20px;
}

.pri-dl2 dt+dd {
  margin-bottom: 15px;
}

.pri-dl2 dd {
  line-height: 160%;
  margin-bottom: 5px;
  margin-left: 15px;
}

.pri-dl2 dd span {
  display: block;
  font-weight: bold;
  margin-top: 15px;
}

.container .sem-list li {
  margin-bottom: 30px;
  border: 1px solid #ccc;
  padding: 15px;
}

.container .sem-list li figure {
  float: left;
  margin: 0px 20px 20px 0;
}

.container .sem-list li h4 {
  font-weight: bold;
  font-size: 18px !important;
  margin-bottom: 15px !important;
  margin-top: 15px !important;
  padding: 0 !important;
  text-decoration: underline;
  background: none !important;
}

.container .sem-list li h4:hover {
  text-decoration: none;
}

.container .sem-list li p {
  font-size: 12px;
  line-height: 140% !important;
}

.container .sem-list li p span {
  display: inline-block;
  background: #1f6bbd;
  margin-left: 10px;
  color: #fff;
  padding: 3px 10px;
  font-size: 14px;
  font-weight: 600;
}

.container .sem-list li .note {
  margin-top: 20px;
  position: relative;
}

.container .sem-list li .note span.status {
  background: #1f6bbd;
  color: #fff;
  padding: 2px 10px;
  position: absolute;
  right: 20px;
  top: 20px;
}

.year {
  margin: 20px 0;
  padding: 10px;
  background: #f1f1f1;
}

.year li {
  float: left;
  display: inline-block;
  margin-right: 15px;
}

.seminer_archive {
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -moz-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -moz-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.seminer_archive p {
  margin-top: 15px;
}

.seminer_archive li {
  float: left;
  margin: 0px 10px;
}

.ibtn {
  border: none;
  cursor: pointer;
  margin-bottom: 40px;
  font-weight: bold;
  font-size: 16px;
  text-align: center;
  background: #1f6bbd;
  padding: 10px 20px;
  color: #fff;
}

#conSeminar .inner h3 {
  font-size: 16px;
  font-weight: bold;
  margin-top: 30px;
  border-left: 3px solid #1f6bbd;
  padding: 10px;
}

#conSeminar .inner h3 span {
  font-size: 14px;
  font-weight: normal;
}

#conSeminar .inner h4 {
  font-size: 14px;
  font-weight: bold;
  margin-top: 20px;
  background: #f1f1f1;
  padding: 10px;
}

.subt {
  font-weight: bold;
  color: #1f6bbd;
}

.iframe {
  border: 2px solid #ddd;
  margin-top: 20px;
  padding: 10px;
  padding-right: 0px;
}

.wS {
  width: 30%;
}

.wM {
  width: 50%;
}

.wL {
  width: 97%;
}

.wSS {
  width: 15%;
}

#content-main .submit p {
  text-align: center;
  margin-bottom: 20px;
}

#content-main .submit input[type="submit"] {
  background: #1f6bbd;
  width: 30% !important;
  font-size: 16px;
  padding: 10px 20px;
  border-style: none;
  color: #fff;
}

#content-main .submit input[type="reset"] {
  background: #fff;
  width: 30% !important;
  font-size: 16px;
  padding: 10px 20px;
  border: 1px solid #ccc;
}

.tel {
  padding: 15px;
  margin: 20px 5px;
  border: 1px solid #ccc;
}

.tel a {
  font-size: 18px;
  font-weight: bold;
}

.container .catch {
  font-size: 16px !important;
  color: #1f6bbd;
  font-weight: bold;
  line-height: 150% !important;
  margin-bottom: 20px;
}

#conReason li,
#conTraining li {
  text-align: left;
  width: 100%;
}

#conReason span,
#conTraining span {
  display: block;
  margin: 15px 0;
}

#conReason p,
#conTraining p {
  margin: 5px 15px;
  line-height: 160%;
  color: #666;
}

#conSeminar p {
  margin-bottom: 15px;
}

#conSolution li {
  margin-bottom: 30px;
}

#conSolution .inner div {
  position: static;
  display: block;
  width: auto;
  height: auto;
  opacity: 1;
  background-color: #fff;
}

#conSolution .inner div p {
  color: #333 !important;
  line-height: 140%;
  padding-top: 10px;
}

#conTraining figure {
  margin-bottom: 20px;
}

#conTraining dl {
  margin: 15px 15px 5px;
}

#conTraining dl dt {
  font-weight: bold;
  color: #1f6bbd;
  margin-top: 10px;
  font-size: 16px;
}

.base-list li {
  font-size: 16px;
  background: #f1f1f1;
  padding: 20px;
}

.base-list p {
  overflow: hidden;
  padding: 5px 20px;
}

.base-list li:nth-child(1):before {
  content: "1";
}

.base-list li:nth-child(2):before {
  content: "2";
}

.base-list li:nth-child(3):before {
  content: "3";
}

.base-list li:nth-child(4):before {
  content: "4";
}

.base-list li:nth-child(5):before {
  content: "5";
}

.base-list li:nth-child(6):before {
  content: "6";
}

.base-list li:nth-child(7):before {
  content: "7";
}

.base-list li:nth-child(8):before {
  content: "8";
}

.base-list li:nth-child(9):before {
  content: "9";
}

.base-list li:nth-child(10):before {
  content: "10";
}

.base-list li:before {
  font-size: 16px;
  color: #fff;
  font-weight: bold;
  background: #1f6bbd;
  padding: 5px 0px;
  display: block;
  width: 40px;
  border-radius: 20px;
  text-align: center;
  float: left;
}

.flow {
  margin-top: 10px;
}

.flow li {
  width: 26%;
  position: relative;
}

.flow li:after {
  content: ">";
  position: absolute;
  top: 40px;
  right: 5px;
}

.flow li:last-child {
  width: 22%;
  color: #c80000;
}

.flow li:last-child div {
  background: #fffedf;
}

.flow li:last-child:after {
  content: none;
}

.flow li div {
  width: 90%;
  padding: 15px 15px 15px;
  border: 2px solid #1f6bbd;
  border-radius: 6px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  height: 100%;
  font-weight: bold;
}

.flow li div span {
  background: #c80000;
  color: #fff;
  display: inline-block;
  margin: 10px auto 0;
  padding: 3px 5px;
}

.flow li:nth-child(1) {
  margin-top: 35px;
}

.flow li:nth-child(2) {
  margin-top: 20px;
}

.flow li:nth-child(3) {
  margin-top: 5px;
}

.flow li:nth-child(4) {
  margin-top: -10px;
}

.solmain {
  position: relative;
}

.solmain figcaption {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 20px;
  font-weight: bold;
  background: #1f6bbd;
  padding: 15px;
  display: inline-block;
  color: #fff;
}

#conAsse .flex .left {
  width: 50%;
}

#conAsse .flex figure {
  width: 45%;
}

.pmb10 p {
  margin-bottom: 10px;
}

#conSolutionDetail,
#conSolutionEx {
  padding-bottom: 0px;
}

#conSolutionDetail h4,
#conSolutionEx h4 {
  font-weight: bold;
  font-size: 18px;
  color: #1f6bbd;
  border-bottom: 1px solid #ccc;
  padding: 10px 10px;
  margin-top: 30px;
  margin-bottom: 10px;
}

#conSolutionDetail p,
#conSolutionEx p {
  margin-bottom: 10px;
}

#conSolutionEx {
  text-align: left;
}

.kadai {
  margin-top: 0px;
}

.kadai li {
  background: url(../images/common/ic_comment.png) 10px 10px no-repeat #eee;
  background-size: 16px 16px;
  width: 49%;
  font-size: 16px;
  font-weight: bold;
  padding: 15px 15px 15px 30px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  margin-top: 10px;
}

.example {
  margin-top: 0px;
}

.example li {
  width: 32%;
  border: 2px solid #1f6bbd;
  border-radius: 6px;
  margin: 0.5%;
  padding: 15px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  margin-top: 8px;
}

.example li dt {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 5px;
}

@media screen and (max-width: 768px) {
  .example li {
    width: 49%;
  }
}

.contact {
  margin: 30px 0 50px;
}

.contact dl {
  width: 48%;
  background: #eee;
  padding: 20px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

.contact dl dt {
  font-size: 18px;
  font-weight: bold;
  color: #1f6bbd;
  margin-bottom: 10px;
}

.contact dd.txt {
  text-align: center !important;
  margin-top: 15px;
}

.contact .btn,
.contact .sbtn {
  width: 70%;
  margin: 10px auto;
}

.contact .btn a,
.contact .sbtn a {
  background-color: #fff;
}

.contact .btn a:hover,
.contact .sbtn a:hover {
  background-color: #1f6bbd;
  color: #fff;
}

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

  .contact .btn,
  .contact .sbtn {
    width: 96%;
  }
}

.contact .telnum {
  margin: 20px 0;
}

.contact .telnum span {
  font-size: 24px;
  font-weight: bold;
  color: #1f6bbd;
}

@media screen and (max-width: 1080px) {
  .contact dl {
    width: 90%;
    margin: 10px auto;
  }
}


/*=============================
   Partner Page CSS
===============================*/
.catchcopy {
  margin-top: 30px;
  margin-bottom: 50px;
}

.catchcopy p span {
  color: #1f6bbd;
}

h2.wanted,
.ttl h3.wanted {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: bold;
}

/* table */
table.partner {
  margin: 0 auto;
  border: none;
  width: 100%;
  border-collapse: collapse;
  margin-top: 10px;
  margin-bottom: 30px;
  line-height: 1.6;
  border: 1px solid #ddd;
}

table.partner th {
  line-height: 180%;
  text-align: left;
  font-size: 13px;
  color: #FFF;
  padding: 15px 10px 10px 20px;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  vertical-align: middle;
  width: 20%;
  font-weight: 600;
  background-color: #1f6bbd;
}

table.partner td {
  line-height: 180%;
  text-align: left;
  font-size: 14px;
  color: #333;
  padding: 8px 10px 12px 16px;
  border: 1px solid #ddd;
  color: #666;
  vertical-align: middle;
}

table.partner td dl dt {
  margin-top: 10px;
}

table.partner td dl dt:before {
  content: "■";
  color: #1f6bbd;
  font-size: 80%;
}

table.partner td li {
  margin-top: 10px;
}

table.partner td li:before {
  content: "・";
  color: #1f6bbd;
  font-size: 80%;
}

/* contact */
.contactform {
  margin-top: 43px;
  margin-bottom: 90px;
  display: flex;
  background: #f1f1f1;
  padding: 15px;
}

/* contact form */
.contactform_btn {
  background-color: #39A0D3;
  text-align: center;
  padding: 20px;
  width: 50%;
  margin: 0 auto;
  margin-top: 2em;
}

.contactform_btn a {
  color: #FFFFFF;
  font-weight: bold;
}

.contactform_btn:hover {
  background-color: #999999;
}

/* contact tel */
.contacttel {
  margin-top: 15px;
  margin-right: 45px;
  margin-left: 25px;
}

.n001 {
  width: 15%;
}

.n002 {
  width: 40%;
}

.n003 {
  width: 70%;
}

.square_btn {
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  background: #668ad8;
  /*ボタン色*/
  color: #FFF;
  border-radius: 3px;
  height: 40px;
  font-size: 16px;
  margin: auto;
  border: none;
}

.square_btn:active {
  /*ボタンを押したとき*/
  -ms-transform: translateY(1px);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  /*下に動く*/
  border-bottom: none;
  /*線を消す*/
}

.center {
  text-align: center !important;
  margin: 10px 0;
}

table.form input[type="text"],
table.form input[type="email"] {
  background: #f1f1f1;
  border: none;
  padding: 10px;
  border: 1px solid #ececec;
}

/*=============================
   Recruit Page CSS
===============================*/
#message,
selectionflow {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 100%;
  padding-bottom: 40px;
}

#applicationrequirements {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 100%;
  padding-bottom: 60px;
}

.ttl {
  text-align: left;
  margin-bottom: 30px;
}

.ttl h3 {
  font-size: 24px;
  font-weight: bold;
}

.ttl h3:before {
  content: " ";
  width: 100px;
  height: 2px;
  background: #1f6bbd;
  display: block;
  margin-bottom: 20px;
}

.ttl h3 span {
  margin-left: 37em;
  margin-left: 34em;
  font-size: 15px;
}

p.mainfollow {
  font-weight: bold;
  margin-top: auto;
  margin-bottom: 30px;
  width: 42%;
  overflow: hidden;
  float: left;
}

/*  requirements  */
#tab {
  width: 100%;
  margin-top: 25px;
  margin-bottom: 0.5em;
}

#tab ul {
  width: 600px;
}

#tab li {
  width: 33%;
  float: left;
}

#tab li a {
  display: block;
  line-height: 50px;
  text-align: center;
  font-size: 15px;
  font-weight: 700;
  border: #ccc 1px solid;
  border-radius: unset;
  border-right: 1px;
}

#tab li:nth-child(3) {
  border-right: #ccc 1px solid;
}

#tab li a:hover {
  color: #FFFFFF;
  background-color: #1f6bbd;
}

/*  tabBox  */
#tab1,
#tab2,
#tab3 {
  width: 100%;
  margin-top: 25px;
  text-align: left;
}

#tab1 span {
  font-weight: 700;
}

#tab2 span {
  font-weight: 700;
}

#tab3 span {
  font-weight: 700;
}

#tav div {
  display: block;
}

#tab1 {
  display: block;
}

#tab2 {
  display: none;
}

#tab3 {
  display: none;
}

/* main selection follow  */
#selection {
  width: 100%;
  display: inline-flex !important;
  flex-direction: row;
  justify-content: space-evenly;
  margin-right: 40px;
}

p.flow {
  width: 83px;
  color: #FFFFFF;
  font-weight: bold;
  text-align: center !important;
  padding: 30px;
  margin-right: 10px;
  justify-content: space-evenly;
  background-image: url(../images/recruit/recruit.png);
  background-repeat: no-repeat;
  background-position-y: 13px;
}

p.flow:nth-child(2) {
  width: 90px;
  padding-top: 1.4em;
}

.selectioncatchcopy {
  width: 90%;
  margin: 0 auto;
}

.catchcopyselection {
  margin-top: 20px;
  margin-bottom: 60px;
  text-align: center;
}

p.application {
  width: 95%;
  text-align: center !important;
}

p.application span {
  font-weight: bold;
}

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

  /*=============================
     Partner Page 
  ===============================*/
  .catchcopy {
    margin-top: 10px;
    margin-bottom: 35px;
  }

  h2.wanted,
  .ttl h3.wanted {
    font-size: 18px;
  }

  /* table */
  table.partner td dl dt {
    margin-top: 8px;
  }

  table.partner td li {
    margin-top: 8px;
  }

  /* contact form */
  .contactform {
    display: none;
    margin-bottom: auto;
  }

  /* contact tel */
  .contacttel {
    margin-bottom: 30px;
  }

  /*=============================
     Recruit Page
  ===============================*/
  #message,
  .selectionflow {
    padding-bottom: 20px;
  }

  #applicationrequirements {
    padding-bottom: 35px;
  }

  .applicationrequirements {
    padding-left: 2%;
    padding-right: 2%;
  }

  .selectionflow {
    padding-left: 2%;
    padding-right: 2%;
  }

  .ttl h3 span {
    margin-left: 24em;
    font-size: 14px;
  }

  /* tab */
  #tab li a {
    line-height: 45px;
    font-size: 14px;
  }

  /* main selection follow  */
  #selection {
    width: 96%;
    margin-bottom: -2em;
  }

  p.flow {
    width: 100%;
    margin-right: -20px;
    background-size: 100%;
  }

  p.flow:nth-child(2) {
    width: 100%;
    font-size: 13px;
  }

  .selectioncatchcopy {
    width: 100%;
    margin-top: 30px;
    margin-bottom: 60px;
  }
}

/* netsp  */
.calculam dl {
  width: 33%;
  border: 1px solid #eee;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  padding: 2%;
  text-align: left;
}

.calculam dl dt {
  background: #1f6bbd;
  color: #fff;
  padding: 10px;
  margin-bottom: 10px;
}

.calculam dl dd {
  font-size: 12px;
  line-height: 180%;
}

.netsp-list li {
  border: 4px solid #eee;
  padding: 20px;
  padding-bottom: 10px;
  margin-bottom: 20px;
}

.netsp-list dl {
  width: 76%;
  text-align: left;
  margin-bottom: 20px;
}

.netsp-list dl dt {
  margin-bottom: 10px;
  line-height: 180%;
  font-weight: bold;
}

.netsp-list dl dt span {
  display: block;
  font-size: 20px;
  color: #1f6bbd;
}

.netsp-list dl dd {
  font-size: 13px;
  line-height: 160%;
}

.netsp-list figure {
  width: 20%;
}

.netsp-list figure img {
  width: 100%;
  height: auto;
}

.container h4 {
  font-size: 20px;
  color: #1f6bbd;
  font-weight: bold;
  padding: 10px;
  margin-bottom: 15px;
  margin-top: 20px;
  background: #f4f4f4;
}

.con {
  font-size: 11pt;
}

.course {
  margin-bottom: 40px;
}

.course dl {
  width: 32%;
  padding: 15px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  border-radius: 6px;
  background: #f1f1f1;
  text-align: left;
}

.course dl dt {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 6px;
}

.course dl dt span {
  color: #fff;
  background: #1f6bbd;
  border-radius: 6px;
  display: block;
  font-size: 14px;
  padding: 3px 10px;
  margin-bottom: 6px;
}

.course dl dd {
  line-height: 160%;
}

.tbl-base thead th,
.tbl-form thead th {
  background: #1f6bbd;
  color: #fff;
  width: 25%;
}

.tbl-base thead td,
.tbl-form thead td {
  background: #3682d4;
  color: #fff;
}

.mb15 {
  margin-bottom: 15px;
}

.base-list {
  margin-top: 15px;
}

.base-list li {
  background: #f1f1f1;
  padding: 20px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  line-height: 160%;
  text-align: left;
  margin-bottom: 10px;
}

/* faq  */
#faq dl {
  margin-top: 25px;
  background: #f6f6f6;
  padding: 25px;
}

#faq dt {
  font-size: 18px;
  font-weight: bold;
}

.faq dt {
  display: block;
  cursor: pointer;
}

.faq dt:hover {
  color: #1f6bbd;
}

.faq dd {
  margin-top: 20px;
}

.faq dt:before {
  content: "Q";
  background: #1f6bbd;
  color: #fff;
  font-size: 14px;
  border-radius: 50px;
  line-height: 30px;
  padding: 0px 10px;
  margin-right: 5px;
  display: inline-block;
}

#conFaq .inner h4 {
  font-size: 20px;
  font-weight: bold;
  margin-top: 30px;
  padding: 10px;
  border-bottom: 1px solid #ccc;
  color: #1f6bbd;
}

#kiyaku p {
  margin-bottom: 20px;
}

#kiyaku dl {
  margin: 0px 0px 15px;
}

#kiyaku dl dt {
  font-weight: bold;
}

#kiyaku dl dd {
  line-height: 160%;
  margin: 0px 10px 0px;
}

.txt {
  margin-top: 35px;
  margin-bottom: 20px;
}

.txt p {
  margin: 0px 10px 10px;
}

.subttl {
  font-size: 16px;
  font-weight: bold;
  margin: 10px 0px;
  line-height: 160% !important;
}

.sponsor {
  font-size: 14px;
  background: #eee;
  padding: 10px;
  margin: 10px 0;
}

.contact-release {
  border: 1px solid #1f6bbd;
  padding: 15px;
}

.contact-release dt {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}

.contact-release dd {
  line-height: 160%;
}

.tabs {
  flex-wrap: nowrap;
  margin-bottom: 30px;
}

.tabs li {
  width: 100%;
}

.tabs li a {
  width: 100%;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  color: #333;
  display: block;
  font-weight: bold;
  background: #ddd;
}

.tabs li span {
  width: 100%;
  height: 100%;
  padding: 10px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  color: #fff;
  font-weight: bold;
  display: block;
  background: #1f6bbd;
}

#sitemap {
  padding-bottom: 60px;
}

#sitemap_list {
  border: 1px solid #ddd;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}

#sitemap_list>li {
  font-size: 14px;
  font-weight: 500;
  background: #fff;
  border-bottom: 1px solid #ddd;
  text-align: left;
}

#sitemap_list>li:last-child {
  border-bottom: none;
}

#sitemap_list>li>a {
  background-size: 10px;
  -webkit-background-size: 10px;
  -moz-background-size: 10px;
  padding: 15px 10px;
  color: #1f6bbd;
  font-size: 16px;
  display: block;
  text-decoration: none !important;
  font-weight: bold;
}

#sitemap_list>li>a:hover {
  background: #1f6bbd;
  background-size: 10px;
  -webkit-background-size: 10px;
  -moz-background-size: 10px;
  text-decoration: none;
  color: #fff;
}

#sitemap_list ul {
  padding-bottom: 20px;
}

#sitemap_list ul li {
  border: none;
  font-size: 14px;
  font-weight: normal;
  padding: 3px 0px 3px 50px;
  margin: 0px;
}

#sitemap_list ul li a {
  color: #1f6bbd;
}

.sidenav .child .new {
  font-size: 8px;
  background: #c80000;
  display: inline-block;
  padding: 1px 1px;
  height: 10px;
  line-height: 105%;
  margin-left: 5px;
  vertical-align: top;
  color: #fff;
}

.newslist .new {
  font-size: 10px;
  background: #c80000;
  display: inline-block;
  padding: 1px 1px;
  height: 12px;
  line-height: 105%;
  margin-right: 5px;
  vertical-align: top;
  color: #fff;
  width: auto;
  text-align: center;
  vertical-align: middle;
}

.cataloge-pri {
  width: 100%;
  height: 200px;
  overflow: auto;
  margin: 20px 0;
  border: 1px solid #ccc;
}

#conCatalogue li {
  padding: 8px;
  border-bottom: 1px solid #ccc;
}

#conMail .sample {
  border: 1px solid #ccc;
  padding: 20px;
}

#conMail .sample p {
  font-size: 13px;
  line-height: 130%;
}

/*# sourceMappingURL=style.css.map */

.ucc {
  font-size: 2em;
}

#koyo {}

#koyo tr {
  border-bottom: dashed 0.5px #AAA;
}

#koyo td {
  border: none;
  font-size: 1.3em;
}

#koyo td a {
  padding: auto;
}

.imag {
  width: 100px;
}

.cab {
  font-weight: bold;
  font-size: 14pt;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc {
  display: block !important;
}

.sp {
  display: none !important;
}

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block !important;
  }
}

.case-button {
  display: flex;
  justify-content: space-evenly;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.case-button-01:hover {
  background-position: 100% 0;
  moz-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
}

.case-button-01 a {
  color: #fff;
  height: 60px;
  font-size: 16px;
  font-weight: bold;
  display: block;
}

.case-button-01 {
  display: block;
  width: 45%;
  margin: 1%;
  border-radius: 10px;
  text-align: center;
  line-height: 4;
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  border: none;
  background-size: 150% 300%;
  background-image: linear-gradient(135deg, #5F16A8, #1f6bbd, #cc7db1);
  box-shadow: 3px 3px 3px #CED1D3;
}

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

  .case-button-01 a {
    font-size: 12px;
    line-height: 5;
  }
}

@media screen and (max-width: 768px) {
  .case-button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
  }

  .case-button-01 {
    font-size: 16px;
    font-weight: bold;
    width: 100%;
    margin: 1% auto;
  }
}

/* ----------------------------- pagenavi -----------------------------------*/

.wp-pagenavi {/* 全体 */
    margin: 20px 0;
    font-size: 12px;
}
.wp-pagenavi a {/* フォント色 */
    color: #4a4a4a;
}
.pages {/* 左の表記 */
    margin-right: 20px;
}
.wp-pagenavi .current,
.wp-pagenavi a.page {/* ボタン */
    margin: 0 6px 6px 0;
    display: inline-block;
    border: solid 1px #eee;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    line-height: 40px;
    text-align: center;
}
.wp-pagenavi .current {/* カレント数字 */
    border: none;
    background: #357AC3;
    color: #fff;
}
.wp-pagenavi a.page:hover {/* マウスオーバー */
    background: #357AC3;
    color: #fff;
}
.wp-pagenavi .first,
.wp-pagenavi .extend {/* ... */
    margin-right: 10px;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {/* 記号の削除 */
    display: none;
}
.wp-pagenavi a.first:hover {/* 【先頭】マウスオーバー時 */
	color: #357AC3;}
.wp-pagenavi a.last:hover {/* 【最後】マウスオーバー時 */
	color: #357AC3;}

/* ----------------------------- pagenaviここまで -----------------------------------*/