:root {
    --page-header-height: 210px;
    --service-rotate-width: 200px;
}

/* Header */
.page-head-container {
    /*height: var(--page-header-height);*/
    height: 300px;
    background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/service-page/header.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #263238;
}

.page-head-container:before{
    content: '';
    background: inherit;
    -webkit-filter: blur(5px);
    -moz-filter: blur(5px);
    -o-filter: blur(5px);
    -ms-filter: blur(5px);
    filter: blur(5px);
    position: absolute;
    top: -8px;
    left: -8px;
    right: -8px;
    bottom: -8px;
}

h1 span:first-child {
    letter-spacing: 8px;
}

/* Service */
.service-wrapper {
    height: auto;
    background-image: linear-gradient(#f5f5f5, #f5f5f5);
    background-repeat: no-repeat;
}

.note-wrapper {
    width: 100%;
    top: calc(-1 * var(--page-header-height) * 1.395 / 2);
    z-index: 2;
}

.note-wrapper img {
    object-fit: cover;
}

.note-wrapper img,
.note-wrapper .note-box,
.note-wrapper .note-main {
    width: 100%;
}

.note-wrapper img {
    height: calc(var(--page-header-height) * 1.395);
}

.note-wrapper .note-main p {
    font-size: 0.9rem;
}

.achievement-wrapper {
    z-index: 1;
    max-width: 100%;
}

.achievement-title::before {
    content: '';
    display: inline-block;
    width: 3rem;
    margin-right: 1rem;
    border-top: solid 1px #cdcdcd;
    position: relative;
    top: -5px;
}

.achievement-title-wrapper {
    width: 300px;
    max-width: 100%;
    margin: auto;
}

.achievement-wrapper .card {
    max-width: 300px;
}

/* sm */
@media screen and (min-width: 576px) {
    .note-wrapper .note-box {
        top: 4rem;
        max-width: 500px;
    }
}

/* md */
@media screen and (min-width: 768px) {
    .service-wrapper {
        background-size: calc(100% - 3rem);
    }

    .service-wrapper.right-side {
        background-position: right;
    }

    .service-wrapper::after {
        content: '';
        position: absolute;
        transform: rotateZ(90deg);
        transform-origin: left bottom;
        top: calc(-1 * var(--service-rotate-width) / 2);
        left: calc(100% - 2rem);
        color: #424242;
        font-size: 0.6rem;
        width: var(--service-rotate-width);
    }

    .service-wrapper.right-side::after {
        left: 1rem;
    }

    .service-wrapper.public-building::after {
        content: 'Public building / general building';
    }

    .service-wrapper.stores::after {
        content: 'Stores / commercial facilities';
    }

    .service-wrapper.medical-and-welfare-facilities::after {
        content: 'Medical and welfare facilities';
    }

    .service-wrapper.residential-construction::after {
        content: 'Residential construction / Reform';
    }

    .service-wrapper {
        height: calc(var(--page-header-height) * 2);
    }

    .note-wrapper,
    .achievement-wrapper {
        position: absolute;
    }

    .note-wrapper img,
    .note-wrapper .note-box {
        width: 50%;
    }

    .note-wrapper .note-box,
    .note-wrapper .note-main {
        max-width: none;
    }

    .note-wrapper .note-box {
        background-color: transparent!important;
        top: -1.4rem;
    }

    .note-wrapper .note-main p {
        font-size: 0.8rem;
    }

    .achievement-wrapper {
        width: 540px;
        height: 65%;
        bottom: 2rem;
        transform: translateX(-50%);
    }

    .achievement-title-wrapper {
        width: 100%;
    }
				
				.sp {
					display: none;
				}
}

/* lg */
@media screen and (min-width: 992px) {
    :root {
        --page-header-height: 420px;
        --note-img-height: 400px;
        --note-wrapper-top: calc(-1 * var(--note-img-height) / 2);
    }

    .service-wrapper {
        height: 550px;
    }

    .note-wrapper {
        top: var(--note-wrapper-top);
    }

    .note-wrapper img {
        height: var(--note-img-height);
    }

    .note-wrapper .note-main {
        width: 400px;
    }

    .achievement-wrapper {
        width: 750px;
        height: 60%;
        bottom: 3rem;
    }
}

.pan {
	display: flex;
	justify-content: flex-end;
	margin: 0;
	padding: 1rem;
	list-style: none;
	color: #666;
	font-size: 0.8rem;
}

.fadeInSec {
 opacity : 0;
 transform: translateY(80px);
 transition: 1.3s;
}

.tobira,
.tobira2 {
	position: relative;
	width: 100%;
	height: 400px;
	margin: 160px 0 0;
}

.tobira .wrap {
	display: flex;
}

.tobira2 .wrap {
	display: flex;
}

.tobira .wrap .image {
	width: 50%;
	margin: -80px 0 80px;
}

.tobira2 .wrap .image {
	order: 2;
	width: 50%;
	margin: -80px 0 80px;
}

.tobira .wrap .info {
	width: 45%;
	margin: 100px 0 100px 5%;
}

.tobira2 .wrap .info {
	order: 1;
	width: 50%;
}

.tobira .wrap .info .box {
	width: 400px;
}

.tobira2 .wrap .info .box {
	width: 400px;
	margin: 100px 5% 100px auto;
}

.tobira .wrap .info .box h2,
.tobira2 .wrap .info .box h2 {
	margin: 0 0 24px;
	padding: 32px 0 0;
	background: url(../image/rb-line.gif) no-repeat 0 0;
}

.tobira .wrap .info .box p,
.tobira2 .wrap .info .box p {
	margin-bottom: 20px;
}

.tobira .wrap .info .box button,
.tobira2 .wrap .info .box button {
	background-color: #dc3545;
	color: #FFF;
}

.tobira .wrap .info .box button:hover,
.tobira2 .wrap .info .box button:hover {
	background-color: #BB2D3B;
}

.tobira .wrap .image img {
 height: var(--note-img-height);
}

.tobira::after {
 content: '';
 position: absolute;
 transform: rotateZ(90deg);
 transform-origin: left bottom;
 top: -80px;
 left: calc(100% - 2rem);
 color: #424242;
 font-size: 0.6rem;
 width: var(--service-rotate-width);
}

.tobira2::after {
 content: '';
 position: absolute;
 transform: rotateZ(90deg);
 transform-origin: left bottom;
 top: -80px;
 left: calc(100% - 2rem);
 color: #424242;
 font-size: 0.8rem;
 width: var(--service-rotate-width);
}

.tobira2.right-side::after {
 left: 1rem;
}
				
.tobira.history::after {
 content: 'History';
}

.tobira2.message::after {
 content: 'Message';
}

.tobira.company::after {
 content: 'Company';
}

.tobira2.access::after {
 content: 'Access';
}

/*second--------------------------------------------------*/
.page-head-container h1 span.fs-6 {
	font-size: 1.2rem !important;
}

.secondCont {
	width: 80%;
	margin: 0 auto;
	padding: 60px 0 0;
	max-width: 1200px;
}

.secondCont .alignleft {
	float: left;
	margin: 0 24px 24px 0;
}

.secondCont .alignright {
	float: right;
	margin: 0 0 24px 24px;
}

.secondCont .aligncenter {
	display: block;
	margin: 0 auto 24px;
}

.secondCont section {
	margin: 0 0 80px;
}

.secondCont section h2 {
	position: relative;
	margin: 0 0 32px;
	padding: 16px 8px;
	font-size: 1.8rem !important;
}

.secondCont section h2:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #A22022;
}

