html, body, h1, h2, h3, h4, p {
	margin:  0;
	padding: 0;
}

h1, h2, h3, h4 {
	font-weight: normal;
}

html {
    font-size: 62.5%;
}

body {
    -webkit-text-size-adjust: 100%;
	max-width:1400px;
	margin:auto;
	background-color: #eee;
	min-width: 1000px;
}

ul, ol {
	margin:  0;
	padding: 0;
	list-style-type:none;
}

a {
	text-decoration: none;
	color: #000;
}

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

table {
    border-collapse:collapse;
    border-spacing:0;
}

td, th {
   padding:0;
}

a, a img , a div {
	-webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}
a img:hover, a:hover, a div:hover {
	filter:alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
}
nav li a:hover {
	filter:alpha(opacity=100);
	-moz-opacity: 1.;
	opacity: 1.0;
}

.clear:after, .column:after, .row:after {
	content:"";
	display: block;
	clear:both;
}

.left {
	float: left;
}

.right {
	float: right;
}

.content_bg {
	background: rgba(0, 0, 0, 0) url("../img/common/content_bg.jpg") no-repeat scroll top -3px center ;
}
.content {
	margin: 0 auto;
	width: 1000px;
}

.wrapper {
    min-width: 1000px;
	max-width: 1400px;
	background-color: #fff;
}

header {
	background: rgba(0, 0, 0, 0) url("../img/common/header_bg.jpg") no-repeat scroll top center ;
	box-sizing: border-box;
	height: 125px;
	position: relative;
	width: 100%;
}

header .row, header .row .row .right {
	height: 100%;
	position: relative;
}

header .row .row {
	width: 474px;
}

header .logo, header .tel, header .contact {
	position: relative;
	top: 50%;
}

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

header .tel {
	margin-top: -30px;
}

header .contact {
	display: block;
	margin-top: -23px;
}

header .privacy {
	bottom: 22px;
	left: 50%;
	margin-left: -45px;
	position: absolute;
}
/* ################################################################################ */
/* nav */
/* ################################################################################ */
nav {
	border: 1px solid #EAE9E9;
}

nav li {
	float: left;
	height: 60px;
	width: 200px;
}

nav li a {
	background-color: #FFF;
	background-image: url(../img/common/menu.png);
	display: block;
	height: 100%;
	overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
	width: 100%;
}

nav li a:hover /*, nav li.current a*/ {
	background-color: #004986;
}

nav li.home a {
	background-position: 0 0;
}
nav li.home a:hover, nav li.home.current a {
	background-position: 0 -60px;
	background-color: #004986;
	background-image: url(../img/common/menu_on.png);
}

nav li.service a {
	background-position: -200px 0;
}
nav li.service a:hover, nav li.service.current a {
	background-position: -200px -60px;
	background-color: #004986;
	background-image: url(../img/common/menu_on.png);
}

nav li.company a {
	background-position: -400px 0;
}
nav li.company a:hover, nav li.company.current a {
	background-position: -400px -60px;
	background-color: #004986;
	background-image: url(../img/common/menu_on.png);
}

nav li.recruite a {
	background-position: -600px 0;
}
nav li.recruite a:hover, nav li.recruite.current a {
	background-position: -600px -60px;
	background-color: #004986;
	background-image: url(../img/common/menu_on.png);
}

nav li.contact a {
	background-position: -800px 0;
}
nav li.contact a:hover, nav li.contact.current a {
	background-position: -800px -60px;
	background-color: #004986;
	background-image: url(../img/common/menu_on.png);
}

.header_img {
	background: rgba(0, 0, 0, 0) url("../img/common/category_bg.jpg") no-repeat scroll center center / cover ;
	box-sizing: border-box;
	height: 190px;
	padding-top: 60px;
	text-align: center;
	width: 100%;
}

.breadcrumb {
	background-color: #f9f7f7;
	border-bottom: 1px solid #EAE9E9;
	height: 25px;
	width: 100%;
}

.breadcrumb p {
	font-size: 1.1rem;
	line-height: 25px;
	text-align: right;
	overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}

.wrapper > .content,
.wrapper > .content_bg .content{
	padding-bottom: 150px;
	padding-top: 35px;
}