.secondCont section h2:after {
	content: "";
	position: absolute;
	width: 12px;
	height: 12px;
	top: calc(100% - 6px);
	left: 18px;
	border-radius: 50%;
	background-color: #A22022;
}

.secondCont section h3 {
	position: relative;
	background-color: #F6E8E8;
	padding: 8px 8px 8px 26px;
	margin: 0 0 20px;
	font-weight: 500 !important;
	font-size: 1.3rem !important;
}

.secondCont section h3:before {
	content: "";
	position: absolute;
	width: 8px;
	height: 8px;
	top: 18px;
	left: 10px;
	background-color: #A22022;
	border-radius: 50%;
}

.secondCont section a {
	text-decoration: underline;
}

.pagemenu ul {
	display: flex;
	width: 70%;
	margin: 0 auto 80px;
	padding: 0;
	list-style: none;
	justify-content: space-around;
}

.pagemenu ul li {
	margin: 0;
	padding: 0;
	width: 20%;
}

.pagemenu ul li a {
	display: block;
	padding: 0.6rem 1rem;
	border: 1px solid #CCC;
	text-align: center;
	box-shadow: 3px 3px 0 #EEE;
	text-decoration: none;
}

.pagemenu ul li a:hover {
	background-color: #0e65ae;
	color: #FFF;
}

.pager_wrap {
	position: relative;
	overflow: hidden;
	margin: 20px 0 10px;
}

.pager_wrap ul.pager {
	position: relative;
	left: 50%;
	float: left;
}

.pager_wrap ul.pager li {
	position: relative;
	left: -50%;
	float: left;
}