.side {
	float: left;
	width: 250px;
}

.main {
	float: right;
	width: 700px;
}


h3.page_title {
	background-color: #3EB1B3;
	background-image: url(../img/common/h3_bg.png);
	background-position: left 8px center;
	background-repeat: no-repeat;
	color: #FFF;
	font-size: 2.1rem;
	height: 43px;
	line-height: 43px;
	padding-left: 60px;
	margin-bottom: 35px;
}
h3.page_title a {
	color: #f6f6f6;
	display: block;
	float: right;
	text-align: right;
	font-size: 70%;
	padding: 0 20px;
	background-color: #217260;
}
h3.page_title a:after {
	clear: both;
}

.side h3 {
	background-color: #3EB1B3;
	color: #FFF;
	font-size: 1.6rem;
	height: 43px;
	line-height: 43px;
	padding-left: 15px;
}

.side li {
	background-color: #F6F2F0;
	border-bottom: 1px solid #dcdcdc;
	height: 40px;
	position: relative;
	width: 100%;
}

.side li a {
	box-sizing: border-box;
	display: block;
	font-size: 1.4rem;
	height: 100%;
	line-height: 40px;
	padding-left: 14px;
	width: 100%;
}

.side li.sub a {
	padding-left: 35px;
}

.side .banner {
	display: block;
	margin-top: 40px;
}

.side .banner img {
	height: auto;
	width: 250px;
}


.custom_object_fit {
	position: relative;
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
}

.custom_object_fit .object-fit {
	opacity: 0;
}

/* ################################################################################ */
/* トップページ */
/* ################################################################################ */
/*.toppage {
	background-image:url(../img/top/topImg.jpg);
	background-position:top center;
	background-repeat: no-repeat;
	width: 100%;
	min-width:1000px;
}
.toppage .content {
	padding-top:40px;
}
.topImg {
	width: 1000px;
	height: 481px;
	margin:auto;
	text-align: center;
	overflow:hidden;
	position: relative;
}
.topImg img {
	margin-left: -200px;
}*/


.c-header__image, #main_slider .slide {
  height: 481px;
}

.c-header__image {
  position: relative;
  /*border-bottom: 5px solid #744F27;*/
}

.c-header__image .text {
  left: 0;
  right: 0;
  top: 48%;
  z-index: 2;
  margin: 0 auto;
  position: absolute;
  text-align: center;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
          font-family: kozuka-mincho-pro, serif;
          /*font-family: "游明朝体","Yu Mincho",YuMincho,"ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HG明朝E","ＭＳ Ｐ明朝","MS PMincho",serif;*/
}

.c-header__image .text h1 {
  font-size: 75px;
  line-height: 1.2;
  font-weight: 300;
font-style: normal;
letter-spacing: -7px;
  /*color: #fff;
    text-shadow: 1px 2px 10px rgb(0 0 0 / 80%);*/
}
.c-header__image .text h1 span {
	font-size: 60px;
}
.c-header__image .text h1 small {
	font-size: 60px;
	letter-spacing: -27px;
}

/*end header_image top page*/

.toppage .content {
	padding-top:40px;
}
.topBnrBox {
	width:1000px;
	padding-top:40px;
	margin-left:-8px;
	margin-bottom: 60px;
	padding-bottom: 60px;
	margin:auto;
}
.toppage .inBox {
	padding-top: 40px;
	margin-bottom: 20px;
}
.toppage .inBox .left,
.toppage .inBox .right {
	/*width: 292px;*/
	width: 29.2%;
	padding: 10px 20px 0;
	text-align: center;
	border-left: 1px solid #aaa;
}
.toppage .inBox .right {
	border-right: 1px solid #aaa;
}
.toppage .inBox .left strong,
.toppage .inBox .right strong {
	display: block;
	color: #1e2c5c;
	margin-bottom: 12px;
	font-size: 2.0rem;
}
.toppage .inBox .left div, .toppage .inBox .right div {
	/*height: 118px;*/
	height: 195px;
}
.toppage .inBox .left div img, .toppage .inBox .right div img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.toppage .top_keibi_1 img {
	/*margin-top: 8px;*/
}
.toppage .top_keibi_3 img {
	/*margin-top: 4px;*/
}
.toppage .inBox .left p,
.toppage .inBox .right p {
	color: #48494d;
	font-size: 1.3em;
	line-height: 1.7;
	margin-top: 6px;
}