.pager_wrap ul.pager {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pager_wrap ul.pager li {
	display: inline;
	min-width: 20px;
	margin: 2px 6px;
	padding: 0;
	background-color: #FFF;
	text-align: center;
	border: 1px solid #dc3545;
	text-indent: 0;
	border-radius: 50%;
}

.pager_wrap ul.pager li a {
	display: block;
	padding: 10px 20px;
	text-decoration: none;
	border: none;
}

.pager_wrap ul.pager li::before {
content: "";
margin-right: 0;
}

.pager_wrap ul.pager li.active {
	background-color: #dc3545;
	display: block;
	padding: 10px 20px;
	color: #FFFFFF;
}

.pager_wrap ul.pager li.active a:link, .pager_wrap ul.pager li.active a:visited,
.pager_wrap ul.pager li.active a:hover, .pager_wrap ul.pager li.active a:active {
	color: #FFFFFF !important;
	border-radius: 50%;
}

.pager_wrap ul.pager li a:hover {
	color: #FFF;
	background-color: #dc3545;
	border-radius: 50%;
}

.cmnbtn {
	text-align: center;
}

.cmnbtn a {
	display: block;
	width: 300px;
	margin: 0 auto;
	padding: 0.6rem 1rem;
	border: 1px solid #CCC;
	text-align: center;
	box-shadow: 3px 3px 0 #EEE;
	text-decoration: none !important;
}

.cmnbtn a:hover {
	background-color: #0e65ae;
	color: #FFF;
}

/*company-aboutus-------------------------------------------------*/

.page-head-container.aboutus {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/aboutus-header.jpg');
}

.page-head-container.enkaku {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/enkaku-header.jpg');
}

.page-head-container.message {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/message-header.jpg');
}

.page-head-container.aboutus2 {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/aboutus2-header.jpg');
	background-position: center center;
}

.page-head-container.access {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/access-header.jpg');
}

.table-ek {
	width: 100%;
	margin: 0 0 60px;
}

.table-ek th {
	position: relative;
	padding: 16px 36px 16px 16px;
}

.table-ek th::after {
	position: absolute;
	content: "";
	width: 40px;
	height: 1px;
	background-color: #666;
	top: 28px;
	right: 0;
}

.table-ek td {
	padding: 16px;
}

.table-ek tr:nth-of-type(2n) {
	background-color: #E6EFF7;
}

.table-gy {
	width: 100%;
	margin: 0 0 60px;
}

.table-gy th {
	width: 20%;
	white-space: nowrap;
	padding: 16px;
	background-color: #EEE;
	border-bottom: 1px dashed #CCC;
	border-right: 1px solid #A22022;
}

.table-gy td {
	padding: 16px;
	border-bottom: 1px dashed #CCC;
}

.table-gy td dl {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
}

.table-gy td dl dt {
	width: 30%;
	white-space: nowrap;
	font-weight: 400;
}

.table-gy td dl dd {
	width: 70%;
	margin-bottom: 0;
}

.table-kr {
	width: 100%;
	margin: 0 0 60px;
}

.table-kr th {
	padding: 16px;
	background-color: #EEE;
	border-bottom: 1px solid #CCC;
}

.table-kr td {
	padding: 16px;
	border-bottom: 1px dashed #CCC;
}

.rinenBox {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 30px 30px;
	background: url(../image/rinen_back.jpg) no-repeat center -140px;
}

.rinenBox .image {
	width: 460px;
}

.rinenBox .text {
	width: 680px;
	padding: 30px 20px;
	background-color: rgba(161, 196, 223, .2);
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.rinenBox .text h3 {
	padding: 0 20px 12px;
	font-size: 1.7rem !important;
	letter-spacing:0.08em;
	background-color: transparent;
	background: url(../image/rinen_line.png) no-repeat 0 100%;
	color: #0A477A;
	font-weight: 900 !important;
}

.rinenBox .text h3:before {
	background-color: transparent;
}

.rinenBox .text h3 span.en {
	font-size: 1.3rem;
	margin-left: 20px;
	color: #666;
	letter-spacing: 0.05em;
	font-style: italic;
}

.rinenBox .text p {
	margin: 0 20px 40px 40px;
	font-weight: 500;
	line-height: 1.5;
	font-size: 1.1rem !important;
}

.rinenBox .text p:nth-of-type(3) {
	margin-bottom: 0;
}


/*.rinenBox {
	display: flex;
	justify-content: space-between;
}

.rinenBox .photo {
	position: relative;
	width: 40%;
}

.rinenBox .photo:after {
	position: absolute;
	bottom: -28px;
	left: 0;
	font-size: 5rem;
	font-family: "Arial Black", Gadget, sans-serif;
	color: #EEE;
	z-index: -1;
 transform: skew(-10deg);
}

.rinenBox .photo {
	width: 40%;
	position: relative;
}

.rinenBox .photo:before {
	content: "";
	position: absolute;
	width: 60px;
	height: 60px;
	background-color: #CFE0EF;
	bottom: -20px;
	right: 30px;
 -webkit-transform: skew(-12deg);
 transform: skew(-12deg);
	z-index: -1;
}

.rinenBox .photo img {
	max-width: 100%;
	height: auto;
}

.rinenBox .text {
	width: 60%;
	margin: 20px 0 0;
}

.rinenBox .text h3 {
	margin: 0 0 0 -60px;
	font-size: 30px !important;
 padding: 0.5rem 1.5rem 0.3rem 5rem;
 -webkit-transform: skew(-10deg);
 transform: skew(-10deg);
 color: #fff;
	letter-spacing: 0.1em;
 background-image: -webkit-gradient(linear, left top, right top, from(#0e65ae), to(#68e0cf));
 background-image: -webkit-linear-gradient(left, #0e65ae 0%, #68e0cf 100%);
 background-image: linear-gradient(to right, #0e65ae 0%, #68e0cf 100%);
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.rinenBox .text h3:before {
	background-color: transparent;
}

.rinenBox .text h3:after {
	position: absolute;
	top: -37px;
	right: 0;
	text-align: right;
	content: "";
	width: 100%;
	height: 100%;
	color: #CFE0EF;
	font-size: 40px;
	font-weight: bold;
}

.rinenBox .text p {
	margin: 40px 0 0 60px;
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-size: 20px;
	line-height: 1.8;
}

.rinenBox .text h3.c1:after {
	content: "Industry Innovation";
}

.rinenBox .text h3.c2:after {
	content: "Management Innovation";
}

.rinenBox .text h3.c3:after {
	content: "Self Innovation";
}

*/

/*.rinenBox {
	display: flex;
	justify-content: space-between;
}

.rinenBox div h3:before {
	background-color: transparent !important;
}

.rinenBox div {
	position: relative;
	width: 30%;
	border-bottom: 1px solid #0e65ae;
}

.rinenBox div h3 {
	font-size: 1.3rem;
  padding: 0.5rem 2rem;
  -webkit-transform: skew(-10deg);
  transform: skew(-10deg);
  color: #fff;
  background-image: -webkit-gradient(linear, left top, right top, from(#0e65ae), to(#68e0cf));
  background-image: -webkit-linear-gradient(left, #0e65ae 0%, #68e0cf 100%);
  background-image: linear-gradient(to right, #0e65ae 0%, #68e0cf 100%);
}

.rinenBox div p {
	padding: 20px;
}

.rinenBox div:after {
	position: absolute;
	bottom: -28px;
	right: 0;
	font-size: 5rem;
	font-family: "Arial Black", Gadget, sans-serif;
	color: #EEE;
	z-index: -1;
 transform: skew(-10deg);
}

.rinenBox div:nth-child(1):after {
	content: "01";
}

.rinenBox div:nth-child(2):after {
	content: "02";
}

.rinenBox div:nth-child(3):after {
	content: "03";
}
*/

.gmap {
	margin: 10px 0 80px;
 height: 0;
 overflow: hidden;
 padding-bottom: 56.25%;
 position: relative;
}

.gmap iframe {
 position: absolute;
 left: 0;
 top: 0;
 height: 100%;
 width: 100%;
}

.messageBox {
 display: flex;
}

.messageBox div:nth-child(1) {
 margin-right: 40px;
 }


/*blog--------------------------------------------------*/

.page-head-container.blog {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/blog-header.jpg');
}

.blogListPage {
	display: flex;
	flex-wrap: wrap;
}

.blogListPage dt {
	position: relative;
	width: 14%;
	margin: 0 0 16px;
	padding: 12px 8px;
	white-space: nowrap;
	background-color: #F3F2F1;
	text-align: center;
}

.blogListPage dt:before {
    height: 0;
    display: block;
    position: absolute;
    left: 0;
    content: "";
    border-top: solid 16px #fff;
    border-right: solid 16px transparent;
    top: -3px;
    z-index: 2;
}
.blogListPage dt:after {
    height: 0;
    display: block;
    position: absolute;
    left: 0;
    content: "";
    border-top: solid 16px transparent;
    border-right: solid 16px transparent;
    top: -2px;
}
	
.blogListPage dd {
	position: relative;
 width: 86%;
	margin: 0 0 16px;
	padding: 0;
	background-color: #F3F2F1;
}

.blogListPage dd a {
	display: block;
	padding: 12px 8px 12px 40px;
	text-decoration: none;
}

.blogListPage dd:after {
	content: "";
	position: absolute;
	top: calc( 50% - 10px );
	left: 0;
	width: 2px;
	height: 20px;
	background-color: #CCC;
}

.blogListPage dd:hover {
	background-color: #E6EFF7;
}

.blogDate {
	background: url(../image/icon_calendar.png) no-repeat 0 0;
	background-size: 32px;
	padding: 0 0 0 36px;
	line-height: 32px;
	font-size: 1.1rem;
}

.wnText {
	margin: 40px 20px 20px;
	padding: 20px;
	position: relative;
	border: 3px solid #EEE;
}

.wnText .aligncenter {
 margin: 0 auto 30px !important;
}

.wnText p {
	margin: 24px;
}

.wnText img {
    max-width: 100%;
    height: auto;
}

.wnText::before,
.wnText::after {
	content: "";
	position: absolute;
	width: 80px;
	height: 80px;
}

.wnText::before {
	top: -3px;
	left: -3px;
	border-top: 3px solid #B7DCFD;
	border-left: 3px solid #B7DCFD;
}

.wnText::after {
	bottom: -3px;
	right: -3px;
	border-bottom: 3px solid #B7DCFD;
	border-right: 3px solid #B7DCFD;
}

.blogcolumn2 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 0 0 80px;
}

.blogcolumn2 .blogSec {
	width: 80%;
}

.blogcolumn2 .blogside {
	width: 17%;
}

.blogcolumn2 .blogside p {
	position: relative;
	font-weight: 500;
	text-align: center;
	background-color: #E6EFF7;
	padding: 8px;
}

.blogcolumn2 .blogside p:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #E6EFF7;
}

.blogcolumn2 .blogside ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.blogcolumn2 .blogside ul li {
	margin: 0;
	padding: 0;
}

.blogcolumn2 .blogside ul li a {
	display: block;
	padding: 8px;
	border-bottom: 1px solid #CCC;
	background: url(../image/icon-next.png) no-repeat 90% center;
	text-decoration: none;
}

.blogcolumn2 .blogside ul li a:hover {
	background: url(../image/icon-next.png) #E6EFF7 no-repeat 94% center;
}


/*recruit--------------------------------------------------*/
.page-head-container.recruit {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/recruit-header.jpg');
}

.page-head-container.voice {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/voice-header.jpg');
}

.page-head-container.charm {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/charm-header.jpg');
}

.page-head-container.requirements {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/requirements-header.jpg');
}

.tobira.voice::after {
 content: 'Voice';
}

.tobira2.charm::after {
 content: 'Charm';
}