.toppage h3 {
	margin-bottom: 0px!important;
}
.toppage .news dl {
	font-size:1.4rem;
	line-height:1.8;
	padding-top: 0px;
	margin-top: 0px;
}
.toppage .news dl:first-child {
	border-bottom: 1px solid #d8d8d8;
}
.toppage .news dl dt {
	float: left;
	width: 250px;
	color: #7e7e7e;
	padding:12px 0;
	border-top: 1px dotted #ccc;
}
.toppage .news dl dd {
	overflow: hidden;
	padding:12px 0;
	border-top: 1px dotted #ccc;
}
.toppage .news dl a {
	display: block;
	color: #282828;
	text-decoration: none;
}
.toppage .news dl a:hover{
	background-color: #ddd;
	filter:alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
}
.toppage .news span {
	float: right;
	display: block;
	width:120px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	padding: 0 6px;
	text-align: center;
	margin-right: 14px;
	background-color: #666; /* 225795 */
	color: #f6f6f6;
	font-size: 84%;
}
/* ################################################################################ */
/* ブログ */
/* ################################################################################ */
.blog h4 {
	font-size: 2.0rem;
}
.blog .date {
	margin-bottom: 20px;
	margin-top: 8px;
}
.blog .blog_name {
	display: inline;
	padding: 6px 10px 6px 10px;
	background-color: #666;
	color: #f6f6f6;
	font-size: 120%;
}
.blog .text {
	margin-top: 40px;
	margin-bottom: 40px;
	font-size: 1.4rem;
}
.other_blog .left {
	margin-right: 20px;
}
.other_blog a {
	margin-bottom: 20px;
}

.blog .dtl .back {
	text-align: right;
	margin-top: 40px;
}
.blog .dtl .back a {
    font-size: 13px;
    padding: 12px 30px;
    text-align: center;
    text-decoration: none;
    background-color: #ccc;
}


.sideBlgBox {
	font-size: 1.3rem;
}
.sideBlgBox .imgBox {
	height: 200px;
	margin-top: 30px;
	margin-bottom: 10px;
	overflow: hidden;
}
.sideBlgBox .imgBox img {
	margin-top: -25px;
	margin-bottom: 6px;
}
.sideBlgBox p.date {
	margin-bottom: 0px;
}
.sideBlgBox strong {
	display: block;
	padding-bottom: 16px;
	border-bottom: 1px dotted #ccc;
}


.blog.list .left {
	margin-right: 32px;
}
.blog.list .blogBox {
	width: 312px;
}
.blog.list .imgBox {
	height: 250px;
	margin-bottom: 10px;
	overflow: hidden;
}
.blog.list .imgBox img {
	margin-top: -27px;
}
.blog.list .blogBg {
	font-size: 1.4rem;
	margin-bottom: 32px;
}
.blog.list .blogBg p {
	display: block;
	width: 100px;
	padding-top: 4px;
	float: left;
}
.blog.list .blogBg span {
	display: block;
	float: right;
	padding: 4px 10px 2px 10px;
	margin-bottom: 10px;
	background-color: #666;
	color: #f6f6f6;
	font-size: 90%;
}
.blog.list .blogBg strong {
	display: block;
	clear: both;
}

footer .inner {
	 width:1000px;
	 height:254px;
	 position:relative;
	 margin:auto;
}


.ftTxt {
	text-align:left;
	color:#eee;
	font-size:12px;
	line-height:280%;
	
	border-left:1px solid #999;
	padding:0 20px;
	
	position:absolute;
	top:40px;
	left:0;
}
.ftTxt a {
	color:#ccc;
}
.ftCnt {
	width:298px;
	text-align:left;
	color:#999;
	font-size:12px;
	position:absolute;
	top:40px;
	right:0;
}

.ftCnt a {
	display: block;
	margin-top: 20px;
}