.tobira.youkou::after {
 content: 'Requirements';
}

.table-rct {
	width: 100%;
	margin: 0 0 80px;
}

.table-rct th {
	width: 20%;
	padding: 16px;
	background-color: #EEE;
	border-bottom: 1px dashed #CCC;
	border-right: 1px solid #A22022;
	white-space: nowrap;
}

.table-rct td {
	padding: 16px;
	border-bottom: 1px dashed #CCC;
}

.table-rct th p,
.table-rct td p {
	margin: 0 !important;
}

.recSend {
	width: 500px;
	margin: 30px 20px;
}

.recSend dt {
	display: inline-block;
	margin: 0 0 0 -20px;
	padding: 4px 16px;
	background-color: #A22022;
	color: #FFF;	
}

.recSend dd {
	margin: -20px 0 0;
	border: 1px solid #A22022;
	padding: 30px 20px 20px;
}

.voiceBox .boxl {
	display: table;
	width: 1100px;
	margin: 0 auto 80px 0;
}

.voiceBox .boxr {
	display: table;
	width: 1100px;
	margin: 0 0 80px auto;
}

.voiceBox .boxl .text {
	display: table-cell;
	width: 700px;
	vertical-align: middle;
	padding: 0 0 0 20px;
}

.voiceBox .boxr .text {
	display: table-cell;
	width: 700px;
	vertical-align: middle;
}

.voiceBox .boxl .text div {
	display: block;
	line-height: 1.7;
	padding: 0 0 0 60px;
}

.voiceBox .boxr .text div {
	display: block;
	line-height: 1.7;
	padding: 0 60px 0 0;
}

.voiceBox .boxl .text h2 {
	margin: 0 0 20px -20px;
	font-size: 1.2rem;
	border-bottom: 3px solid #A22022;
	padding: 0 0 8px 80px;
	font-weight: 400;
	position: relative;
}

.voiceBox .boxl .text h2::before {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    bottom: -9px;
    right: 0;
    background-color: #A22022;
    transform: rotate(-45deg);
}

.voiceBox .boxr .text h2 {
	margin: 0 -20px 20px 0;
	font-size: 1.2rem;
	border-bottom: 3px solid #A22022;
	padding: 0 80px 8px 20px;
	font-weight: 400;
	position: relative;
}

.voiceBox .boxr .text h2::before {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    bottom: -9px;
    left: 0;
    background-color: #A22022;
    transform: rotate(-45deg);
}

.voiceBox .boxl .image,
.voiceBox .boxr .image {
	width: 400px;
	/*overflow: hidden;
	transform: skewX(-10deg);*/
	position: relative;
	display: table-cell;
}

.voiceBox .boxl .image::before {
    position: absolute;
    width: 200px;
    height: 300px;
    top: 40px;
    left: -40px;
    background-color: #F6E8E8;
    content: "";
    z-index: -1;
}

.voiceBox .boxr .image::before {
    position: absolute;
    width: 200px;
    height: 300px;
    top: 40px;
    right: -40px;
    background-color: #F6E8E8;
    content: "";
    z-index: -1;
}

.voiceBox .boxl .image img,
.voiceBox .boxr .image img {
 /*transform: skewX(10deg) scale(1.2);
	object-fit: cover;*/
	max-width: 100%;
	height: auto;
}

.charmBox .boxl {
	display: table;
	width: 950px;
	margin: 0 auto 80px 0;
}

.charmBox .boxr {
	display: table;
	width: 950px;
	margin: 0 0 80px auto;
}

.charmBox .boxl .text {
	display: table-cell;
	width: 550px;
	vertical-align: middle;
	padding: 0 0 0 20px;
}

.charmBox .boxr .text {
	display: table-cell;
	width: 550px;
	vertical-align: middle;
}

.charmBox .boxl .text div {
	display: block;
	line-height: 1.7;
	padding: 0 0 0 60px;
}

.charmBox .boxr .text div {
	display: block;
	line-height: 1.7;
	padding: 0 60px 0 0;
}

.charmBox .boxl .text h2 {
	position: relative;
	margin: 0 0 20px -20px;
	font-size: 1.2rem;
	background-color: #A22022;
	color: #FFF;
	padding: 8px 8px 8px 80px;
	font-weight: 400;
	z-index: -1;
}

.charmBox .boxl .text h2:before {
	position: absolute;
	top: 0;
	right: -10px;
	border-right: 10px solid #FFF;
	transform: skewX(-10deg) scale(2);
	content: "";
	width: 10px;
	height: 100%;
}

.charmBox .boxr .text h2 {
	position: relative;
	margin: 0 -20px 20px 0;
	font-size: 1.2rem;
	background-color: #A22022;
	color: #FFF;
	padding: 8px 80px 8px 20px;
	font-weight: 400;
}

.charmBox .boxr .text h2:before {
	position: absolute;
	top: 0;
	left: -10px;
	border-left: 10px solid #FFF;
	transform: skewX(-10deg) scale(2);
	content: "";
	width: 10px;
	height: 100%;
}

.charmBox .boxl .image,
.charmBox .boxr .image {
	width: 400px;
	overflow: hidden;
	transform: skewX(-10deg);
}

.charmBox .boxl .image img,
.charmBox .boxr .image img {
 transform: skewX(10deg) scale(1.2);
	object-fit: cover;
	max-width: 100%;
	height: auto;
}

.charmLead {
	font-size: 1.2rem;
	font-weight: 500;
	text-align: center;
	line-height: 1.8;
}