.cpIf {
	font-size:1.6rem;
	line-height: 1.8;
	color:#bbb;
	text-align:left;
	position:absolute;
	bottom:50px;
	left:200px;
}
.cpy {
	font-size: 12px;
	padding: 20px 0;
	color: #79797a;
	background-color: #0b2d4d;
	width: 100%;
	min-width:1000px;
}

/* ################################################################################ */
/* table */
/* ################################################################################ */
table {
	width: 100%;
	margin-bottom: 70px;
}
th, td {
	background-color: #e7f6f6;
	box-sizing: border-box;
	color: #656565;
	font-size: 1.4rem;
	line-height: 1.8;
	padding: 12px 20px;
	vertical-align: top;
}
tr:nth-child(2n) th, tr:nth-child(2n) td {
	background-color: transparent;
}
tr:first-child td {
	height: 50px;
}
th {
	text-align: left;
}
th span, td span {
	font-size: 1.0rem;
	font-weight: normal;
}
td span label span {
	color: #656565;
}
th .remark {
	font-size: 1.0rem;
	font-weight: normal;
}

table.history th {
	padding-right: 0px;
}
table.history td.month {
	width: 70px;
	padding-left: 0px;
	font-weight: bold;
	text-align: right;
}

/* ################################################################################ */
/* 業務案内 */
/* ################################################################################ */
.left {
	float: left;
}
.right {
	float: right;
}
.clear {
	clear: both;
}
h4 {
	font-size: 1.6rem;
	font-weight: bold;
	padding-bottom: 6px;
	margin-bottom: 10px;
	border-bottom: 3px solid #c9c9c9;
}
.business .inBox {
	margin-bottom: 40px;
}
.business .left {
	width: 190px;
	/*padding: 20px 0 30px 0;*/
	text-align: center;
	/*background-color: #a6d7d6;*/
}

.business .left strong {
	display: block;
	color: #1e2c5c;
	margin-bottom: 12px;
	font-size: 1.8rem;
}
.business .right {	
	width: 475px;
}
.business .right p {
	color: #444;
	font-size: 1.4rem;
	line-height: 1.7;
}

.business .left div, .business .right div {
	height: 150px;
}
.business .left img, .business .right img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.ie_s {
	font-size: 1.4rem;
	opacity: 0;
}

table.in_table {
	width: 274px;
	margin: 0;
	padding: 0;
}
table.in_table tr, table.in_table td {
	height:1px !important;
}
table.in_table td {
	padding: 0;
	margin: 0;
	padding-right: 0;
}
table.in_table td.td_right {
	text-align: right;
	padding-left: 0;
}

.about-profile .boximg img {
	width: 100%;
}
.about-profile .boxtext {
	padding: 42px 0 85px;
}
.about-profile .boxtext p {
	font-size: 1.4rem;
	line-height: 2.5;
}
.about-profile .boxtext p.txtright {
	text-align: right;
	padding-top: 20px;
}

.sign_wrapper .boximg {
	margin-bottom: 30px;
}
.sign_wrapper .boximg img {
	width: 100%;
}

/*------------------------------------------------------------
     c-other
------------------------------------------------------------*/
#main_slider {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

#main_slider .slide {
  overflow: hidden;
  position: relative;
  opacity: 1 !important;
}

#main_slider .slide span {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  background: transparent no-repeat center center;
  -webkit-background-size: cover;
          background-size: cover;
  opacity: 0;
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
      transform: scale(1, 1);
  -webkit-transition: 0s;
  transition: 0s;
}

#main_slider .slide.slick-start span {
  opacity: 1;
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
      transform: scale(1, 1);
  -webkit-transition: ease 0s;
  transition: ease 0s;
}

#main_slider .slide.slick-active span {
  opacity: 1;
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
      transform: scale(1, 1);
  -webkit-transition: ease 10s;
  transition: ease 10s;
}

#main_slider .slide.slick-continue span {
  opacity: 0;
  -webkit-transform: scale(1.2, 1.2);
  -ms-transform: scale(1.2, 1.2);
      transform: scale(1.2, 1.2);
  -webkit-transition: ease 10s;
  transition: ease 10s;
}