.charmImage {
	width: 70%;
	margin: 120px auto 0;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.charmImage li {
	position: relative;
	margin: 0 2% 40px;
	padding: 0;
	/*width: 28%;
	max-width: 28%;*/
	width: 46%;
	max-width: 46%;
	text-align: center;
}

.charmImage li img {
	display:block;
	margin-bottom: 10px;
	max-width: 100%;
	height: auto;
}

.charmImage li:before {
	position: absolute;
	content: "";
	width: 50px;
	height: 50px;
	top: -15px;
	left: -18px;
 background: linear-gradient(-45deg, transparent, transparent 49%, #A22022 49%, #A22022 51%, transparent 51%, transparent);
}




/*service--------------------------------------------------*/
.page-head-container.fukushi,
.page-head-container.heartfull_support {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/fukushi-header.jpg');
}

.page-head-container.tenpo,
.page-head-container.consul2,
.page-head-container.keitai {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/tenpo-header.jpg');
}

.page-head-container.jutaku,
.page-head-container.superreform {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/jutaku-header.jpg');
}

.page-head-container.public {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/public-header.jpg');
}

.tobira3,
.tobira4 {
	position: relative;
	width: 100%;
	height: auto;
	/*height: 400px;*/
	margin: 160px 0 0;
	padding: 0 0 40px;
}

.tobira3 .wrap {
	display: flex;
}

.tobira4 .wrap {
	display: flex;
}

.tobira3 .wrap .imageBox,
.tobira4 .wrap .imageBox {
	width: 50%;
	margin: -80px 0 80px;
}

.tobira4 .wrap .imageBox {
	order: 2;
}

.tobira3 .wrap .imageBox p {
	text-align: right;
}

.tobira3 .wrap .image {
	height: 500px;
}

.tobira4 .wrap .image {
	height: 500px;
}

.tobira3 .wrap .info {
	width: 45%;
	margin: 100px 0 100px 5%;
}

.tobira4 .wrap .info {
	order: 1;
	width: 50%;
}

.tobira3 .wrap .info .box {
	width: 400px;
}

.tobira4 .wrap .info .box {
	width: 400px;
	margin: 100px 5% 100px auto;
}

.tobira3 .wrap .info .box h2,
.tobira4 .wrap .info .box h2 {
	margin: 0 0 24px;
	padding: 32px 0 0;
	background: url(../image/rb-line.gif) no-repeat 0 0;
}

.tobira3 .wrap .info .box p,
.tobira4 .wrap .info .box p {
	margin-bottom: 20px;
}

.tobira3 .wrap .info .box button,
.tobira4 .wrap .info .box button {
	background-color: #dc3545;
	color: #FFF;
}

.tobira3 .wrap .info .box button:hover,
.tobira4 .wrap .info .box button:hover {
	background-color: #BB2D3B;
}

.tobira3 .wrap .image img {
 /*eight: var(--note-img-height);*/
}

.tobira3::after {
 content: '';
 position: absolute;
 transform: rotateZ(90deg);
 transform-origin: left bottom;
 top: -80px;
 left: calc(100% - 2rem);
 color: #424242;
 font-size: 0.6rem;
 width: var(--service-rotate-width);
}

.tobira4::after {
 content: '';
 position: absolute;
 transform: rotateZ(90deg);
 transform-origin: left bottom;
 top: -80px;
 left: calc(100% - 2rem);
 color: #424242;
 font-size: 0.8rem;
 width: var(--service-rotate-width);
}

.tobira4.right-side::after {
 left: 1rem;
}
				
.tobira3.health::after {
 content: 'Medical and welfare facilities';
}

.tobira4.store::after {
 content: 'Stores / Commercial facilities';
}

.tobira3.reform::after {
 content: 'Residencial construction / Reform';
}

.tobira4.public::after {
 content: 'Public building / general building';
}

.tobiraJirei {
	width: 900px;
	margin: -160px auto 40px;
	padding: 90px 30px 20px;
	background-color: #FFF;
}

.tobiraJirei p {
	position: relative;
	padding: 0 0 0 50px;
}

.tobiraJirei p:before {
	position: absolute;
	width: 40px;
	height: 3px;
	background-color: #555;
	top: 50%;
	left: 0;
	content: "";
}

.tobiraJirei ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
}

.tobiraJirei ul li {
	width: 46%;
	margin: 0 2%;
	padding: 0;
}

.tobiraJirei ul li img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

.consulImageList {
	margin: 30px 0 -40px;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}

.consulImageList li {
	width: 46%;
	margin: 0 2% 40px;
	padding: 20px;
	box-shadow: 3px 3px 3px #CCC;
}

.consulImageList li img {
	width: 100%;
	height: auto;
	display: block;
}

.jireiLead {
    font-size: 20px;
    font-weight: 500;
    background-color: #FFFDDD;
    padding: 10px;
}

.table-sk,
.table-sk2 {
	width: 100%;
	margin: 0 0 40px;
}

.table-sk tr:nth-of-type(2n-1),
.table-sk2 tr:nth-of-type(2n-1) {
	background-color: #EEE;
}

.table-sk tr:hover,
.table-sk2 tr:hover {
	background-color: #FFF9E8;
}

.table-sk th,
.table-sk2 th {
	padding: 8px;
	background-color: #E6EFF7;
	border-bottom: 2px solid #CCC;
}

.table-sk th:nth-of-type(1) {
	width: 60%;
}

.table-sk2 th:nth-of-type(1) {
	width: 35%;
}

.table-sk td,
.table-sk2 td {
	padding: 8px;
	border-bottom: 1px dotted #AAA;
}

.etcText {
	margin: -30px 0 60px;
}

.etcText p {
	margin: 0;
}

.catListUl {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.catListUl li {
	width: 23%;
	margin: 0 1% 20px;
	padding: 0;
}

.catListUl li a {
	display: block;
	padding: 0.6rem 1rem;
	border: 1px solid #CCC;
	box-shadow: 3px 3px 0 #EEE;
	text-align: center;
	text-decoration: none;
}

.catListUl li a:hover {
	background-color: #0e65ae;
	color: #FFF;
}

.publicTitle {
	font-size: 1.4rem;
	font-weight: 500;
}

.heartfull_support {
	display: flex;
}

.heartfull_support div {
	width: 40%;
	margin: 40px 5% 40px;
}

.heartfull_support_chirashi {
	font-size: 1.5rem;
	font-weight: 500;
	color: #e50012;
	text-align: center;
	margin: 0 0 30px;
}

.heartfull_support_chirashi p {
	display: inline-block;
 background:linear-gradient(transparent 60%, #fff799 60%);
}

.btngroup {
	text-align: center;
}

.btn-copy {
  font-size: 1.5rem;
  font-weight: bold;
  position: relative;
  margin-bottom: .2em;
  text-align: center;
}

.btn-copy:before {
  margin-right: 1rem;
  content: '＼';
}

.btn-copy:after {
  margin-left: 1rem;
  content: '／';
}

a.btn--red {
	 font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  position: relative;
  display: inline-block;
		margin: 0 auto;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none !important;
  letter-spacing: 0.1em;
  border-radius: 0.5rem;
  color: #FFF;
  background-color: #dc3545;
  border-bottom: 5px solid #A22022;
}

a.btn--red:hover {
  margin-top: 3px;
  color: #FFF;
  background: # fff20a;
  border-bottom: 2px solid #A22022;
}

.superreformLead {
	margin: 0 0 40px;
	font-weight: 500;
	font-size: 1.8rem;
	text-align: center;
}

.superreformLead p {
	display: inline-block;
 background:linear-gradient(transparent 60%, #fff799 60%);
}

.superreformTokutyo {
	margin: 0 0 60px;
	padding: 20px;
	background-color: #FAEFE0;
	display: flex;
	justify-content: space-between;
	border-radius: 10px;
}

.superreformTokutyo div {
	width: 30%;
}

.superreformTokutyo div dt {
	background: linear-gradient(to bottom, #efa355 0%,#e28e2e 100%);
	padding: 0.5rem 0;
	text-align: center;
	font-size: 1.8rem;
	color: #FFF;
	font-weight: 500;
	margin: 0 0 10px;
}


/*inquiry--------------------------------------------------*/
.page-head-container.inquiry {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/inquiry-header.jpg');
}

.table-inq {
	width: 100%;
	margin: 0 0 40px;
}

.table-inq th {
	padding: 24px 8px 24px 16px;
	border-bottom: 1px solid #CCC;
	background-color: #EEE;
}

.table-inq td {
	padding: 24px 8px 24px 16px;
	border-bottom: 1px solid #CCC;
}

.table-inq td a {
	text-decoration: underline;
}

.table-inq td label {
	margin-right: 40px;
}

.table-inq td input {
	border: 1px solid #CCC;
	padding: 4px;
	box-shadow: inset 1px 1px 3px rgb(0 0 0 / 7%);
}

.table-inq td textarea {
	display: block;
	padding: 4px;
	border: 1px solid #CCC;
	box-shadow: inset 1px 1px 3px rgb(0 0 0 / 7%);
}

.table-inq td input:focus,
.table-inq td textarea:focus {
background: #FFFFEE;
}

.table-inq td input:nth-of-type(2) {
	margin-top: 4px;
}

.table-inq td .error {
	margin-top: 4px;
	padding: 4px;
	background-color: #FFF2F2;
}

.inqBtn {
	text-align: center;
}

.inqBtn input {
	padding: 12px 32px;
}

.hissu {
	color: #F00;
}

.inqSend {
	margin: 20px 0 40px;
	text-align: right;
}


/*sitemap--------------------------------------------------*/
.page-head-container.sitemap {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/sitemap-header.jpg');
}

#site ul {
	width: 80%;
	margin: 0 auto;
	list-style: none;
}

#site ul li {
	margin: 0 0 20px;
}

#site ul li a {
	display: block;
	position: relative;
	text-decoration: none;
	padding: 8px;
	border: 1px solid #CCC;
}

#site ul li a:hover {
	background-color: #FFFFEE;
}

#site ul li a:before {
	position: absolute;
	top: -1px;
	left: 0;
	width: 40px;
	height: 1px;
	background-color: #0e65ae;
	content: "";
}

#site ul li ul {
	width: 100%;
	margin: 20px 0 0;
}

#site ul li ul li {
	margin: 0 0 10px;
}

#site ul li ul li a {
	display: inline-block;
	border: none;
	padding: 4px 4px 4px 12px;
	background: url(../image/arrow-01.png) no-repeat 0 center;
	background-size: 6px;
}

#site ul li ul li a:hover {
	background-color: transparent;
}


#site ul li ul li a:before {
	background-color: transparent;
}

#site ul li ul li ul {
	margin: 0;
}

#site ul li ul li ul li {
	margin: 0;
}

#site ul li ul li ul li a {
	padding: 4px;
	background-image: none;
}

/*privacy--------------------------------------------------*/
.page-head-container.privacy {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/privacy-header.jpg');
}

#privacy {
	width: 90%;
	margin: 0 auto;
}

#privacy p {
	margin: 0 0 30px;
}


/*otorihiki--------------------------------------------------*/
.page-head-container.otorihiki {
	background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('../image/otorihiki-header.jpg');
}


/*lease--------------------------------------------------*/
.mgt table {
width: 90%;
margin: 0 auto 10px;
border-bottom: 1px dotted #CCC;
}

.mgt table th {
width: 90px;
}

.pointTitle {
position: relative;
padding: 8px;
border-bottom: 3px solid #d8d8d8;
font-weight: 500;
}

.pointTitle:before {
  position: absolute;
  bottom: -14px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #d8d8d8 transparent transparent transparent;
}

.pointTitle:after {
  position: absolute;
  bottom: -10px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #f9f9f9 transparent transparent transparent;
}