/* --------------------------------------------------
      7. Slick
-------------------------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track::before, .slick-track::after {
  content: "";
  display: table;
}

.slick-track::after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-dotted.slick-slider {
  /*margin-bottom: 10px;*/
}

.slick-prev,
.slick-next {
  display: block;
  overflow: hidden;
  color: transparent;
  text-decoration: none;
  text-indent: 110%;
  white-space: nowrap;
  font-size: 0;
  width: 60px;
  height: 60px;
  position: absolute;
  top: 50%;
  padding: 0;
  line-height: 0;
  border: none;
  outline: none;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
      transform: translate(0, -50%);
  cursor: pointer;
  z-index: 1;
  opacity: .8;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: .25;
}

.slick-prev::before,
.slick-next::before {
  position: absolute;
  top: 20px;
  display: block;
  content: "";
  width: 20px;
  height: 20px;
  opacity: .75;
}

.slick-prev {
  left: 20px;
}

.slick-prev::before {
  left: 20px;
  border-top: 5px solid #000;
  border-left: 5px solid #000;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
}

.slick-next {
  right: 20px;
}

.slick-next::before {
  left: 15px;
  border-top: 5px solid #000;
  border-right: 5px solid #000;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}

.slick-dots {
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  bottom: 15px;
  list-style: none;
  display: none;
  margin: 0;
  padding: 0;
  z-index: 2;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 10px;
  width: 10px;
  margin: 0 10px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  width: 10px;
  height: 10px;
  outline: none;
  line-height: 0;
  font-size: 0;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover::before, .slick-dots li button:focus::before {
  background-color: #000;
}

.slick-dots li button::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #dcdcdc;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button::before {
  background-color: #000;
}

/*@media screen and (max-width: 1000px) and (min-width: 768px) {
	.content {
		width: 92%;
	}

	.wrapper {
		min-width: 92%;
	}
	.topBnrBox {
		width:92%;
	}
	footer .inner {
		width:92%;
		height:254px;
	}

	.cpy {
		min-width:92%;
	}
}*/

@media screen and (min-width: 768px) {
	.only-sp {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.only-pc {
		display: none;
	}
	.only-sp {
		display: block;
	}
	body {
		min-width: auto;
		max-width: 100%;
	}
	#overlay {
		position: fixed;
		width: 100%;
		height: 100%;
		left: 0;
		right: 0;
		bottom: 0;
		cursor: pointer;
		display: none;
		z-index: 1;
		background-color: rgba(0, 0, 0, 0.7);
	}

	#overlay.is-open {
		display: block;
	}

	body {
		max-width: 100%;
	}
	.content {
		width: 94%;
	}
	.wrapper {
		min-width: 100%;
		max-width: 100%;
	}

	.left, .right {
		float: none;
	}

	img {
		max-width: 100%;
	}

	header {
		height: 67px;
		position: fixed;
		z-index: 999;
		top: 0;
	}
	.header_img {
		margin-top: 67px;
	}

	header .logo {
		margin-top: 0;
	}

	header .logo img {
		zoom: 60%;
	}
	header .logo {
		top: 16%;
	}
	header .privacy {
		margin-left: 0;
	}

	nav {
		display: none;
		position: fixed;
		top: 67px;
		width: 100%;
		left: 0;
		z-index: 1050;
		overflow-x: hidden;
		border: 0;
		background: rgba(0, 0, 0, 0.7);
	}
	nav .row.content {
		width: 100%;
	}
	nav li {
		width: 100%;
		height: 100%;
		float: none;
	}
	nav li a {
		background: none;
		text-indent: 0;
		color: #fff;
		font-size: 1.4rem;
		padding: 10px 15px;
		text-align: center;
		box-sizing: border-box;
		border-top: 1px solid #d4d4d4;
	}
	nav li a:hover, nav li.current a {
		background: none!important;
	}

	.menu-btn {
		width: 60px;
		height: 100%;
		color: #010101;
		background: #010101;
		font-size: 5rem;
		display: block;
		background-color: transparent;
		padding: 0;
		outline: none;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		-webkit-touch-callout: none;
		-ms-touch-action: manipulation;
		touch-action: manipulation;
		cursor: pointer;
		position: absolute;
		right: -10px;
		top: 0;
	}

	.menu-btn span {
		display: block;
		position: absolute;
		top: 50%;
		left: 11px;
		background-color: #010101;
		width: 0.75em;
		height: 0.06em;
		border-radius: 0;
		margin-top: -0.025em;
		-webkit-transition: margin 0.2s ease-in-out 0.2s, -webkit-transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, -webkit-transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, transform 0.2s ease-in-out 0s, -webkit-transform 0.2s ease-in-out 0s;
	}

	.menu-btn:before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: 11px;
		background-color: #010101;
		width: 0.75em;
		height: 0.06em;
		border-radius: 0;
		margin-top: -0.25em;
		-webkit-transition: margin 0.2s ease-in-out 0.2s, -webkit-transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, -webkit-transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, transform 0.2s ease-in-out 0s, -webkit-transform 0.2s ease-in-out 0s;
	}

	.menu-btn:after {
		content: "";
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		left: 11px;
		background-color: #010101;
		width: 0.75em;
		height: 0.06em;
		border-radius: 0;
		margin-top: 0.19em;
		-webkit-transition: margin 0.2s ease-in-out 0.2s, -webkit-transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, -webkit-transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, transform 0.2s ease-in-out 0s;
		transition: margin 0.2s ease-in-out 0.2s, transform 0.2s ease-in-out 0s, -webkit-transform 0.2s ease-in-out 0s;
	}

	.menu-btn.is-open span {
		background-color: #010101;
		opacity: 0;
		-webkit-transition-delay: 0s;
		transition-delay: 0s;
	}

	.menu-btn.is-open:before, .menu-btn.is-open:after {
		margin-top: 0;
		-webkit-transition-delay: 0s, 0.25s, 0.25s;
		transition-delay: 0s, 0.25s, 0.25s;
	}

	.menu-btn.is-open:before {
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.menu-btn.is-open:after {
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.toppage {

	}

	.c-header__image {
		margin-top: 67px;
	}
	.c-header__image .text {
		width: 90%;
	}
	.c-header__image .text h1 {
		font-size: 3.3rem;
		/*font-weight: 500;*/
		letter-spacing: 0;
	}
	.c-header__image .text h1 span {
		font-size: 2.5rem;
	}
	.c-header__image .text h1 small {
		font-size: 2.5rem;
		letter-spacing: -13px;
	}


	.wrapper > .content,
	.wrapper > .content_bg .content {
		padding-bottom: 48px;
		padding-top: 30px;
	}

	.wrapper > .content_bg .content {
		display: flex;
		flex-direction: column-reverse;
	}
	.wrapper > .content_bg .content .side {
		margin-top: 40px;
	}
	.side {
		width: 100%;
	}
	.main {
		width: 100%;
	}

	.side .banner img {
		width: 100%;
	}

	.topBnrBox {
		width: 100%;
		padding: 30px 0 40px;
	}
	.topBnrBox .right {
		margin-top: 30px;
	}

	.topBnrBox .left img, .topBnrBox .right img {
		width: 100%;
	}


	.toppage .news dl dt {
		width: 100%;
		padding-bottom: 0;
	}
	.toppage .news dl dd {
		clear: left;
		margin: 0;
		border-top: 0;
		padding-top: 5px;
	}
	.toppage .inBox .left {
		margin-bottom: 20px;
		padding-bottom: 25px!important;
		border-bottom: 1px solid #aaa;
	}

	.toppage .inBox .left, .toppage .inBox .right {
		width: 100%;
		padding: 0;
		box-sizing: border-box;
		border-left: 0!important;
		border-right: 0!important;
	}
	.toppage .inBox .left strong, .toppage .inBox .right strong {
		font-size: 1.5rem;
		margin-bottom: 6px;
	}
	.toppage .inBox .left div, .toppage .inBox .right div {
		height: 50vw;
	}
	.toppage .inBox .left div img, .toppage .inBox .right div img {
		width: 100%;
	}
	


	footer div {
		position: unset!important;
		min-width: auto!important;
	}
	footer .inner {
		width: 94%;
		height: auto;
	}
	.ftTxt {
		border-left: 0;
		padding-top: 30px;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.ftTxt a {
		padding: 0 10px;
		line-height: 15px;
		height: 15px;
		border-right: 1px solid #999;
	}
	.ftTxt a:first-child {
		border-left: 1px solid #999;
	}
	.cpIf {
		font-size: 1.3rem;
		width: 100%;
		text-align: center;
	}
	.ftCnt {
		width: 100%;
		margin: 30px 0 30px;
	}
	.ftCnt a {
		text-align: center;
		margin-top: 15px;
	}
	.cpy {
		padding: 10px 0;
	}

	.business .inBox {
		margin-bottom: 25px;
	}
	.business .inBox:last-child {
		margin-bottom: -15px;
	}
	.business .left {
		width: 100%;
	}
	.business .left div, .business .right div {
		height: 50vw;
	}
	.business .right {
		width: 100%;
		padding-top: 16px;
	}
	.business .right h4 {
		text-align: center;
		border-bottom: 1.5px solid #c9c9c9
	}

	table {
		margin-bottom: 40px;
	}

	th, td {
		box-sizing: border-box;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	th {
		padding: 10px 10px 0 10px;
	}
	td {
		padding: 10px;
	}

	table.in_table {
		width: 100%;
	}
	table.in_table td {
		line-height: 28px;
	}
	table.company th {
		min-width: 92px;
	}
	table.company th span {
		display: block;
		margin-left: -6px;
		font-size: 0.86rem;
	}

	table.history th {
		min-width: 75px;
	}
	table.history th span {
		display: block;
		margin-left: -6px;
	}
	table.history td.month {
		width: 50px;
	}

	/*table.fix-sp {
		margin: auto;
		border-collapse: collapse;
		overflow-x: auto;
		display: block;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		max-width: 100%;
	}
	table.fix-sp th, table.fix-sp td {
		white-space: nowrap;
		word-break: keep-all;
	}*/

	h3.page_title {
		font-size: 1.8rem;
		margin-bottom: 25px;
	}

	.wpcf7-form th, .wpcf7-form td {
		/*padding: 10px!important;
		font-size: 1.1rem!important;*/
		display: block;
	}
	.wpcf7-form tr:first-child td {
		height: auto!important;
	}
	.wpcf7-form tr th {
		padding: 12px 10px 0 10px;
	}
	.wpcf7-form tr td {
		padding: 6px 10px 12px 10px;
	}

	.sideBlgBox .imgBox img {
		width: 100%;
		height: auto;
	}

	.blog .dtl .back {
		margin-top: 0;
	}
	.other_blog {
		display: flex;
	}
	.other_blog a img {
		width: 100%;
		height: auto;
	}
	.other_blog .left {
		margin-right: 10px;
	}
	.other_blog .left:nth-child(2) {
		margin-right: 0;
	}
	.side h3 {
		margin-bottom: 
	}
	.sideBlgBox {
		margin-top: 20px;
	}
	.sideBlgBox:after {
		clear: both;
		content:"";
		display: block;
	}
	.sideBlgBox .imgBox {
		height: auto;
		float: left;
		width: 45%;
		margin-right: 15px;
		margin-top: 20px;
	}
	.sideBlgBox strong, .sideBlgBox p.date {
		width: calc(100% - 45% - 15px);
		float: left;
	}
	.sideBlgBox .imgBox img {
		margin-top: 0;
	}
	.blog .date {
		margin-top: 40px;
	}

	.blog.list .blogBox {
		width: 100%;
		display: flex;
		justify-content: space-between;
	}
	.blog.list .imgBox {
		height: auto;
		margin-bottom: 20px;
	}
	.blog.list .blogBg {
		margin-bottom: 20px;
	}
	.blog.list br {
		display: none;
	}
	.blog.list .imgBox, .blog.list .blogBg {
		width: 48.5%;
		position: relative;
	}
	.blog.list .blogBg p, .blog.list .blogBg strong {
		width: 100%;
		font: none;
	}
	.blog.list .blogBg span {
		position: absolute;
		bottom: 0;
	}
	.blog.list .imgBox img {
		width: 100%;
	}
	.about-profile .boxtext {
		padding: 30px 0 60px;
	}
	.about-profile .boxtext p {
		line-height: 2;
	}
}