@media screen and (max-width: 780px){
.head-container {
	height: 320px !important;
	min-height: 320px !important;
}

.head-container h1 {
	margin: 20px 0 0;
	font-size: 3.6rem;
}

.head-container h1 span:first-child {
	font-size: 1.4rem;
}

.head-container h2 {
	font-size: 1.1rem;
	line-height: 1.3;
}

.head-container p {
	font-size: 0.7rem;
}

.head-container {
	background-position: 70% center;
}

.topics-nav {
	display: block !important;
}

.topics-nav h4,
.topics-nav time {
	display: inline-block !important;
}

.topics-nav .border-start {
	display: none !important;
}

.topics-nav {
	padding-top: 8px;
}

.topics-nav span.text-white {
	display: block;
	width: 100%;
	font-size: 0.8rem;
}

.topics-nav .py-3 {
	padding: 0 8px 8px !important;
}

.bg-service {
	margin-top: -6rem;
}

.service-item {
	padding: 0 1rem !important;
	text-align: left !important;
}

.img-h {
	/*height:400px;*/
}

.img-h-1 {
	background-position: 55% center;
}

.text-h {
	left: 1rem;
}

.img-h-2 {
	background-position: 50% 0;
}

.img-h-3 {
	background-position: 50% 0;
}

.img-h-4 {
	background-position: 45% 0;
}

.note-main {
	padding: 6% 6% 6% 12%;
}

.bg-service > div:first-child {
	height: 3400px;
}

.blog-container {
	margin-top: -3rem;
}

.blog-container .card-img-top {
	border: 1px solid #CCC;
}

.img-company {
	background-position: 40% 100%;
}

.img-recruit {
	background-position: 80% 100%;
}

.recruit-container .note-main {
	padding: 12%;
}

.recruit-container .note-main p {
	text-align: left !important;
}

.action-container {
	height: 360px;
}

.blog-items .card:nth-of-type(3) {
	margin: 40px 0 0 !important;
}

/*--------------------------------------------------*/
.page-head-container {
	height: 120px;
}

.tobira, .tobira2 {
	height: auto;
}

.tobira .wrap .image,
.tobira2 .wrap .image {
	width: 100%;
	height: 200px;
	margin-bottom: 40px;
	margin-top: -120px;
}

.tobira .wrap,
.tobira2 .wrap,
.tobira3 .wrap,
.tobira4 .wrap {
	display: block;
	padding-bottom: 0;
}

.tobira3 .wrap .imageBox, .tobira4 .wrap .imageBox {
	width: 100%;
	margin-bottom: 40px;
	margin-top: -120px;
}

.tobira .wrap .info,
.tobira .wrap .info .box,
.tobira2 .wrap .info,
.tobira2 .wrap .info .box,
.tobira3 .wrap .info,
.tobira3 .wrap .info .box,
.tobira4 .wrap .info,
.tobira4 .wrap .info .box {
	width: 90%;
	margin: 0 auto;
}

.tobira .wrap .info,
.tobira2 .wrap .info {
	padding-bottom: 40px;
}

.tobira3 .wrap .image,
.tobira4 .wrap .image {
	height: 200px;
}

.tobira .wrap .info,
.tobira2 .wrap .info,
.tobira3 .wrap .info,
.tobira4 .wrap .info {
	margin-top: 0;
	margin-bottom: 50px;
}

.tobira .wrap .imageBox p,
.tobira2 .wrap .imageBox p,
.tobira3 .wrap .imageBox p,
.tobira4 .wrap .imageBox p {
	padding: 0 .5rem;
}

.tobira.history .image {
	background-position: center 10% !important;
}

.tobira.company .image {
	background-position: center 15% !important;
}

.tobiraJirei {
	width:96%;
	margin: 0 auto;
	padding-top: 40px;
}

.tobiraJirei ul {
	display: block;
	text-align: center;
}

.tobiraJirei ul li {
	width: 100%;
	margin-bottom: 30px;
}

.tobira::after,
.tobira3::after {
	top: -40px;
}

.tobira4 .wrap .info .box {
	margin-top: 0;
	margin-bottom: 50px;
}


/*--------------------------------------------------*/
.secondCont {
	width: 90%;
	padding: 30px 0 0;
}

.secondCont section {
	margin: 0 0 60px;
}

.secondCont img {
	max-width: 100%;
	height: auto;
}

h1 span:first-child {
 letter-spacing: 8px;
	display: block;
	margin-left: 8px;
}

h1 br {
	display: none;
}

.pan {
	display: block;
}

.pan li {
	font-size: .6rem;
	display: inline;
}

.secondCont section h2 {
	font-size: 1.4rem !important;
}

.secondCont section h3 {
	font-size: 1.2rem !important;
}

.pagemenu ul {
	width: 100%;
	flex-wrap: wrap;
}

.pagemenu ul li {
	width: 48%;
	margin: 0 auto 20px;
}

.cmnbtn {
	margin-bottom: 40px;
}


/*--------------------------------------------------*/
.consulImageList {
	display: block;
}

.consulImageList li {
	width: 100%;
	margin: 0 0 20px;
}

.table-sk, .table-sk2 {
	font-size: .8rem;
}

.table-sk th, .table-sk2 th,
.table-sk td, .table-sk2 td {
	padding: 8px 4px;
}

.table-sk td:nth-of-type(1) {
	width: 66%;
	padding: 8px 16px 8px 4px;
}

.catListUl {
	display: block;
}

.catListUl li {
	width: 100%;
}

.catListUl2 {
	display: flex;
}

.catListUl2 li {
	width: 48%;
	margin: 0 1% 20px;
}

.catListUl2 li a{
 padding:	0.6rem 0;
	font-size: 0.8rem;
}

.heartfull_support {
	display: block;
}

.heartfull_support div {
	width: 100%;
	margin: 40px 0;
}

.heartfull_support_chirashi {
	font-size: 1.2rem;
}

.heartfull_support_chirashi p {
	background: linear-gradient(transparent 80%, #fff799 80%);
}

.btn-copy {
	font-size: 1rem;
}

.etcText {
	font-size: .8rem;
}

.sutiru {
	margin: 0 auto;
}

.sutiru td {
	display: block;
	margin-bottom: 20px;
	text-align: center;
}

.superreformLead {
	font-size: 1.2rem;
}

.superreformLead p {
	background: linear-gradient(transparent 80%, #fff799 80%);
}

.superreformTokutyo {
	display: block;
}

.superreformTokutyo div {
	width: 100%;
}

.superreformTokutyo div dt {
	font-size: 1.2rem;
}

.jireiLead {
    font-size: 16px;
    font-weight: 500;
    background-color: #FFFDDD;
    padding: 10px;
}

/*--------------------------------------------------*/
.table-ek th,
.table-ek td {
	display: block;
	width: 100%;
}

.table-ek th {
	padding: 16px 36px 16px 50px;
}

.table-ek td {
	padding: 0 16px 16px;
}

.table-ek th::after {
	left: 0;
}

.messageBox {
	flex-direction: row;
	flex-wrap: wrap;
}

.messageBox div:nth-child(1) {
	order: 2;
	width: 100%;
	margin-top: 20px;
	margin-right: 0;
}

.messageBox div:nth-child(1) img {
	width: 200px;
	height: auto;
	display: block;
	margin: 0 auto;
}

.messageBox div:nth-child(2) {
	order: 1;
	width: 100%;
}

.table-gy th,
.table-gy td {
	display: block;
	width: 100%;
	padding: 8px;
}

.table-gy th {
	border-right: none;
}

.table-gy td dl dt {
	width: 60%;
}

.table-gy td dl dd {
	width: 40%;
	text-align: right;
}

.table-kr th {
	display: none;
}

.table-kr tr {
	display: block;
	margin: 0 0 20px;
}

.table-kr td {
	position: relative;
	display: block;
	width: 100%;
	padding: 8px;
}

.table-kr td:first-child {
	background-color: #EEE;
}

.table-kr tr:nth-of-type(3) td:nth-child(3) {
	display: none;
}

.rinenBox {
	display: block;
	padding: 0 20px 30px;
	background: url(../image/rinen_back.jpg) no-repeat 40% 0;
	background-size: cover;
}

.rinenBox .image {
	width: 100%;
	margin: 0 0 20px;
}

.rinenBox .text {
	width: 100%;
	padding: 30px 10px;
	background-color: rgba(161, 196, 223, .2);
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.rinenBox .text h3 {
	padding: 0 20px 12px;
	font-size: 1.7rem !important;
	letter-spacing:0.08em;
	background-color: transparent;
	background: url(../image/rinen_line.png) no-repeat 0 100%;
	color: #0A477A;
	font-weight: 900 !important;
}

.rinenBox .text h3:before {
	background-color: transparent;
}

.rinenBox .text h3 span.en {
	display: block;
	font-size: 1.3rem;
	margin-left: 0;
	color: #666;
	letter-spacing: 0.05em;
	font-style: italic;
}

.rinenBox .text p {
	margin: 0 0 40px;
	font-weight: 500;
	line-height: 1.5;
	font-size: 1.1rem !important;
}

.rinenBox .text p:nth-of-type(3) {
	margin-bottom: 0;
}


/*.rinenBox {
	display: block;
}

.rinenBox .photo {
	position: relative;
	width: 100%;
}

.rinenBox .photo:after {
	position: absolute;
	bottom: -28px;
	left: 0;
	font-size: 5rem;
	font-family: "Arial Black", Gadget, sans-serif;
	color: #EEE;
	z-index: -1;
 transform: skew(-10deg);
}

.rinenBox .photo {
	width: 100%;
	position: relative;
	margin: 0 0 60px;
}

.rinenBox .photo:before {
	content: "";
	position: absolute;
	width: 60px;
	height: 60px;
	background-color: #CFE0EF;
	bottom: -20px;
	right: 30px;
 -webkit-transform: skew(-12deg);
 transform: skew(-12deg);
	z-index: -1;
}

.rinenBox .photo img {
	max-width: 100%;
	height: auto;
}

.rinenBox .text {
	width: 100%;
	margin: 20px 0 0;
}

.rinenBox .text h3 {
	margin: 0;
	font-size: 22px !important;
 padding: 0.5rem 1.5rem 0.3rem;
 -webkit-transform: skew(-10deg);
 transform: skew(-10deg);
 color: #fff;
	letter-spacing: 0.1em;
 background-image: -webkit-gradient(linear, left top, right top, from(#0e65ae), to(#68e0cf));
 background-image: -webkit-linear-gradient(left, #0e65ae 0%, #68e0cf 100%);
 background-image: linear-gradient(to right, #0e65ae 0%, #68e0cf 100%);
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}

.rinenBox .text h3:before {
	background-color: transparent;
}

.rinenBox .text h3:after {
	position: absolute;
	top: -28px;
	right: 0;
	text-align: right;
	content: "";
	width: 100%;
	height: 100%;
	color: #CFE0EF;
	font-size: 30px;
	font-weight: bold;
}

.rinenBox .text p {
	margin: 20px 0 0;
	font-size: 16px;
}

.rinenBox .text h3.c1:after {
	content: "Industry Innovation";
}

.rinenBox .text h3.c2:after {
	content: "Management Innovation";
}

.rinenBox .text h3.c3:after {
	content: "Self Innovation";
}
*/

/*--------------------------------------------------*/
.voiceBox .boxl {
	display: block;
	width: 100%;
	margin-bottom: 40px;
}

.voiceBox .boxl .image, .voiceBox .boxr .image {
	display: block;
	width: 100%;
	margin-bottom: 20px;
}

.voiceBox .boxl .text h2 {
	margin: 0 0 20px;
	padding: 0 0 8px;
}

.voiceBox .boxl .text div {
	padding: 0;
}

.voiceBox .boxr {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 40px;
}

.voiceBox .boxr .image {
	order: 1;
}

.voiceBox .boxr .text {
	display: block;
	width: 100%;
	padding: 0;
	order: 2;
}

.voiceBox .boxl .text {
	padding: 0;
}

.voiceBox .boxr .text div {
	padding: 0;
}

.voiceBox .boxr .text h2 {
	margin: 0 0 20px;
}

.voiceBox .boxl .image::before {
	left: -10px;
}

.voiceBox .boxr .image::before {
	right: -10px;
}

.charmBox .boxl {
	display: block;
	width: 100%;
	margin: 0 0 40px;
}

.charmBox .boxr {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 0 40px;
}

.charmBox .boxl .image, .charmBox .boxr .image {
	display: block;
	width: 80%;
	margin: 0 auto;
}

.charmBox .boxr .image {
	order: 1;
	width: 80%;
}

.charmBox .boxr .text {
	order: 2;
}

.charmBox .boxl .image img,
.charmBox .boxr .image img {
	display: block;
	margin: 0 auto;
}

.charmBox .boxl .text,
.charmBox .boxr .text {
	display: block;
	width: 100%;
}

.charmBox .boxl .text h2 {
	padding: 8px;
	margin: 0 0 20px;
	font-size: 1rem;
}

.charmBox .boxl .text div {
	padding: 0;
}

.charmBox .boxr .text h2 {
	margin: 0 0 20px;
	padding: 8px 8px 8px 16px;
	font-size: 1rem;
}

.charmImage {
	display: block;
	width: 100%;
	margin: 80px 0 0;
}

.charmImage li {
	width: 100%;
	max-width: 100%;
	margin: 0 0 20px;
}

.charmLead {
	text-align: left;
}

.charmBox .boxl .text {
	padding: 0;
}

.charmBox .boxr .text div {
	padding: 0;
}

.charmBox .boxl .text h2:before {
	right: 0;
}

.table-rct {
	margin-bottom: 40px;
}

.table-rct th,
.table-rct td {
	display: block;
	width: 100%;
	padding: 8px;
}

.table-rct th {
	border-right: none;
}

.recSend {
	width: 100%;
	margin: 0 auto 10px;
}

.recSend dt {
	margin: 0;
}

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

.table-inq th {
	display: block;
	width: 100%;
	padding: 8px;
}

.table-inq td {
	display: block;
	width: 100%;
	padding: 8px;
}

.table-inq td textarea,
.table-inq td input {
	width: 90%;
}

.table-inq td input[type="radio"],
.table-inq td input[type="checkbox"] {
	width: auto;
}

.table-inq td .zip input {
	width: 30%;
}

.table-inq td .telnum input {
	width: 30%;
}

.table-inq td label {
	display: block;
	margin-bottom: 8px;
}

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

#privacy {
	width: 100%;
}

/*--------------------------------------------------*/
.blogListPage {
	display: block;
}

.blogListPage dt {
	width: 100%;
	text-align: left;
	margin: 0;
	padding: 12px 8px 0;
}

.blogListPage dd {
	width: 100%;
}

.blogListPage dd:after {
	display: none;
}

.blogListPage dd a {
	padding: 12px 8px 12px 8px;
}

.pager_wrap ul.pager li a {
	padding: 5px 10px;
}

.pager_wrap ul.pager li.active {
	padding: 5px 10px;
}

.blogcolumn2 {
	display: block;
}

.blogcolumn2 .blogSec {
	width: 100%;
}

.blogcolumn2 .blogside {
	width: 100%;
}

.wnText {
	margin: 0 0 20px;
	padding: 16px;
}

.wnText p {
	margin: 0;
}


/*--------------------------------------------------*/
#site ul {
	width: 100%;
	padding: 0;
}

#site ul li ul li ul li a {
	margin-left: 2rem;
}

/*lease--------------------------------------------------*/
.mgt table {
width: 100%;
margin: 0 auto 10px;
border-bottom: 1px dotted #CCC;
}

.mgt table th {
width: 50px;
vertical-align: top;
}

.mgt table th img {
width: 40px;
}

.mgt table td {
font-size: 0.8rem;
}

/*.pointTitle {
position: relative;
padding: 8px;
border-bottom: 3px solid #d8d8d8;
font-weight: 500;
}

.pointTitle:before {
  position: absolute;
  bottom: -14px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #d8d8d8 transparent transparent transparent;
}

.pointTitle:after {
  position: absolute;
  bottom: -10px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 14px 12px 0 12px;
  border-style: solid;
  border-color: #f9f9f9 transparent transparent transparent;
}*/

/*index--------------------------------------------------*/
.service-item .position-relative {
	position: static !important;
}

.img-h {
	background-color: #e6e6e6;
	position: static !important;
}

.img-h-1,
.img-h-2,
.img-h-3,
.img-h-4 {
	background-image: none !important;
}

.indexsimg {
	margin: 0 1px;
	display: block;
	position: static;
}

.indexsimg img {
	max-width: 100%;
	height: auto;
}

.note-box {
	position: static !important;
	width: 100%;
 transform: none;
 left: 0;
 top: 0;
}

.img-company.position-relative {
	position: static !important;
}

.company-container {
	height: auto;
}

.img-company {
	height: auto;
	background-image: none;
}

.indexcimg img {
	max-width: 100%;
	height: auto;
}

.img-recruit {
	height: auto;
	background-image: none;
}

.indexrimg img {
	max-width: 100%;
	height: auto;
}

.link-container {
	margin-top: -5rem;
}

}


@media screen and (max-width: 580px){
.indexsimg {
	margin: -6rem 1px 0;
}

.img-h-1 .indexsimg {
	margin: 0 1px;
}

.img-h-2 .indexsimg,
.img-h-3 .indexsimg,
.img-h-4 .indexsimg {
	margin: -10rem 1px 0;
}

.bg-service > div:first-child {
	height: 2800px;
}


}

