﻿@charset "utf-8";
@import url("header.css");
@import url("footer.css");

/*------------------------------------------------*/
/*  template ver1.0  */
/*------------------------------------------------*/
/*  templatename [--]  */
/*  update []  */
/*  ID [NT]  */
/*------------------------------------------------*/
/*　All Reset　*/
/* -----------------------------------------------*/
* {
    color: #000000;
    line-height: 1.0;
    letter-spacing: 2.0px;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
li,
dl,
dt,
dd {
    margin: 0;
    padding: 0;
    font-weight: 300;
    word-break: break-all;
}

ul,
li {
    list-style: none;
}

input[type="button"],
input[type="submit"],
select {
    border-radius: 0;
    -webkit-appearance: none;
}

html #wpadminbar {
    overflow: hidden;
}


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

/*　Base Set　*/
/* -----------------------------------------------*/
body {
    margin: 0;
    padding: 0;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
    font-weight: 300;
    background: #ffffff;
    overflow-y: scroll;
}

body.customize-support {
    /*    padding-top:32px;*/
    padding-top: 0;
}

@media screen and (max-width:782px) {
    body.customize-support {
        padding-top: 46px;
    }
}

@media screen and (max-width:1150px) {
    body {
        min-width: inherit;
        -webkit-text-size-adjust: 100%;
        font-weight: normal;
    }
}

img {
    border: none;
}

a {
    color: #000000;
}

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

a:hover {
    color: #505050;
}

/*　Clearfix　*/
/* -----------------------------------------------*/
.clearfix::after {
    content: " ";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
    line-height: 0;
}

.clearfix {
    display: inline-table;
}

/* Hides from IE-mac \*/
* html .clearfix {
    height: 1%;
}

/* End hide from IE-mac */
.clear_br {
    overflow: hidden;
}

* html .clear_br {
    height: 1%;
}

/*　font_reset　*/
/* -----------------------------------------------*/
.freset {
    font-size: 1px;
}

/*　pos_set　*/
/* -----------------------------------------------*/
.pos_set {
    position: relative;
}

.inline {
    display: inline-block;
    vertical-align: middle;
}

/*　レイアウト要素 共通　*/
/* -----------------------------------------------*/
.fl_L {
    float: left;
}

.fl_R {
    float: right;
}

.sp_only {
    display: none;
}

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

.fit img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 50%;
    font-family: 'object-fit: cover; object-position: center 50%;'
}

@media screen and (max-width:1150px) {
    .fl_L {
        float: none;
    }

    .fl_R {
        float: none;
    }

    .sp_only {
        display: block;
    }
}

/*　loading　*/
/* -----------------------------------------------*/
#loader-bg {
    width: 100%;
    height: 100%;
    display: table;
    text-align: center;
    background: #ffffff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
}

body.noneload #loader-bg {
    display: none !important;
}

#loading {
    width: 100%;
    display: table-cell;
    vertical-align: middle;
}

#loading p.logo {
    width: 229px;
    height: 80px;
    display: inline-block;
}

.svg #loading p.logo {
    background: url(../images/logo.svg) center no-repeat;
    background-size: auto 80px;
}

.no-svg #loading p.logo {
    background: url(../images/logo.png) center no-repeat;
    background-size: auto 80px;
}

@media screen and (max-width:1150px) {
    #loading p.logo {
        width: 104px;
        height: 36px;
    }

    .svg #loading p.logo {
        background: url(../images/logo.svg) center no-repeat;
        background-size: auto 36px;
    }

    .no-svg #loading p.logo {
        background: url(../images/logo.png) center no-repeat;
        background-size: auto 36px;
    }
}

/*　Opening　*/
/* -----------------------------------------------*/
div#topfull {
    margin: 0 auto;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: #000000;
    position: relative;
}

div#topfull .inner {
    margin-top: 80px;
    width: 100%;
    height: 100%;
    display: table;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

div#topfull .inner .copy_txt {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    z-index: 2;
}

div#topfull .inner .copy_txt .subtext i {
    margin: 01px;
    display: inline-block;
    color: #ffffff;
    font-size: 24px;
    font-weight: 500;
    font-style: normal;
    line-height: 1.8;
}

div#topfull .inner .copy_txt .maintext {
    margin-top: 10px;
}

div#topfull .inner .copy_txt .maintext i {
    margin: 0 2px;
    display: inline-block;
    color: #73b12b;
    font-size: 46px;
    font-weight: 500;
    font-style: normal;
    line-height: 1.8;
}

div#topfull .inner .copy_txt p img {
    width: 680px;
}

div#topfull .inner .logoset {
    margin-top: -65px;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0%;
    z-index: 2;
}

div#topfull .inner .toplogo {
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
}

.svg div#topfull .inner .toplogo {
    width: 371px;
    height: 130px;
    display: inline-block;
    background: url(../images/logo_white.svg) center no-repeat;
    background-size: auto 130px;
}

.no-svg div#topfull .inner .toplogo {
    width: 371px;
    height: 130px;
    display: inline-block;
    background: url(../images/logo_white.png) center no-repeat;
    background-size: auto 130px;
}

div#topfull .naviset {
    width: 100%;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    position: absolute;
    top: 100px;
    right: 30px;
    z-index: 2;
}

div#topfull .naviset .inner {
    margin: 0 auto;
    width: 100%;
    max-width: 1600px;
    text-align: right;
}

div#topfull .naviset ul {
    display: inline-block;
}

div#topfull .naviset ul li {
    display: inline-block;
}

div#topfull .naviset ul li a {
    padding: 10px 15px 15px 15px;
    display: block;
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    text-decoration: none;
    position: relative;
}

div#topfull .naviset ul li a::after {
    margin-left: -15px;
    display: inline-block;
    width: 30px;
    height: 1px;
    content: "";
    background: #73b12b;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

div#topfull .naviset ul li a:hover::after {
    margin-left: -25px;
    width: 50px;
}

div#topfull div.movieset video {
    width: auto;
    height: 100%;
    min-width: 100%;
    min-height: 100%;
    filter: alpha(opacity=40);
    -moz-opacity: 0.4;
    opacity: 0.4;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

div#topfull div.movieset.wideset video {
    width: 100%;
    height: auto;
}

div#topfull div.topslide {
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: none;
    background: #000000;
    position: absolute;
    top: 0;
    left: 0;
}

@media screen and (max-width:1150px) {
    div#topfull .inner {
        margin-top: 40px;
    }

    div#topfull .inner .copy_txt p img {
        width: 80%;
        max-width: 600px;
    }

    div#topfull .inner .logoset {
        margin-top: -40px;
    }

    .svg div#topfull .inner .toplogo {
        width: 144px;
        height: 50px;
        display: inline-block;
        background: url(../images/logo_white.svg) center no-repeat;
        background-size: auto 50px;
    }

    .no-svg div#topfull .inner .toplogo {
        width: 144px;
        height: 50px;
        display: inline-block;
        background: url(../images/logo_white.png) center no-repeat;
        background-size: auto 50px;
    }

    div#topfull div.movieset {
        display: none;
    }

    div#topfull div.topslide {
        display: block;
    }

    /*　zoomslider　*/
    /* -----------------------------------------------*/
    .slidewrap {
        width: 100%;
        height: 100%;
        position: relative;
        filter: alpha(opacity=50);
        -moz-opacity: 0.5;
        opacity: 0.5;
        z-index: 1;
    }

    .slideshow {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: hidden;
    }

    .slideshow .item {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        display: none;
        background-size: cover;
        background-position: center;
    }

    .in {
        -webkit-transform: scale(1);
        transform: scale(1);
        z-index: 2;
    }

    .out {
        -webkit-transform: scale(1.15);
        transform: scale(1.15);
        -webkit-transition: 4s;
        transition: 4s;
        z-index: 1;
    }

    .title {
        display: none;
    }
}

/*　Wrapper　*/
/* -----------------------------------------------*/
div#Wrapper {
    margin: 0 auto;
    width: 100%;
    text-align: center;
    position: relative;
}


/*　pagetitle　*/
/* -----------------------------------------------*/
div#pagetitle {
    margin: 68px auto 0 auto;
    width: 100%;
    height: 400px;
    display: table;
    text-align: center;
    position: relative;
}

.svg div#pagetitle {
    background: #000000 url(../images/logo_page.svg) center no-repeat;
    background-size: 300px auto;
}

.no-svg div#pagetitle {
    background: #000000 url(../images/logo_page.png) center no-repeat;
    background-size: 300px auto;
}

div#pagetitle .inner {
    width: 100%;
    height: 400px;
    display: table-cell;
    vertical-align: middle;
    position: relative;
    z-index: 2;
}

div#pagetitle h2 {
    color: #ffffff;
    font-size: 40px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 5px;
    text-indent: 5px;
}

div#pagetitle p {
    color: #73b12b;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 15px;
    text-indent: 15px;
}

div#pagetitle i {
    width: 100%;
    height: 400px;
    filter: alpha(opacity=30);
    -moz-opacity: 0.3;
    opacity: 0.3;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

div#pagetitle.company i {
    background: url(../images/pagetitle_company.jpg) center no-repeat;
    background-size: 100% auto;
}

div#pagetitle.compass i {
    background: url(../images/pagetitle_compass.jpg) center no-repeat;
    background-size: 100% auto;
}

@media screen and (max-width:1150px) {
    div#pagetitle {
        height: 300px;
        margin-top: 56px;
    }

    .svg div#pagetitle {
        background: #000000 url(../images/logo_page.svg) center no-repeat;
        background-size: auto 30%;
    }

    .no-svg div#pagetitle {
        background: #000000 url(../images/logo_page.png) center no-repeat;
        background-size: auto 30%;
    }

    div#pagetitle .inner {
        height: 300px;
    }

    div#pagetitle h2 {
        font-size: 20px;
    }

    div#pagetitle p {
        font-size: 12px;
        letter-spacing: 5px;
        text-indent: 5px;
    }

    div#pagetitle i {
        height: 300px;
        filter: alpha(opacity=30);
        -moz-opacity: 0.3;
        opacity: 0.3;
    }

    div#pagetitle.company i {
        background: url(../images/pagetitle_company.jpg) center no-repeat;
        background-size: auto 100%;
    }

    div#pagetitle.compass i {
        background: url(../images/pagetitle_compass.jpg) center no-repeat;
        background-size: auto 100%;
    }
}

/*　pagedata　*/
/* -----------------------------------------------*/
div#pagedata {
    margin: 0 auto;
    width: 90%;
    position: relative;
    z-index: 2;
}

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

/*　pankuzu　*/
/* -----------------------------------------------*/
div.pankuzu {
    width: 40%;
    overflow: hidden;
    float: left;
    font-size: 12px;
    line-height: 1.8;
    text-align: left;
    margin-top: -70px;
}

body.news div.pankuzu {
    width: 100%;
}

div.pankuzu span a {
    margin-left: 15px;
    padding-left: 20px;
    display: inline-block;
    color: #73b12b;
    font-size: 12px;
    line-height: 1.8;
    background: url(../images/icon_arrR_bl.png) left no-repeat;
    background-size: 10px auto;
}

div.pankuzu span span {
    margin-left: 15px;
    padding-left: 20px;
    display: inline-block;
    color: #000;
    font-size: 12px;
    line-height: 1.8;
    background: url(../images/icon_arrR_bl.png) left no-repeat;
    background-size: 10px auto;
}

div.pankuzu span a span {
    margin-left: 0;
    padding-left: 0;
    color: #73b12b;
    font-size: 12px;
    line-height: 1.8;
    background: none;
}

div.pankuzu a.top {
    display: inline-block;
    color: #73b12b;
    font-size: 12px;
    line-height: 1.8;
}

@media screen and (max-width:1150px) {
    div.pankuzu {
        margin: 0 auto;
        width: 100%;
        height: 20px;
        float: inherit;
        font-size: 10px;
        position: absolute;
        top: -40px;
        left: 0%;
    }

    body.news div.pankuzu {
        width: 90%;
    }

    div.pankuzu span a {
        margin-left: 10px;
        padding-left: 20px;
        display: inline-block;
        color: #73b12b;
        font-size: 10px;
        line-height: 1.8;
        background: url(../images/icon_arrR_wh.png) left no-repeat;
        background-size: 10px auto;
    }

    div.pankuzu span span {
        margin-left: 15px;
        padding-left: 20px;
        display: inline-block;
        color: #ffffff;
        font-size: 10px;
        line-height: 1.8;
        background: url(../images/icon_arrR_wh.png) left no-repeat;
        background-size: 10px auto;
    }

    div.pankuzu span a span {
        margin-left: 0;
        padding-left: 0;
        color: #73b12b;
        font-size: 10px;
        line-height: 1.8;
        background: none;
    }

    div.pankuzu a.top {
        display: inline-block;
        color: #73b12b;
        font-size: 10px;
        line-height: 1.8;
    }
}

/*　pagenavi　*/
/* -----------------------------------------------*/
div#pagenavi {
    margin-top: -50px;
    float: right;
    text-align: right;
}

div#pagenavi ul {
    width: 100%;
    text-align: right;
    letter-spacing: -.4em;
}

div#pagenavi ul li {
    margin-left: 30px;
    display: inline-block;
    text-align: center;
    letter-spacing: 2.0px;
}

div#pagenavi ul li a {
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    text-decoration: none;
}

div#pagenavi ul li span,
div#pagenavi ul li a.current,
body.news div#pagenavi ul li a[aria-current="page"] {
    display: block;
    color: #73b12b;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    position: relative;
    pointer-events: none;
}

div#pagenavi ul li span::after,
div#pagenavi ul li a.current::after,
body.news div#pagenavi ul li a[aria-current="page"]::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 50%;
    display: block;
    width: 0;
    height: 0;
    margin-left: -8px;
    border-left: 8px solid rgba(0, 0, 0, 0);
    border-right: 8px solid rgba(0, 0, 0, 0);
    border-bottom: 8px solid #ffffff;
}

@media screen and (min-width:1151px) {
    div#pagenavi {
        position: absolute;
        right: 0;
        bottom: 0;
    }

    div#pagenavi ul li a,
    div#pagenavi ul li span {
        display: block;
        margin-bottom: 0;
        padding: 10px 0 10px 0;
    }
}

@media screen and (max-width:1150px) {
    div#pagenavi {
        margin-top: 30px;
        width: 100%;
        float: inherit;
        text-align: left;
    }

    div#pagenavi ul {
        text-align: left;
        border-top: #e2e2e2 solid 1px;
        box-sizing: border-box;
    }

    div#pagenavi ul li {
        margin-left: 0;
        display: block;
        text-align: center;
        letter-spacing: 2.0px;
    }

    div#pagenavi ul li a {
        padding: 10px 0;
        display: block;
        color: #444444;
        font-size: 12px;
        border-bottom: #e2e2e2 solid 1px;
        box-sizing: border-box;
        background: #f8f8f8;
    }

    div#pagenavi ul li span,
    div#pagenavi ul li a.current,
    body.news div#pagenavi ul li a[aria-current="page"] {
        padding: 10px 0;
        display: block;
        overflow: hidden;
        font-size: 12px;
        background-color: #ffffff;
        border-bottom: #e2e2e2 solid 1px;
        box-sizing: border-box;
    }

    div#pagenavi ul li span::after,
    div#pagenavi ul li a.current::after,
    body.news div#pagenavi ul li a[aria-current="page"]::after {
        content: "▲";
        top: 0;
        left: 0;
        width: 40px;
        height: 40px;
        color: #73b12b;
        line-height: 40px;
        text-align: center;
        border: none;
        border-radius: 50%;
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }
}

@media screen and (max-width:600px) {
    html #wpadminbar {
        position: fixed;
        top: 0;
    }
}

/*　layout　*/
/* -----------------------------------------------*/
div.container {
    margin: 0 auto;
    padding-bottom: 30px;
    width: 100%;
    text-align: center;
    background: #ffffff;
}

div.container div.wideblock {
    margin: 0 auto;
    width: 90%;
    max-width: 1600px;
    text-align: center;
}

div.container div.wideblock .contents {
    margin: 120px auto 50px auto;
    padding-bottom: 50px;
    width: 100%;
    text-align: left;
    -webkit-box-shadow: 0 20px 20px 0 #cecece;
    /* Safari, Chrome用 */
    -moz-box-shadow: 0 20px 20px 0 #cecece;
    /* Firefox用 */
    box-shadow: 0 20px 20px 0 #cecece;
    /* CSS3 */
}

div.container div.wideblock .innertext {
    margin: 30px auto 0 auto;
    width: 90%;
    text-align: left;
}

div.container div.wideblock .innertext .leadM {
    padding: 10px 0;
}

div.container div.wideblock .innertext .imgR {
    text-align: right;
}

div.container div.wideblock .innertext .imgR img {
    height: 70px;
}

/* ニュース */
div.container .newsset {
    margin: 40px auto 80px auto;
    width: 100%;
    display: table;
}

div.container .ir .newsset {
    margin: 0 auto;
}

div.container .newsset .ttlset {
    width: 35%;
    display: table-cell;
    vertical-align: middle;
    background: #f8f8f8;
}

div.container .newsset .ttlset .ttl {
    padding: 50px 0;
    color: #403632;
    font-size: 36px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 5px;
    text-indent: 5px;
}

div.container .newsset .ttlset .ttl span {
    padding-top: 10px;
    display: block;
    color: #73b12b;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 2px;
    text-indent: 2px;
}

div.container .newsset .entryset {
    width: 65%;
    display: table-cell;
    vertical-align: middle;
}

div.container .newsset .entryset .inner {
    padding-left: 50px;
}

div.container .newsset .entryset ul.tabmenu {
    width: 100%;
}

div.container .newsset .entryset ul.tabmenu li {
    width: 33.33333%;
    float: left;
}

div.container .newsset .entryset ul.tabmenu.ir li {
    width: 25%;
}

div.container .newsset .entryset ul.tabmenu li p {
    width: 100%;
    height: 55px;
    font-size: 13px;
    font-weight: 500;
    line-height: 55px;
    cursor: pointer;
    border-bottom: #e2e2e2 solid 1px;
    border-left: #e2e2e2 solid 1px;
    border-top: #e2e2e2 solid 1px;
    box-sizing: border-box;
    position: relative;
}

div.container .newsset .entryset ul.tabmenu li p:hover {
    color: #666666;
}

div.container .newsset .entryset ul.tabmenu li:last-child p {
    border-right: #e2e2e2 solid 1px;
}

div.container .newsset .entryset ul.tabmenu li.select p {
    border-bottom: none;
}

div.container .newsset .entryset ul.tabmenu li.select p::after {
    margin-left: -25px;
    display: inline-block;
    width: 50px;
    height: 2px;
    content: "";
    background: #73b12b;
    position: absolute;
    bottom: 0;
    left: 50%;
}

div.container .newsset .entryset ul.tabcontents {
    width: 100%;
}

div.container .newsset .entryset ul.tabcontents li {
    width: 100%;
}

div.container .newsset .entryset ul.tabcontents li.hide {
    display: none;
}

div.container .newsset table {
    margin: 30px 0;
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 0 !important;
}

div.container .newsset table tr.blank,
div.container .newsset table tr.inlink {
    cursor: pointer;
}

div.container .newsset table tr:hover {
    background: #f8f8f8;
}

div.container .newsset table td {
    padding: 15px 0;
    font-size: 13px;
    line-height: 1.8;
    border-bottom: #e2e2e2 solid 1px;
    box-sizing: border-box;
}

div.container .newsset table tr:last-child td {
    border-bottom: none;
}

div.container .newsset table td p {
    padding-bottom: 10px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .newsset table td.date {
    width: 13%;
    text-align: center;
    white-space: nowrap;
}

div.container .newsset.languageEn table td.date {
    box-sizing: border-box;
    padding: 15px 1.0em;
    width: 16.0em;
    text-align: left;
    white-space: nowrap;
}

div.container .newsset table td.cate {
    width: 20%;
    text-align: center;
}

div.container .newsset table td.entry {
    width: 67%;
    text-align: left;
}

div.container .newsset table td.entry.wide {
    width: 87%;
}

div.container .newsset.languageEn table td.entry.wide {
    box-sizing: border-box;
    padding: 15px 1.0em;
    width: -webkit-calc(100% - 16.0em);
    width: calc(100% - 16.0em);
}

div.container .newsset table td.thumimg {
    width: 25%;
    text-align: center;
}

div.container .newsset table td.thumimg img {
    width: 70%;
}

div.container .newsset table td.entry_thum {
    width: 62%;
    text-align: left;
}

div.container .newsset table td.cate span {
    width: 70%;
    display: inline-block;
    color: #73b12b;
    font-size: 12px;
    line-height: 25px;
    border: #73b12b solid 1px;
    box-sizing: border-box;
}

div.container .newsset .block ul {
    width: 100%;
}

div.container .newsset .block ul li {
    width: 50%;
    float: left;
    border-right: #e2e2e2 solid 1px;
    border-top: #e2e2e2 solid 1px;
    box-sizing: border-box;
    position: relative;
}

div.container .newsset .block ul li:nth-child(2n) {
    border-right: none;
}

div.container .newsset .block ul li:nth-child(1),
div.container .newsset .block ul li:nth-child(2) {
    border-top: none;
}

div.container .newsset .block ul li a {
    width: 100%;
    height: 100%;
    display: block;
    text-decoration: none;
}

div.container .newsset .block ul li a:hover {
    background: #f8f8f8;
}

div.container .newsset .block ul li .inner {
    width: 100%;
    height: 100%;
    display: table;
}

div.container .newsset .block ul li .inner .imgset {
    width: 50%;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

div.container .newsset .block ul li .inner .imgset img {
    margin: 30px 0;
    width: 80%;
}

div.container .newsset .block ul li .inner .entryset {
    width: 50%;
    display: table-cell;
    vertical-align: middle;
}

div.container .newsset .block ul li .inner .entryset p {
    padding: 0 30px 0 0;
    font-size: 13px;
    line-height: 1.8;
    text-align: left;
}

div.container .newsset .block ul li .inner .entryset p strong {
    padding-bottom: 20px;
    display: block;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .newsset .block ul li .date {
    font-size: 13px;
    line-height: 1.8;
    position: absolute;
    top: 20px;
    left: 50%;
}

div.container .newsset.report .block ul li .date {
    left: 35%;
}

body#page div.container .newsset {
    margin: 0 auto;
    width: 90%;
    display: block;
}

div.container .newsset.vertop .block ul li .inner .imgset {
    vertical-align: top;
}

div.container .newsset.vertop .block ul li .inner .entryset {
    vertical-align: top;
}

div.container .newsset.vertop .block ul li .inner .entryset p {
    padding: 0 30px 30px 0;
}

div.container .newsset.vertop .block ul li .inner .entryset p strong {
    padding-top: 50px;
}

div.container .newsset.report .block ul li .inner .imgset {
    width: 35%;
}

div.container .newsset.report .block ul li .inner .imgset img {
    max-width: 125px;
}

div.container .newsset.report .block ul li .inner .entryset {
    width: 65%;
}

/* カテゴリリンク */
div.container .categoryset {
    margin: 0 auto;
    width: 100%;
}

div.container .categoryset ul {
    display: -moz-flex;
    display: -ms-flex;
    display: -webkit-flex;
    display: flex;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkir-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
}

div.container .categoryset ul li {
    position: relative;
    margin-top: 100px;
    width: 28%;
    padding-bottom: 70px;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    border: #939393 solid 1px;
    box-sizing: border-box;
    background: #ffffff;
}

div.container .categoryset ul li:nth-child(-n+3) {
    margin-top: 20px;
}

div.container .categoryset ul li a {
    width: 100%;
    height: 100%;
    display: block;
    text-decoration: none;
}

div.container .categoryset ul li .imgset {
    padding-top: 50%;
    width: 100%;
    height: 1rem;
    display: block;
    content: "";
    position: relative;
}

div.container .categoryset ul li .ttl {
    margin-top: -50px;
    color: #73b12b;
    font-family: 'Saira Semi Condensed', sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 5px;
    text-indent: 5px;
    position: relative;
}

div.container .categoryset ul li .ttl span {
    display: block;
    color: #73b12b;
    /*font-family:'Noto Sans Japanese', sans-serif;*/
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
    position: relative;
}

div.container .categoryset ul li .ttl span:before {
    margin-left: -125px;
    display: inline-block;
    width: 30px;
    height: 1px;
    content: "";
    background: #73b12b;
    position: absolute;
    top: 50%;
    left: 50%;
}

div.container .categoryset ul li .ttl span::after {
    margin-right: -125px;
    display: inline-block;
    width: 30px;
    height: 1px;
    content: "";
    background: #73b12b;
    position: absolute;
    top: 50%;
    right: 50%;
}

div.container .categoryset ul li .lead {
    padding: 30px 30px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    text-align: left;
}

div.container .categoryset ul li .more {
    position: absolute;
    bottom: 20px;
    width: 100%;
}

div.container .categoryset ul li .more span {
    margin: 0 30px;
    padding: 10px 0;
    display: block;
    font-family: 'Saira Semi Condensed', sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    border: #000000 solid 1px;
    box-sizing: border-box;
    background: url(../images/icon_arrR_bl.png) 90% 50% no-repeat;
    background-size: 15px auto;
}

div.container .categoryset ul li a:hover .more span {
    color: #73b12b;
    border: #73b12b solid 1px;
    box-sizing: border-box;
    background: url(../images/icon_arrR_gr.png) 90% 50% no-repeat;
    background-size: 15px auto;
}

/* 沿革 */
div.container .historyset {
    margin: 50px auto 0 auto;
    width: 90%;
}

div.container .historyset .yearblock {
    padding-bottom: 30px;
    width: 100%;
    display: table;
    position: relative;
}

div.container .historyset .yearblock::after {
    display: inline-block;
    width: 2px;
    height: 30px;
    content: "";
    background: #73b12c;
    position: absolute;
    bottom: 0%;
    left: 15%;
}

div.container .historyset .yearblock:last-child {
    padding-bottom: 0;
}

div.container .historyset .yearblock:last-child::after {
    display: none;
}

div.container .historyset .yearblock .date {
    width: 30%;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    border: #73b12b solid 2px;
    box-sizing: border-box;
}

div.container .historyset .yearblock .date p {
    padding: 20px 0;
    color: #73b12b;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .historyset .yearblock .entry {
    width: 70%;
    display: table-cell;
    vertical-align: middle;
}

div.container .historyset .yearblock .entry .inner {
    padding-left: 50px;
}

div.container .historyset .yearblock .entry .inner p {
    font-size: 13px;
    font-weight: 500;
    line-height: 2.4;
}

div.container .historyset .yearblock .entry .inner p a {
    color: #73b12b;
    font-size: 13px;
    font-weight: 500;
    line-height: 2.4;
}

div.container .historyset .yearblock .entry .inner .inimg {
    width: 100%;
    display: table;
    position: relative;
}

div.container .historyset .yearblock .entry .inner .inimg:nth-child(even) {
    margin-top: 20px;
}

div.container .historyset .yearblock .entry .inner .inimg p {
    width: 70%;
    display: table-cell;
    vertical-align: middle;
}

div.container .historyset .yearblock .entry .inner .inimg span {
    width: 30%;
    display: table-cell;
    vertical-align: middle;
}

div.container .historyset .yearblock .entry .inner .inimg span img {
    margin-left: 10%;
    max-width: 90%;
    -webkit-box-shadow: 10px 10px 10px 0 #cecece;
    /* Safari, Chrome用 */
    -moz-box-shadow: 10px 10px 10px 0 #cecece;
    /* Firefox用 */
    box-shadow: 10px 10px 10px 0 #cecece;
    /* CSS3 */
}

/* トップメッセージ */
div.container .topmessageset {
    margin: 30px auto 0 auto;
    width: 90%;
}

div.container .topmessageset p.text {
    padding: 50px 0;
    display: block;
    font-size: 13px;
    line-height: 2.4;
}

div.container .topmessageset p.text.clear {
    margin-top: -50px;
    padding: 0 0 50px 0;
}

div.container .topmessageset p.text strong {
    margin-bottom: 30px;
    padding: 20px 0;
    display: inline-block;
    font-size: 20px;
    font-weight: 500;
    line-height: 2.4;
    border-bottom: #73b12b solid 1px;
    box-sizing: border-box;
}

div.container .topmessageset p.text strong.mt {
    margin-top: 30px;
}

div.container .topmessageset p.text img {
    margin: 10px 50px 30px 0;
    width: 20%;
    float: left;
}

div.container .topmessageset p.text img.imgR {
    margin: 10px 0 30px 50px;
    width: 30%;
    float: right;
}

div.container .topmessageset p.name {
    font-family: "MS PMincho", serif;
    font-size: 18px;
    line-height: 2.4;
    text-align: right;
}

div.container .topmessageset p.name span {
    margin-right: 20px;
    display: inline-block;
    font-family: "MS PMincho", serif;
    font-size: 13px;
    line-height: 2.4;
}

div.container .topmessageset p.name i {
    display: block;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 13px;
    font-style: normal;
    line-height: 2.4;
    text-align: right;
}

div.container .topmessageset .topMassageImg {
    margin: 70px auto;
    display: block;
    width: 100%;
}

/* 社員紹介 */
div.container .staffset {
    margin: 80px auto 0 auto;
    width: 90%;
}

div.container .staffset ul {
    width: 100%;
}

div.container .staffset ul li {
    width: 50%;
    float: left;
    border-right: #e2e2e2 solid 1px;
    border-top: #e2e2e2 solid 1px;
    box-sizing: border-box;
    position: relative;
}

div.container .staffset ul li:nth-child(2n) {
    border-right: none;
}

div.container .staffset ul li:nth-child(1),
div.container .staffset ul li:nth-child(2) {
    border-top: none;
}

div.container .staffset ul li .inner {
    width: 100%;
    height: 100%;
    display: table;
}

div.container .staffset ul li .inner .imgset {
    width: 40%;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

div.container .staffset ul li .inner .imgset img {
    margin: 30px 0;
    width: 75%;
    max-width: 100px;
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}

div.container .staffset ul li .inner .entryset {
    padding: 30px 0;
    width: 60%;
    display: table-cell;
    vertical-align: middle;
}

div.container .staffset ul li .inner .entryset p {
    padding: 20px 30px 0 0;
    font-size: 13px;
    line-height: 1.8;
    text-align: left;
}

div.container .staffset ul li .inner .entryset p.icon {
    padding: 0 30px 0 100px;
    margin-bottom: 10px;
    position: relative;
}

div.container .staffset ul li .inner .entryset p.icon span {
    padding: 2px 0;
    width: 90px;
    display: inline-block;
    font-size: 12px;
    line-height: 1.8;
    text-align: center;
    vertical-align: middle;
    background: #f8f8f8;
    position: absolute;
    top: 0;
    left: 0;
}

/* 社員データ */
div.container .companydata {
    margin: 50px auto 0 auto;
    width: 90%;
}

div.container .companydata ul {
    width: 100%;
}

div.container .companydata ul li {
    width: 33.33333%;
    float: left;
    text-align: center;
    border-right: #e2e2e2 solid 1px;
    border-top: #e2e2e2 solid 1px;
    box-sizing: border-box;
    position: relative;
}

div.container .companydata ul li:nth-child(3n) {
    border-right: none;
}

div.container .companydata ul li:nth-child(1),
div.container .companydata ul li:nth-child(2),
div.container .companydata ul li:nth-child(3) {
    border-top: none;
}

div.container .companydata ul li .inner {
    padding: 30px 30px 30px 0;
}

div.container .companydata ul li:nth-child(2) .inner,
div.container .companydata ul li:nth-child(5) .inner {
    padding: 30px 30px;
}

div.container .companydata ul li:nth-child(3) .inner,
div.container .companydata ul li:nth-child(6) .inner {
    padding: 30px 0 30px 30px;
}

div.container .companydata ul li .inner .half {
    width: 50%;
    display: inline-block;
    vertical-align: middle;
}

div.container .companydata ul li .ttl {
    padding: 20px 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    background: #f8f8f8;
}

div.container .companydata ul li .num {
    padding-top: 25px;
    color: #73b12b;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 3px;
    text-indent: 3px;
}

div.container .companydata ul li .num.mt {
    margin-top: 30px;
}

div.container .companydata ul li .num strong {
    margin: 10px 50px 10px 50px;
    padding: 10px 0;
    display: block;
    color: #000000;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    border: #000000 solid 1px;
    box-sizing: border-box;
}

div.container .companydata ul li .inner .half .num strong {
    margin: 10px 30px 10px 30px;
}

div.container .companydata ul li .num span {
    margin-left: 10px;
    display: inline-block;
    color: #444444;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .companydata ul li .numlist {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .companydata ul li .numlist.mt {
    margin-top: 30px;
}

div.container .companydata ul li .numlist span {
    margin-right: 5px;
    display: inline-block;
    color: #73b12b;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .companydata ul li .dotlist {
    margin-top: 35px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .companydata ul li .dotlist span {
    margin: 7px 5px;
    padding: 0 10px;
    display: inline-block;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
    background: #f8f8f8;
}

div.container .companydata ul li .logo strong {
    margin-top: 20px;
    padding: 10px 0;
    display: block;
    color: #73b12b;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .companydata ul li .logo img {
    max-width: 100%;
}

div.container .companydata.wset ul li {
    width: 50%;
}

div.container .companydata.wset ul li:nth-child(2n) {
    border-right: none;
}

div.container .companydata.wset ul li:nth-child(3n) {
    border-right: #e2e2e2 solid 1px;
}

div.container .companydata.wset ul li:nth-child(3) {
    border-top: #e2e2e2 solid 1px;
}

div.container .companydata.wset ul li .numlist {
    text-align: left;
}

/* フォトギャラリー */
div.container .gallery {
    margin: 0 auto 50px auto;
    width: 90%;
}

div.container .gallery ul {
    width: 100%;
}

div.container .gallery ul li {
    margin-top: 80px;
    margin-right: 6.66666%;
    width: 20%;
    float: left;
    text-align: center;
}

div.container .gallery ul li:nth-child(4n) {
    margin-right: 0%;
}

div.container .gallery ul li .imgset {
    width: 100%;
    max-width: 210px;
    display: inline-block;
}

div.container .gallery ul li .imgset img {
    width: 100%;
    max-width: 210px;
    -webkit-box-shadow: 10px 10px 10px 0 #cecece;
    /* Safari, Chrome用 */
    -moz-box-shadow: 10px 10px 10px 0 #cecece;
    /* Firefox用 */
    box-shadow: 10px 10px 10px 0 #cecece;
    /* CSS3 */
}

/* サービス概要 */
div.container .servicelist {
    margin: 0 auto;
    width: 90%;
}

div.container .servicelist ul {
    width: 100%;
}

div.container .servicelist ul li {
    margin-right: 4%;
    margin-top: 30px;
    width: 22%;
    float: left;
    position: relative;
}

div.container .servicelist ul li:nth-child(4n) {
    margin-right: 0%;
}

div.container .servicelist ul li:nth-child(1),
div.container .servicelist ul li:nth-child(2),
div.container .servicelist ul li:nth-child(3),
div.container .servicelist ul li:nth-child(4) {
    margin-top: 0;
}

div.container .servicelist ul li a {
    display: block;
    text-decoration: none;
}

div.container .servicelist ul li a:hover {
    filter: alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}

div.container .servicelist ul li .imgset {
    padding-top: 60%;
    width: 100%;
    height: 1.3rem;
    display: block;
    content: "";
    position: relative;
    -webkit-box-shadow: 10px 10px 10px 0 #cecece;
    /* Safari, Chrome用 */
    -moz-box-shadow: 10px 10px 10px 0 #cecece;
    /* Firefox用 */
    box-shadow: 10px 10px 10px 0 #cecece;
    /* CSS3 */
}

div.container .servicelist ul li .ttl {
    margin-top: 30px;
    padding: 5px 10px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
    background: #73b12b;
}

div.container .servicelist ul li .ttl span {
    margin-right: 10px;
    width: 20px;
    height: 20px;
    display: inline-block;
    color: #73b12b;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 22px;
    text-align: center;
    letter-spacing: 0;
    text-indent: -1px;
    background: #ffffff;
    -moz-border-radius: 10px;
    /*for Firefox*/
    -webkit-border-radius: 10px;
    /*for Safari and chrome*/
    border-radius: 10px;
    behavior: url(border-radius.htc);
    /*for IE*/
}

div.container .servicelist ul li .lead {
    margin-top: 20px;
    font-size: 12px;
    line-height: 1.8;
}

div.container .servicelist ul li .lead span {
    display: inline-block;
    color: #73b12b;
    font-size: 12px;
    line-height: 1.8;
}

/* お問い合わせ */
div.container .infoblock {
    margin: 50px auto 0 auto;
    width: 90%;
}

div.container .infoblock .lead {
    padding-bottom: 50px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
    text-align: center;
}

div.container .infoblock ul {
    margin-bottom: 60px;
    width: 100%;
}

div.container .infoblock ul li {
    margin-right: 5%;
    width: 47.5%;
    float: left;
    text-align: center;
    border: #f1f1f1 solid 1px;
    box-sizing: border-box;
    -webkit-box-shadow: 10px 10px 10px 0 #cecece;
    /* Safari, Chrome用 */
    -moz-box-shadow: 10px 10px 10px 0 #cecece;
    /* Firefox用 */
    box-shadow: 10px 10px 10px 0 #cecece;
    /* CSS3 */
}

div.container .infoblock ul li:nth-child(2n) {
    margin-right: 0%;
}

div.container .infoblock ul li .inner {
    padding: 30px 30px;
}

div.container .infoblock ul li .ttl {
    padding: 20px 20px;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    background: #f8f8f8;
}

div.container .infoblock ul li .data {
    padding-top: 30px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .infoblock ul li .data a {
    color: #73b12b;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.8;
    text-decoration: none;
}

/* レイアウト */
div.container div.widesepa {
    margin: 0 auto;
    width: 90%;
}

div.container div.widesepa.mt {
    margin: 30px auto 0 auto;
}

div.container div.widesepa ul {
    width: 100%;
}

div.container div.widesepa.half ul li {
    margin-bottom: 20px;
    width: 45%;
    position: relative;
}

div.container div.widesepa.half ul li:nth-child(odd) {
    float: left;
}

div.container div.widesepa.half ul li:nth-child(even) {
    float: right;
}

div.container div.widesepa div.ttl_line {
    width: 100%;
}

div.container div.widesepa .leadM {
    padding-top: 30px;
}

div.container div.lrmidblock {
    margin: 50px auto 0 auto;
    width: 90%;
    display: table;
}

div.container div.lrmidblock .block {
    display: table-cell;
    vertical-align: middle;
}

div.container div.lrmidblock .block.half {
    width: 50%;
}

div.container div.lrmidblock .block.gray {
    background: #f8f8f8;
}

div.container div.lrmidblock .block:nth-child(odd) .inner {
    padding-right: 50px;
}

div.container div.lrmidblock .block:nth-child(even) .inner {
    padding-left: 50px;
}

div.container div.lrmidblock .imgset {
    padding-top: 50%;
    width: 100%;
    height: 1rem;
    display: block;
    content: "";
    position: relative;
}

div.container div.lrmidblock_respo {
    margin: 50px auto 0 auto;
    width: 90%;
    display: block;
}

div.container div.lrmidblock_respo .block {
    margin-bottom: 60px;
    width: 47.5%;
}

div.container div.lrmidblock_respo .block:nth-last-child(1),
div.container div.lrmidblock_respo .block:nth-last-child(2) {
    margin-bottom: 0;
}

div.container div.lrmidblock_respo .block.txtL,
div.container div.lrmidblock_respo .block.photoL {
    float: left;
}

div.container div.lrmidblock_respo .block.txtR,
div.container div.lrmidblock_respo .block.photoR {
    float: right;
}

div.container div.lrmidblock_respo .block.txtL .inner,
div.container div.lrmidblock_respo .block.txtR .inner {
    height: 100%;
    display: table;
    background: #f8f8f8;
}

div.container div.lrmidblock_respo .block.txtL .inner div,
div.container div.lrmidblock_respo .block.txtR .inner div {
    display: table-cell;
    vertical-align: middle;
}

div.container div.lrmidblock_respo .imgset {
    padding-top: 50%;
    width: 100%;
    height: 1rem;
    display: block;
    content: "";
    position: relative;
}

div.container div.boxlayout {
    margin: 50px auto 30px auto;
    width: 90%;
}

div.container div.boxlayout ul {
    width: 100%;
}

div.container div.boxlayout ul li {
    margin-top: 50px;
    width: 50%;
    float: left;
    position: relative;
}

div.container div.boxlayout ul li:nth-child(1),
div.container div.boxlayout ul li:nth-child(2) {
    margin-top: 0;
}

div.container div.boxlayout ul li .ttl {
    width: 140px;
    height: 140px;
    display: table;
    background: #73b12b;
    -webkit-box-shadow: 10px 10px 10px 0 #cecece;
    /* Safari, Chrome用 */
    -moz-box-shadow: 10px 10px 10px 0 #cecece;
    /* Firefox用 */
    box-shadow: 10px 10px 10px 0 #cecece;
    /* CSS3 */
    position: absolute;
    top: 30px;
    left: 30px;
}

div.container div.boxlayout ul li .ttl p {
    display: table-cell;
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    line-height: 2.0;
    text-align: center;
    vertical-align: middle;
}

div.container div.boxlayout ul li .inner {
    margin: 50px 30px 0 100px;
    display: table;
    border: #e9e9e9 solid 1px;
    box-sizing: border-box;
}

div.container div.boxlayout ul li .inner .block {
    padding: 50px 40px 50px 100px;
    display: table-cell;
    vertical-align: middle;
}

div.container div.boxlayout ul li .inner p {
    font-size: 13px;
    line-height: 2.4;
}

div.container div.boxlayout ul li .inner p strong {
    margin-bottom: 20px;
    display: block;
    color: #73b12b;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.8;
    text-align: center;
}

div.container div.boxlayout ul li .inner ul li {
    margin-top: 0;
    padding: 10px 0;
    width: 100%;
    float: inherit;
    font-size: 13px;
    line-height: 1.8;
    list-style: disc;
}

/* マップ */
div.mapset {
    margin: 50px auto 0 auto;
    width: 90%;
    height: 640px;
    text-align: center;
    position: relative;
    z-index: 2;
}

#gmap {
    width: 100%;
    height: 100%;
}

/* タイトル */
div.container .ttlL {
    padding: 30px 50px;
    background: #f1f1f1;
    position: relative;
}

div.container .ttlL .ttl {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .ttlL.remark .ttl {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    white-space: nowrap;
}

div.container .ttlL.remark p {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    padding: 0 1.0em;
    font-size: 13px;
}

div.container .ttlL .navi {
    position: absolute;
    top: 25px;
    right: 50px;
}

div.container .ttlL .navi a {
    margin-left: 20px;
    padding: 0 30px;
    display: inline-block;
    color: #73b12b;
    font-size: 13px;
    font-weight: 500;
    line-height: 50px;
    text-decoration: none;
    border: #73b12b solid 1px;
    box-sizing: border-box;
}

div.container .ttlL .navi a.select {
    background: #ffffff;
}

div.container .ttlL .date {
    width: 150px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    text-align: center;
    position: absolute;
    top: 60px;
    right: 50px;
}

div.container .ttlL .cate {
    display: inline-block;
    width: 150px;
    color: #73b12b;
    font-size: 12px;
    font-weight: 500;
    line-height: 25px;
    text-align: center;
    border: #73b12b solid 1px;
    box-sizing: border-box;
    position: absolute;
    top: 25px;
    right: 50px;
}

div.container .ttlL .imgR {
    position: absolute;
    top: 17px;
    right: 50px;
}

div.container .ttlL .imgR img {
    height: 70px;
}

body.news div.container .ttlL {
    padding: 30px 250px 30px 50px;
}

div.container .ttl_line {
    margin: 0 auto;
    width: 90%;
    padding: 30px 0;
    border-bottom: #e2e2e2 solid 1px;
    box-sizing: border-box;
}

div.container .ttl_line.mt {
    margin: 30px auto 0 auto;
}

div.container .ttl_line.up {
    padding: 0 0 30px 0;
}

div.container .ttl_line .ttl {
    font-size: 20px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .ttl_line_gr {
    margin: 0 auto;
    padding: 80px 0 50px 0;
    width: 90%;
    text-align: left;
    position: relative;
}

div.container .ttl_line_gr:before {
    border-top: #73b12b solid 1px;
    width: 100%;
    height: 1px;
    display: block;
    position: absolute;
    top: 60%;
    left: 0%;
    content: "";
}

div.container .ttl_line_gr .ttl {
    padding-right: 30px;
    display: inline-block;
    color: #73b12b;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.8;
    background: #ffffff;
    position: relative;
}

div.container .ttlbox {
    margin: 50px auto 0 auto;
    padding: 30px 50px;
    width: 90%;
    border: #f1f1f1 solid 1px;
    box-sizing: border-box;
    position: relative;
}

div.container .ttlbox .ttl {
    font-size: 24px;
    font-weight: 500;
    line-height: 1.8;
    text-align: center;
}

div.container .ttlbox_gr {
    margin: 50px auto 30px auto;
    padding: 20px 30px;
    width: 90%;
    border: #73b12b solid 1px;
    box-sizing: border-box;
    position: relative;
}

div.container .ttlbox_gr.mt {
    margin: 80px auto 30px auto;
}

div.container .ttlbox_gr .ttl {
    color: #73b12b;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.8;
    text-align: left;
}

/* テキスト */
div.container .inspace {
    margin: 0 auto;
    padding-top: 30px;
    width: 90%;
}

div.container .inspace.ph {
    padding: 50px 0 0 0;
}

div.container .leadL {
    padding: 80px 0;
    font-size: 24px;
    font-weight: 500;
    line-height: 2.0;
    text-align: center;
}

div.container .leadM {
    font-size: 13px;
    line-height: 2.4;
}

div.container .leadM a {
    color: #73b12b;
    font-size: 13px;
    line-height: 2.4;
}

div.container .toplead {
    margin: 0 auto;
    padding: 50px 0;
    width: 90%;
    border-bottom: #e9e9e9 solid 1px;
    box-sizing: border-box;
}

div.container .toplead p {
    font-size: 13px;
    line-height: 2.4;
}

div.container .inbox .leadL {
    padding: 0 0 30px 0;
}

div.container .inbox .leadM {
    padding: 0 50px 0 50px;
    text-align: left;
}

div.container ul.dot li {
    margin-left: 30px;
    padding: 5px 0;
    font-size: 13px;
    line-height: 2.4;
    list-style: disc;
}

div.container div.tlset ul.dot {
    margin-left: 20px;
}

div.container div.tlset.min ul.dot li {
    line-height: 2.0;
}

div.container div.tlset.min .dataTableOut.short {
    overflow: hidden;
}

div.container div.tlset.min .dataTableOut.long {
    max-height: 0;
    overflow: hidden;
}

div.container div.tlset.min .dataTable td ul.dot {
    margin-left: 50px;
}

div.container div.tlset.min .dataTable td ul.dot li {
    margin-left: 1.0em;
    line-height: 1.2;
}

div.container div.tlset.min .dataTable td p {
    padding: 10px 50px;
}

div.container div.tlset.min .detailButton {
    display: block;
    width: 140px;
    margin: 0 auto 30px auto;
    font-size: 13px;
    text-align: center;
    line-height: 48px;
    text-decoration: none;
    background-color: #f1f1f1;
    cursor: pointer;
}

div.container div.tlset.min .detailButton:hover {
    background-color: #ffffff;
    box-shadow: 0 0 0 1px #d1d1d1;
}

div.container ol.num li {
    padding: 10px 0;
    font-size: 13px;
    line-height: 2.4;
    list-style: decimal;
}

div.container .text_right {
    text-align: right;
}

div.container div.tlset.min .recTitle {
    width: 90%;
    margin: 20px auto;
    padding-left: 0.5em;
    font-size: 1.0em;
    border-left: 2px solid;
}

/* ボタン */
div.container .morebtn.rset {
    text-align: right;
}

div.container .morebtn.lset {
    text-align: left;
}

div.container .morebtn a {
    padding: 12px 50px;
    display: inline-block;
    color: #ffffff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
    text-align: center;
    letter-spacing: 5px;
    text-indent: 5px;
    text-decoration: none;
    border: #000000 solid 1px;
    box-sizing: border-box;
    background: #000000;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

div.container .morebtn a:hover {
    color: #000000;
    background: #ffffff;
}

div.container .recruit_link {
    margin: 0 auto 0 auto;
    width: 90%;
    text-align: right;
}

div.container .recruit_link a {
    padding: 10px 50px 10px 30px;
    display: inline-block;
    color: #ffffff;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    text-align: center;
    letter-spacing: 5px;
    text-indent: 5px;
    text-decoration: none;
    border: #000000 solid 1px;
    box-sizing: border-box;
    background: #000000 url(../images/icon_arrR_wh.png) 90% 50% no-repeat;
    background-size: 12px auto;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

div.container .recruit_link a:hover {
    color: #000000;
    background: #ffffff url(../images/icon_arrR_bl.png) 90% 50% no-repeat;
    background-size: 12px auto;
}

/* 表組み */
div.container div.tlset table {
    margin: 50px auto;
    width: 90%;
    border-collapse: separate;
    border-spacing: 0;
    border: 0 !important;
}

div.container div.tlset.min table {
    margin: 20px auto 50px auto;
}

div.container div.tlset table th,
div.container div.tlset table td {
    padding: 30px 0;
    border-bottom: #e9e9e9 solid 1px;
    box-sizing: border-box;
}

div.container div.tlset.min table th,
div.container div.tlset.min table td {
    padding: 10px 0;
}

div.container div.tlset table tr:last-child th,
div.container div.tlset table tr:last-child td {
    border-bottom: none;
}

div.container div.tlset table th p,
div.container div.tlset table td p {
    padding: 0 50px;
    font-size: 13px;
    line-height: 1.8;
    position: relative;
}

div.container div.tlset table th p.small,
div.container div.tlset table td p.small {
    font-size: 0.6em;
}

div.container div.tlset table th p a,
div.container div.tlset table td p a {
    font-size: 13px;
    line-height: 1.8;
}

div.container div.tlset table th {
    width: 30%;
    text-align: center;
    background: #f8f8f8;
}

div.container div.tlset table td {
    width: 70%;
    letter-spacing: -.4em;
}

div.container div.tlset table td div {
    margin: 0 50px;
    padding: 20px 0;
    border-bottom: #e9e9e9 solid 1px;
    box-sizing: border-box;
}

div.container div.tlset table td div:last-child {
    border-bottom: none;
}

div.container div.tlset table td div p {
    padding: 0;
}

div.container div.tlset table td p strong {
    margin-bottom: 10px;
    display: block;
    color: #73b12b;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
}

div.container div.tlset table td p strong.inner {
    margin: 5px 0;
    color: #999999;
}

div.container div.tlset table td p i {
    margin: 5px 20px 5px 0;
    width: 210px;
    display: inline-block;
    font-size: 13px;
    font-style: normal;
    line-height: 1.8;
    text-align: center;
    background: #f8f8f8;
}

div.container div.tlset table td p.half {
    letter-spacing: -.4em;
}

div.container div.tlset table td p.half span {
    width: 50%;
    display: inline-block;
    font-size: 13px;
    line-height: 1.8;
}

div.container div.tlset table td p.half_half {
    letter-spacing: -.4em;
}

div.container div.tlset table td p.half_half span {
    width: 25%;
    display: inline-block;
    font-size: 13px;
    line-height: 1.8;
}

div.container div.tlset table td p.block {
    margin-left: 50px;
    padding: 0;
    width: 35%;
    display: inline-block;
}

div.container div.tlset table td div.schedule {
    margin: 10px 0 10px 50px;
    padding: 0;
    width: 40%;
    display: inline-block;
    border-bottom: none;
}

div.container div.tlset table td div.schedule p {
    padding-top: 7px;
    padding-bottom: 5px;
    padding-left: 50%;
    padding-right: 0;
    font-size: 13px;
    line-height: 1.8;
    position: relative;
}

div.container div.tlset table td div.schedule p:before {
    border-top: #73b12b solid 1px;
    width: 30px;
    height: 1px;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 30%;
    content: "";
}

div.container div.tlset table td div.scheduleMemo {
    margin: 10px 0 10px 50px;
    padding: 0;
    width: 40%;
    display: inline-block;
    border-bottom: none;
}

div.container div.tlset table td div.scheduleMemo p {
    padding-top: 7px;
    padding-bottom: 5px;
    padding-right: 0;
    font-size: 13px;
    line-height: 1.8;
    position: relative;
}

div.container div.tlset table td div.schedule i {
    margin: 0;
    padding: 5px 0;
    width: 30%;
    color: #73b12b;
    font-size: 13px;
    font-style: normal;
    line-height: 1.8;
    text-align: center;
    border: #73b12b solid 1px;
    box-sizing: border-box;
    background: #ffffff;
    position: absolute;
    top: 0;
    left: 0;
}

div.container div.tlset table td span.min {
    font-size: 11px !important;
}

div.container div.tlset.half table th {
    width: 50%;
}

div.container div.tlset.half table td {
    width: 50%;
}

/* フォーム */
div.container .entryform {
    margin: 50px auto 0 auto;
    width: 90%;
    max-width: 1200px;
}

div.container .entryform .Lttl {
    margin-bottom: 50px;
}

div.container .entryform .Lttl .ttl {
    color: #000000;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 40px;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 5px;
    text-indent: 5px;
}

div.container .entryform .Lttl .ttl span {
    margin-top: 10px;
    display: block;
    color: #e8400b;
    font-family: 'Oswald', sans-serif;
    font-size: 32px;
    line-height: 1.8;
    letter-spacing: 5px;
    text-indent: 5px;
}

div.container .entryform table {
    width: 100%;
    text-align: left;
    border-collapse: separate;
    border-spacing: 0;
    border: 0 !important;
}

div.container .entryform table th,
div.container .entryform table td {
    padding: 15px 0;
    vertical-align: top;
    border-bottom: #f1f1f1 solid 1px;
    box-sizing: border-box;
}

div.container .entryform table tr:last-child th,
div.container .entryform table tr:last-child td {
    border-bottom: none;
}

div.container .entryform table th p,
div.container .entryform table td p {
    padding: 10px 30px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
    position: relative;
}

div.container .entryform table th {
    width: 30%;
    background: #f8f8f8;
}

div.container .entryform table td {
    width: 70%;
}

div.container .entryform table th p i {
    padding: 2px 10px;
    display: inline-block;
    color: #ffffff;
    font-size: 9px;
    font-weight: 500;
    font-style: normal;
    line-height: 1.8;
    background-color: rgba(232, 64, 11, 1.0);
    position: absolute;
    top: 0;
    right: 15px;
}

/* お問い合わせフォームのラジオボタンを縦並びに */
div.container .entryform table td p span.mwform-radio-field.vertical-item {
    display: block;
    padding: 5px;
}

div.container .entryform table td p span.mwform-checkbox-field {
    margin: 10px 0;
    width: 30%;
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .entryform table td div {
    width: 40%;
    display: inline-block;
}

div.container .entryform table td input[type="text"] {
    padding: 7px 7px;
    display: inline-block;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 13px;
    line-height: 1.8;
    vertical-align: middle;
    border: #e2e2e2 solid 1px;
    box-sizing: border-box;
    background: #ffffff;
    -moz-border-radius: 3px;
    /*for Firefox*/
    -webkit-border-radius: 3px;
    /*for Safari and chrome*/
    border-radius: 3px;
    behavior: url(border-radius.htc);
    /*for IE*/
}

div.container .entryform table td input[type="text"]:focus {
    background: #f8f8f8;
}

div.container .entryform table td input[type="text"].sizeL {
    width: 90%;
}

div.container .entryform table td input[type="text"].sizeM {
    width: 40%;
}

div.container .entryform table td input[type="text"].sizeMM {
    width: 60%;
}

div.container .entryform table td input[type="text"].sizeS {
    width: 10%;
}

div.container .entryform table td select {
    padding: 7px 7px;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 13px;
    line-height: 1.8;
    text-indent: 1px;
    border: #e2e2e2 solid 1px;
    box-sizing: border-box;
    background: #f8f8f8;
}

div.container .entryform table td textarea {
    padding: 7px 7px;
    width: 90%;
    height: 200px;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 13px;
    line-height: 1.8;
    text-indent: 1px;
}

div.container .entryform table td div.check {
    margin: 10px 20px;
    display: inline-block;
    font-size: 13px;
    line-height: 1.8;
    text-indent: 1px;
}

div.container .entryform table td div.check label {
    margin: 5px 30px 5px 0;
    display: inline-block;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    text-indent: 1px;
    cursor: pointer;
}

div.container .entryform table td span.error,
div.container .entryform table td p span.error {
    margin-left: 0;
    padding-top: 5px;
    display: block;
    color: #ce0000;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .entryform .submit {
    padding: 50px 0 0 0;
    text-align: center;
}

div.container .entryform .submit p {
    padding-bottom: 30px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .entryform .submit p a {
    margin: 10px 5px;
    display: inline-block;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.8;
}

div.container .entryform .submit p span.error {
    margin-left: 20px;
    display: inline-block;
    color: #ce0000;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.8;
}

div.container .entryform .submit a.back {
    margin: 0 10px;
    padding: 15px 50px 15px 70px;
    display: inline-block;
    color: #000000;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.8;
    text-decoration: none;
    text-indent: 2px;
    letter-spacing: 2px;
    cursor: pointer;
    border: none;
    background: #f8f8f8 url(../images/icon_arrL_bl.png) 10% 50% no-repeat;
    background-size: auto 10px;
}

div.container .entryform .submit input[type="submit"] {
    margin: 0 10px;
    padding: 15px 70px 15px 50px;
    display: inline-block;
    color: #ffffff;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.8;
    text-decoration: none;
    text-indent: 2px;
    letter-spacing: 2px;
    cursor: pointer;
    border: none;
    background: #000000 url(../images/icon_arrR.png) 90% 50% no-repeat;
    background-size: auto 10px;
}

div.container .entryform .txtlink {
    padding: 30px 0 0 0;
    text-align: center;
}

div.container .entryform .txtlink a {
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
}

.mw_wp_form_confirm .confnone {
    display: none;
}

@media screen and (max-width:1150px) {
    div.container {
        padding-bottom: 0;
    }

    div.container div.wideblock {
        width: 90%;
    }

    div.container div.wideblock .contents {
        margin: 30px auto 50px auto;
        padding-bottom: 50px;
        width: 100%;
        text-align: left;
        -webkit-box-shadow: 0 20px 20px 0 #cecece;
        /* Safari, Chrome用 */
        -moz-box-shadow: 0 20px 20px 0 #cecece;
        /* Firefox用 */
        box-shadow: 0 20px 20px 0 #cecece;
        /* CSS3 */
    }

    div.container div.wideblock .innertext {
        width: 80%;
    }

    div.container div.wideblock .innertext .leadM {
        padding: 10px 0;
    }

    div.container div.wideblock .innertext .imgR img {
        margin-bottom: 20px;
        height: 40px;
    }

    /* ニュース */
    div.container .newsset {
        margin: 50px auto;
        width: 95%;
        display: block;
    }

    div.container .newsset .ttlset {
        width: 100%;
        display: block;
        background: #ffffff;
    }

    div.container .newsset .ttlset .ttl {
        padding: 0 0 50px 0;
        font-size: 24px;
    }

    div.container .newsset .ttlset .ttl span {
        padding-top: 10px;
        font-size: 12px;
    }

    div.container .newsset .entryset {
        width: 100%;
        display: block;
    }

    div.container .newsset .entryset .inner {
        padding-left: 0;
    }

    div.container .newsset .entryset ul.tabmenu li p {
        height: 45px;
        font-size: 11px;
        line-height: 45px;
        letter-spacing: 0.5px;
    }

    div.container .newsset .entryset ul.tabmenu li.select p::after {
        margin-left: -15px;
        width: 30px;
    }

    body#page div.container .newsset table {
        margin: 30px 0 0 0;
    }

    div.container .newsset table td p {
        padding-bottom: 10px;
        font-size: 12px;
    }

    div.container .newsset table td.date {
        padding-bottom: 0;
        width: 50%;
        float: left;
        font-size: 11px;
        line-height: 25px;
        text-align: left;
        border-bottom: none;
    }

    div.container .newsset table td.cate {
        padding-bottom: 0;
        width: 50%;
        float: right;
        text-align: right;
        border-bottom: none;
    }

    div.container .newsset table td.entry {
        width: 100%;
        display: block;
        clear: both;
    }

    div.container .newsset table td.entry.wide,
    div.container .newsset.languageEn table td.date,
    div.container .newsset.languageEn table td.entry.wide {
        width: 100%;
    }

    div.container .newsset.languageEn table td.date {
        padding-bottom: 0;
        text-align: left;
    }

    div.container .newsset table td.thumimg {
        width: 25%;
        text-align: center;
    }

    div.container .newsset table td.thumimg img {
        width: 70%;
    }

    div.container .newsset table td.entry_thum {
        width: 62%;
        text-align: left;
    }

    div.container .newsset table td.cate span {
        width: 70%;
        font-size: 10px;
        line-height: 20px;
        text-align: center;
    }

    body#page div.container .newsset table td.cate span {
        width: 100%;
    }

    div.container .newsset .block ul {
        width: 100%;
    }

    div.container .newsset .block ul li {
        width: 100%;
        float: inherit;
        border-right: none;
    }

    div.container .newsset .block ul li:nth-child(2) {
        border-top: #e2e2e2 solid 1px;
        box-sizing: border-box;
    }

    div.container .newsset .block ul li .inner {
        display: block;
    }

    div.container .newsset .block ul li .inner .imgset {
        padding-top: 20px;
        width: 100%;
        display: block;
        text-align: left;
    }

    div.container .newsset .block ul li .inner .imgset img {
        margin: 0;
        width: 50%;
        max-width: 250px;
    }

    div.container .newsset .block ul li .inner .entryset {
        width: 100%;
        display: block;
    }

    div.container .newsset .block ul li .inner .entryset p {
        padding: 0;
        font-size: 12px;
    }

    div.container .newsset .block ul li .inner .entryset p strong {
        padding-bottom: 20px;
        font-size: 13px;
    }

    div.container .newsset .block ul li .date {
        font-size: 11px;
        top: 20px;
        left: inherit;
        right: 0;
    }

    div.container .newsset.report .block ul li .date {
        left: inherit;
        right: 0;
    }

    body#page div.container .newsset {
        margin: 30px auto 0 auto;
        width: 80%;
        display: block;
    }

    div.container .newsset.vertop .block ul li .inner .imgset {
        vertical-align: top;
    }

    div.container .newsset.vertop .block ul li .inner .entryset {
        vertical-align: top;
    }

    div.container .newsset.vertop .block ul li .inner .entryset p {
        padding: 0 0 30px 0;
    }

    div.container .newsset.vertop .block ul li .inner .entryset p strong {
        padding-top: 20px;
    }

    div.container .newsset.report .block ul li .inner .imgset {
        width: 100%;
    }

    div.container .newsset.report .block ul li .inner .imgset img {
        max-width: 125px;
    }

    div.container .newsset.report .block ul li .inner .entryset {
        width: 100%;
    }

    div.container .newsset .entryset ul.tabmenu.ir li:nth-child(1),
    div.container .newsset .entryset ul.tabmenu.ir li:nth-child(2),
    div.container .newsset .entryset ul.tabmenu.ir li:nth-child(3) {
        width: 25%;
    }

    div.container .newsset .entryset ul.tabmenu.ir li:nth-child(4) {
        width: 25%;
    }

    div.container .newsset .entryset ul.tabmenu.ir li p {
        font-size: 10px;
    }

    /* カテゴリリンク */
    div.container .categoryset {
        width: 90%;
    }

    div.container .categoryset ul {
        display: block;
    }

    div.container .categoryset ul li {
        margin-right: 0%;
        margin-top: 30px;
        width: 100%;
        float: inherit;
    }

    div.container .categoryset ul li:nth-child(2),
    div.container .categoryset ul li:nth-child(3) {
        margin-top: 30px;
    }

    div.container .categoryset ul li .imgset {
        padding-top: 50%;
    }

    div.container .categoryset ul li .ttl {
        margin-top: -30px;
        font-size: 20px;
        letter-spacing: 5px;
        text-indent: 5px;
    }

    div.container .categoryset ul li .ttl span {
        font-size: 12px;
    }

    div.container .categoryset ul li .ttl span:before {
        margin-left: 0;
        width: 20px;
        left: 30px;
    }

    div.container .categoryset ul li .ttl span::after {
        margin-right: 0;
        width: 20px;
        right: 30px;
    }

    div.container .categoryset ul li .lead {
        margin-bottom: 0;
        padding: 30px 30px;
        font-size: 12px;
    }

    /* 沿革 */
    div.container .historyset {
        margin: 30px auto 0 auto;
        width: 80%;
    }

    div.container .historyset .yearblock::after {
        left: 15%;
    }

    div.container .historyset .yearblock .date {
        width: 30%;
    }

    div.container .historyset .yearblock .date p {
        padding: 20px 0;
        font-size: 12px;
    }

    div.container .historyset .yearblock .entry {
        width: 70%;
    }

    div.container .historyset .yearblock .entry .inner {
        padding-left: 20px;
    }

    div.container .historyset .yearblock .entry .inner p {
        font-size: 12px;
        line-height: 2.0;
    }

    div.container .historyset .yearblock .entry .inner p a {
        font-size: 12px;
        line-height: 2.0;
    }

    div.container .historyset .yearblock .entry .inner .inimg {
        width: 100%;
        display: table;
        position: relative;
    }

    div.container .historyset .yearblock .entry .inner .inimg:nth-child(even) {
        margin-top: 20px;
    }

    div.container .historyset .yearblock .entry .inner .inimg p {
        width: 70%;
        display: table-cell;
        vertical-align: middle;
    }

    div.container .historyset .yearblock .entry .inner .inimg span {
        width: 30%;
        display: table-cell;
        vertical-align: middle;
    }

    div.container .historyset .yearblock .entry .inner .inimg span img {
        margin-left: 10%;
        max-width: 90%;
        -webkit-box-shadow: 10px 10px 10px 0 #cecece;
        /* Safari, Chrome用 */
        -moz-box-shadow: 10px 10px 10px 0 #cecece;
        /* Firefox用 */
        box-shadow: 10px 10px 10px 0 #cecece;
        /* CSS3 */
    }

    /* トップメッセージ */
    div.container .topmessageset {
        margin: -20px auto 0 auto;
        width: 80%;
    }

    div.container .topmessageset p.text {
        padding: 30px 0;
        font-size: 12px;
        line-height: 2.4;
    }

    div.container .topmessageset p.text.clear {
        margin-top: -30px;
        padding: 0 0 30px 0;
    }

    div.container .topmessageset p.text strong {
        margin-bottom: 30px;
        padding: 20px 0;
        font-size: 16px;
    }

    div.container .topmessageset p.text img {
        margin-top: 20px;
        margin-bottom: 0;
        margin-left: 25%;
        margin-right: 0;
        width: 50%;
        float: inherit;
        display: block;
    }

    div.container .topmessageset p.text img.imgR {
        margin-top: 30px;
        margin-bottom: 10px;
        margin-left: 20%;
        margin-right: 0;
        width: 60%;
        float: inherit;
        display: block;
    }

    div.container .topmessageset p.name {
        font-size: 15px;
        font-weight: bold;
    }

    div.container .topmessageset p.name span {
        margin-right: 10px;
        font-size: 11px;
        font-weight: 300;
    }

    div.container .topmessageset p.name i {
        font-size: 11px;
        font-weight: 300;
    }

    /* 社員紹介 */
    div.container .staffset {
        margin: 30px auto -20px auto;
        width: 80%;
    }

    div.container .staffset ul li {
        width: 100%;
        float: inherit;
        border-right: none;
    }

    div.container .staffset ul li:nth-child(2) {
        border-top: #e2e2e2 solid 1px;
    }

    div.container .staffset ul li .inner {
        display: block;
    }

    div.container .staffset ul li .inner .imgset {
        width: 100%;
        display: block;
    }

    div.container .staffset ul li .inner .imgset img {
        margin: 30px 0;
        width: 60%;
    }

    div.container .staffset ul li .inner .entryset {
        padding: 0 0 30px 0;
        width: 100%;
        display: block;
    }

    div.container .staffset ul li .inner .entryset p {
        padding: 20px 0 0 0;
        font-size: 12px;
    }

    div.container .staffset ul li .inner .entryset p.icon {
        padding: 0;
    }

    div.container .staffset ul li .inner .entryset p.icon span {
        margin-bottom: 10px;
        width: 100%;
        display: block;
        font-size: 11px;
        position: static;
    }

    /* 社員データ */
    div.container .companydata {
        margin: 30px auto 0 auto;
        width: 80%;
    }

    div.container .companydata ul li {
        width: 100%;
        float: inherit;
        border-right: none;
        border-top: none;
    }

    div.container .companydata ul li .inner {
        padding: 0 0 30px 0;
    }

    div.container .companydata ul li:nth-child(2) .inner,
    div.container .companydata ul li:nth-child(5) .inner {
        padding: 0 0 30px 0;
    }

    div.container .companydata ul li:nth-child(3) .inner,
    div.container .companydata ul li:nth-child(6) .inner {
        padding: 0 0 30px 0;
    }

    div.container .companydata ul li .inner .half {
        margin: 0 2.5%;
        width: 45%;
    }

    div.container .companydata ul li .ttl {
        padding: 15px 15px;
        font-size: 14px;
    }

    div.container .companydata ul li .num {
        padding-top: 20px;
        font-size: 35px;
    }

    div.container .companydata ul li .num.mt {
        margin-top: 0;
    }

    div.container .companydata ul li .num strong {
        margin: 10px 20px;
        padding: 5px 0;
    }

    div.container .companydata ul li .inner .half .num strong {
        margin: 10px 20px;
    }

    div.container .companydata ul li .num span {
        margin-left: 10px;
        font-size: 12px;
    }

    div.container .companydata ul li .numlist {
        font-size: 12px;
    }

    div.container .companydata ul li .numlist span {
        font-size: 16px;
    }

    div.container .companydata ul li .dotlist {
        margin-top: 35px;
        font-size: 14px;
        font-weight: 500;
        line-height: 1.8;
    }

    div.container .companydata ul li .dotlist span {
        margin: 7px 5px;
        padding: 0 10px;
        display: inline-block;
        font-size: 14px;
        font-weight: 500;
        line-height: 1.8;
        background: #f8f8f8;
    }

    div.container .companydata ul li .logo strong {
        font-size: 11px;
    }

    div.container .companydata.wset ul li {
        width: 100%;
    }

    div.container .companydata.wset ul li:nth-child(2n) {
        border-right: none;
    }

    div.container .companydata.wset ul li:nth-child(3n) {
        border-right: none;
    }

    div.container .companydata.wset ul li:nth-child(3) {
        border-top: #e2e2e2 solid 1px;
    }

    div.container .companydata.wset ul li .numlist {
        text-align: left;
    }

    /* フォトギャラリー */
    div.container .gallery {
        margin: 0 auto 30px auto;
        width: 80%;
    }

    div.container .gallery ul li {
        margin-top: 30px;
        margin-right: 10%;
        width: 45%;
    }

    div.container .gallery ul li:nth-child(2n) {
        margin-right: 0%;
    }

    /* サービス概要 */
    div.container .servicelist {
        margin: 20px auto 10px auto;
        width: 80%;
    }

    div.container .servicelist ul li {
        margin-right: 0%;
        width: 100%;
        float: inherit;
        background: #f8f8f8;
    }

    div.container .servicelist ul li:nth-child(2),
    div.container .servicelist ul li:nth-child(3),
    div.container .servicelist ul li:nth-child(4) {
        margin-top: 30px;
    }

    div.container .servicelist ul li a {
        padding: 20px 20px;
    }

    div.container .servicelist ul li .ttl {
        margin-top: 20px;
        font-size: 13px;
    }

    div.container .servicelist ul li .ttl span {
        font-size: 13px;
    }

    div.container .servicelist ul li .lead {
        margin-top: 10px;
    }

    /* お問い合わせ */
    div.container .infoblock {
        margin: 30px auto 0 auto;
        width: 80%;
    }

    div.container .infoblock .lead {
        padding-bottom: 30px;
        font-size: 13px;
    }

    div.container .infoblock ul {
        margin-bottom: 30px;
    }

    div.container .infoblock ul li {
        margin-right: 0%;
        margin-bottom: 30px;
        width: 100%;
        float: inherit;
    }

    div.container .infoblock ul li .inner {
        padding: 20px 20px;
    }

    div.container .infoblock ul li .ttl {
        padding: 15px 15px;
        font-size: 14px;
    }

    div.container .infoblock ul li .data {
        padding-top: 10px;
        font-size: 20px;
    }

    div.container .infoblock ul li .data a {
        font-size: 20px;
    }

    /* レイアウト */
    div.container div.widesepa {
        width: 80%;
    }

    div.container div.widesepa.mt {
        margin: 30px auto 0 auto;
    }

    div.container div.widesepa.half ul li {
        width: 100%;
    }

    div.container div.widesepa.half ul li:nth-child(odd) {
        float: inherit;
    }

    div.container div.widesepa.half ul li:nth-child(even) {
        float: inherit;
    }

    div.container div.lrmidblock {
        margin: 30px auto 0 auto;
        width: 80%;
        display: block;
    }

    div.container div.lrmidblock .block {
        display: block;
    }

    div.container div.lrmidblock .block.half {
        width: 100%;
    }

    div.container div.lrmidblock .block.gray {
        margin-bottom: 30px;
    }

    div.container div.lrmidblock .block:nth-child(odd) .inner {
        padding-right: 0;
    }

    div.container div.lrmidblock .block:nth-child(even) .inner {
        padding-left: 0;
    }

    div.container div.lrmidblock .imgset {
        padding-top: 50%;
        width: 100%;
        height: 1rem;
        display: block;
        content: "";
        position: relative;
    }

    div.container div.lrmidblock_respo {
        margin: 30px auto 0 auto;
        width: 80%;
    }

    div.container div.lrmidblock_respo .block {
        margin-bottom: 30px;
        width: 100%;
        height: auto !important;
    }

    div.container div.lrmidblock_respo .block:nth-last-child(2) {
        margin-bottom: 30px;
    }

    div.container div.lrmidblock_respo .block.txtL,
    div.container div.lrmidblock_respo .block.photoL {
        float: inherit;
    }

    div.container div.lrmidblock_respo .block.txtR,
    div.container div.lrmidblock_respo .block.photoR {
        float: inherit;
    }

    div.container div.lrmidblock_respo .block.txtL .inner,
    div.container div.lrmidblock_respo .block.txtR .inner {
        display: block;
    }

    div.container div.lrmidblock_respo .block.txtL .inner div,
    div.container div.lrmidblock_respo .block.txtR .inner div {
        display: block;
    }

    div.container div.boxlayout {
        margin: 30px auto 0 auto;
        width: 80%;
    }

    div.container div.boxlayout ul li {
        margin-top: 30px;
        width: 100%;
        float: inherit;
    }

    div.container div.boxlayout ul li:nth-child(2) {
        margin-top: 30px;
    }

    div.container div.boxlayout ul li .ttl {
        width: 120px;
        height: 120px;
        top: -30px;
        left: 0;
    }

    div.container div.boxlayout ul li .ttl p {
        font-size: 14px;
    }

    div.container div.boxlayout ul li .inner {
        margin: 50px 0 0 30px;
        display: block;
    }

    div.container div.boxlayout ul li .inner .block {
        padding: 120px 20px 20px 20px;
        display: block;
    }

    div.container div.boxlayout ul li .inner p {
        font-size: 12px;
    }

    div.container div.boxlayout ul li .inner p strong {
        font-size: 16px;
        text-align: left;
    }

    div.container div.boxlayout ul li .inner ul li {
        margin-left: 20px;
        padding: 5px 0;
        width: auto;
        font-size: 12px;
    }

    /* マップ */
    div.mapset {
        margin: 30px auto 0 auto;
        width: 80%;
        height: 350px;
    }

    /* タイトル */
    div.container .ttlL {
        padding: 15px 20px;
        position: relative;
    }

    div.container .ttlL .ttl {
        font-size: 18px;
    }

    div.container .ttlL.remark .ttl {
        display: block;
        white-space: normal;
    }

    div.container .ttlL.remark p {
        display: block;
        padding: 0.5em 0 0 0;
    }

    div.container .ttlL .navi {
        top: 16px;
        right: 20px;
    }

    div.container .ttlL .navi a {
        margin: 4px;
        padding: 0 10px;
        font-size: 11px;
        line-height: 30px;
        letter-spacing: 1px;
    }

    div.container .ttlL .date {
        width: auto;
        font-size: 11px;
        text-align: left;
        top: 22px;
        left: 20px;
        right: inherit;
    }

    div.container .ttlL .cate {
        padding: 0 10px;
        width: auto;
        font-size: 10px;
        line-height: 20px;
        top: 20px;
        right: 20px;
    }

    div.container .ttlL .imgR {
        top: 12px;
        right: 20px;
    }

    div.container .ttlL .imgR img {
        height: 40px;
    }

    body.news div.container .ttlL {
        padding: 55px 20px 20px 20px;
    }

    body.news div.container .ttlL .ttl {
        font-size: 16px;
    }

    div.container .ttl_line {
        width: 80%;
        padding: 30px 0;
    }

    div.container .ttl_line.up {
        padding: 0 0 30px 0;
    }

    div.container .ttl_line .ttl {
        font-size: 16px;
    }

    div.container .ttl_line_gr {
        padding: 20px 0;
        width: 80%;
    }

    div.container .ttl_line_gr:before {
        display: none;
    }

    div.container .ttl_line_gr .ttl {
        padding-right: 0;
        padding-bottom: 20px;
        display: inline-block;
        font-size: 16px;
        border-bottom: #73b12b solid 1px;
        box-sizing: border-box;
    }

    div.container .ttlbox {
        margin: 30px auto 0 auto;
        padding: 20px 20px;
        width: 80%;
    }

    div.container .ttlbox .ttl {
        font-size: 16px;
    }

    div.container .ttlbox_gr {
        margin: 30px auto 10px auto;
        padding: 10px 20px;
        width: 80%;
    }

    div.container .ttlbox_gr.mt {
        margin: 50px auto 10px auto;
    }

    div.container .ttlbox_gr .ttl {
        font-size: 16px;
    }

    /* テキスト */
    div.container .inspace {
        margin: 0 auto;
        padding-top: 30px;
        width: 80%;
    }

    div.container .inspace.ph {
        padding: 30px 0 0 0;
    }

    div.container .leadL {
        padding: 30px 20px;
        font-size: 16px;
    }

    div.container .leadM {
        font-size: 12px;
    }

    div.container .leadM a {
        font-size: 12px;
    }

    div.container .toplead {
        padding: 30px 0;
        width: 80%;
    }

    div.container .toplead p {
        font-size: 12px;
    }

    div.container .inbox .leadL {
        padding: 30px 0 30px 0;
    }

    div.container .inbox .leadM {
        padding: 0 30px 30px 30px;
        text-align: left;
    }

    div.container ul.dot li {
        margin-left: 20px;
        font-size: 12px;
        line-height: 2.0;
    }

    div.container div.tlset ul.dot {
        margin-left: 10px;
    }

    div.container ol.num li {
        font-size: 12px;
        line-height: 2.0;
    }

    div.container .text_right {
        text-align: right;
    }

    /* ボタン */
    div.container .morebtn.rset {
        text-align: center;
    }

    div.container .morebtn.lset {
        text-align: center;
    }

    div.container .morebtn a {
        padding: 10px 30px;
        font-size: 12px;
        letter-spacing: 5px;
        text-indent: 5px;
    }

    div.container .recruit_link {
        margin: 30px auto 20px auto;
        width: 80%;
        text-align: center;
    }

    div.container .recruit_link a {
        padding: 10px 30px 10px 10px;
        font-size: 12px;
        background: #000000 url(../images/icon_arrR_wh.png) 90% 50% no-repeat;
        background-size: 10px auto;
    }

    div.container .recruit_link a:hover {
        background: #ffffff url(../images/icon_arrR_bl.png) 90% 50% no-repeat;
        background-size: 10px auto;
    }

    /* 表組み */
    div.container div.tlset table {
        margin: 30px auto;
        width: 80%;
    }

    div.container div.tlset.min table {
        margin: 20px auto 30px auto;
    }

    div.container div.tlset table th,
    div.container div.tlset table td {
        padding: 20px 0;
    }

    div.container div.tlset table th p,
    div.container div.tlset table td p {
        padding: 0 20px;
        font-size: 12px;
    }

    div.container div.tlset table th p a,
    div.container div.tlset table td p a {
        font-size: 12px;
    }

    div.container div.tlset table th {
        width: 30%;
    }

    div.container div.tlset table td {
        width: 70%;
    }

    div.container div.tlset table td div {
        margin: 0 20px;
        padding: 20px 0;
    }

    div.container div.tlset table td p strong {
        font-size: 12px;
    }

    div.container div.tlset table td p i {
        margin: 5px 10px 5px 0;
        width: 130px;
        font-size: 11px;
    }

    div.container div.tlset table td p.half span {
        width: 100%;
        display: block;
        font-size: 12px;
    }

    div.container div.tlset table td p.half_half span {
        width: 100%;
        display: block;
        font-size: 12px;
    }

    div.container div.tlset table td p.block {
        margin-left: 50px;
        padding: 0;
        width: 35%;
        display: inline-block;
    }

    div.container div.tlset table td div.schedule {
        margin: 10px 0 10px 20px;
        width: auto;
        display: block;
    }

    div.container div.tlset table td div.schedule p {
        padding-top: 0;
        padding-bottom: 0;
        padding-left: 0%;
        padding-right: 0;
        font-size: 12px;
    }

    div.container div.tlset table td div.schedule p:before {
        display: none;
    }

    div.container div.tlset table td div.schedule i {
        margin-bottom: 10px;
        width: 100%;
        display: block;
        font-size: 12px;
        position: static;
    }

    div.container div.tlset table td span.min {
        font-size: 11px !important;
    }

    div.container div.tlset.half table th {
        width: 50%;
    }

    div.container div.tlset.half table td {
        width: 50%;
    }

    /* フォーム */
    div.container .entryform {
        margin: 30px auto 0 auto;
        width: 90%;
    }

    div.container .entryform .Lttl {
        margin-bottom: 30px;
    }

    div.container .entryform .Lttl .ttl {
        font-size: 20px;
        letter-spacing: 3px;
        text-indent: 3px;
    }

    div.container .entryform .Lttl .ttl span {
        margin-top: 10px;
        font-size: 12px;
        letter-spacing: 5px;
        text-indent: 5px;
    }

    div.container .entryform table {
        margin-bottom: -30px;
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
        border: 0 !important;
    }

    div.container .entryform table th,
    div.container .entryform table td {
        vertical-align: top;
        border-bottom: #f1f1f1 solid 1px;
        box-sizing: border-box;
    }

    div.container .entryform table tr:last-child th,
    div.container .entryform table tr:last-child td {
        border-bottom: none;
    }

    div.container .entryform table th p,
    div.container .entryform table td p {
        padding: 0 15px;
        font-size: 13px;
        line-height: 1.8;
        position: relative;
    }

    div.container .entryform table th {
        padding: 10px 0;
        width: 100%;
        display: block;
        background: #f8f8f8;
    }

    div.container .entryform table td {
        padding: 15px 0;
        width: 100%;
        display: block;
    }

    div.container .entryform table th p i {
        padding: 2px 5px;
        display: inline-block;
        color: #ffffff;
        font-size: 9px;
        font-weight: 500;
        font-style: normal;
        line-height: 1.8;
        background-color: rgba(232, 64, 11, 1.0);
        position: absolute;
        top: 1px;
        right: 15px;
    }

    div.container .entryform table td p span.mwform-checkbox-field {
        margin: 10px 0;
        width: 100%;
        display: block;
        font-size: 12px;
    }

    div.container .entryform table td p span.mwform-checkbox-field span {
        margin-left: 10px !important;
        display: inline-block !important;
    }

    div.container .entryform table td p span {
        margin-left: 0;
        margin-top: 5px;
        display: block;
        font-size: 12px;
        line-height: 1.8;
    }

    div.container .entryform table td p span.sttl {
        margin: 5px 0;
        width: 100%;
        display: block;
        font-size: 13px;
        text-align: left;
    }

    div.container .entryform table td p span.sttl:first-child {
        margin: -5px 0 5px 0;
    }

    div.container .entryform table td p strong {
        margin: 10px 10px 0 0;
        width: 100%;
        display: block;
        font-size: 12px;
        line-height: 1.8;
    }

    div.container .entryform table td p strong:first-child {
        margin: 0 10px 0 0;
    }

    div.container .entryform table td input[type="text"] {
        padding: 5px 10px;
        display: inline-block;
        font-family: 'Noto Sans Japanese', sans-serif;
        font-size: 13px;
        line-height: 1.8;
        vertical-align: middle;
        border: #e2e2e2 solid 1px;
        box-sizing: border-box;
        background: #ffffff;
        -moz-border-radius: 3px;
        /*for Firefox*/
        -webkit-border-radius: 3px;
        /*for Safari and chrome*/
        border-radius: 3px;
        behavior: url(border-radius.htc);
        /*for IE*/
    }

    div.container .entryform table td input[type="text"]:focus {
        background: #f8f8f8;
    }

    div.container .entryform table td input[type="text"].sizeL {
        width: 90%;
    }

    div.container .entryform table td input[type="text"].sizeM,
    div.container .entryform table td input[type="text"].sizeMM {
        width: 95%;
    }

    div.container .entryform table td input[type="text"].sizeS {
        width: 40%;
    }

    div.container .entryform table td select {
        padding: 7px 7px;
        font-family: 'Noto Sans Japanese', sans-serif;
        font-size: 13px;
        line-height: 1.8;
        text-indent: 1px;
        border: #e2e2e2 solid 1px;
        box-sizing: border-box;
        background: #f8f8f8;
    }

    div.container .entryform table td textarea {
        padding: 7px 7px;
        width: 90%;
        height: 100px;
        font-family: 'Noto Sans Japanese', sans-serif;
        font-size: 13px;
        line-height: 1.8;
        text-indent: 1px;
    }

    div.container .entryform table td div.check {
        margin: 10px 20px;
        display: inline-block;
        font-size: 13px;
        line-height: 1.8;
        text-indent: 1px;
    }

    div.container .entryform table td div.check label {
        display: inline-block;
        font-size: 13px;
        line-height: 1.8;
        text-indent: 1px;
        cursor: pointer;
    }

    div.container .entryform .submit {
        padding-top: 50px;
        text-align: center;
    }

    div.container .entryform .submit p {
        padding-bottom: 20px;
        font-size: 12px;
        line-height: 1.8;
    }

    div.container .entryform .submit p a {
        font-size: 12px;
    }

    div.container .entryform .submit a.back {
        margin: 0 10px;
        padding: 10px 20px 10px 40px;
        display: inline-block;
        color: #000000;
        font-family: 'Noto Sans Japanese', sans-serif;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.8;
        text-decoration: none;
        text-indent: 2px;
        letter-spacing: 2px;
        cursor: pointer;
        border: none;
        background: #f8f8f8 url(../images/icon_arrL_bl.png) 10% 50% no-repeat;
        background-size: auto 10px;
    }

    div.container .entryform .submit input[type="submit"] {
        margin: 0 10px;
        padding: 10px 40px 10px 20px;
        display: inline-block;
        color: #ffffff;
        font-size: 13px;
        font-weight: 500;
        line-height: 1.8;
        text-decoration: none;
        text-indent: 2px;
        letter-spacing: 2px;
        background: #000000 url(../images/icon_arrR.png) 90% 50% no-repeat;
        background-size: auto 10px;
    }

    div.container .entryform .txtlink {
        padding: 20px 0 0 0;
    }

    div.container .entryform .txtlink a {
        font-size: 12px;
    }
}

/*　Footerbanner　*/
/* -----------------------------------------------*/
div#Footerbanner {
    margin-top: 80px;
    padding: 50px 0 30px 0;
    width: 100%;
    background-color: #403f3f;
    background: -moz-linear-gradient(left, #282727, #3d3c3c);
    /* mozilla */
    background: -webkit-gradient(linear, left top, right bottom, from(#282727), to(#3d3c3c));
    /* Webkit */
    background: -ms-linear-gradient(left, #282727, #3d3c3c);
    /* IE */
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1, startColorstr='#FF282727', endColorstr='#FF3d3c3c');
    /* IE5.5以上 */
}

div#Footerbanner ul {
    margin: 0 auto;
    width: 100%;
    max-width: 1500px;
    letter-spacing: -.4em;
}

div#Footerbanner ul li {
    margin: 0 1% 30px 1%;
    width: 14%;
    display: inline-block;
    position: relative;
}

div#Footerbanner ul li img {
    width: 100%;
    -webkit-box-shadow: 0 0 5px 0 #000000;
    /* Safari, Chrome用 */
    -moz-box-shadow: 0 0 5px 0 #000000;
    /* Firefox用 */
    box-shadow: 0 0 5px 0 #000000;
    /* CSS3 */
}

div#Footerbanner ul li:hover::after {
    display: inline-block;
    width: 100%;
    height: 2px;
    content: "";
    background: #73b12c;
    position: absolute;
    bottom: -10px;
    left: 0%;
}

@media screen and (max-width:1150px) {
    div#Footerbanner {
        margin-top: 30px;
        padding: 30px 0;
    }

    div#Footerbanner ul {
        width: 90%;
    }

    div#Footerbanner ul li {
        margin-right: 2.5%;
        margin-left: 2.5%;
        margin-top: 20px;
        width: 45%;
        float: left;
    }

    div#Footerbanner ul li:nth-child(6n) {
        margin-right: 2.5%;
    }

    div#Footerbanner ul li:nth-child(1),
    div#Footerbanner ul li:nth-child(2) {
        margin-top: 0;
    }

    div#Footerbanner ul li img {
        max-width: 230px;
    }

    div#Footerbanner ul li:hover::after {
        display: none;
    }
}


/*　CMS　*/
/* -----------------------------------------------*/
div.cms_entry {
    margin: 50px auto 0 auto;
    width: 90%;
    font-size: 13px;
    line-height: 2.4;
}

div.cms_entry p {
    padding: 10px 0;
    font-size: 13px;
    line-height: 2.4;
}

div.cms_entry p::after {
    content: " ";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
    line-height: 0;
}

div.cms_entry p {
    display: inline-table;
}

/* Hides from IE-mac \*/
* html div.cms_entry p {
    height: 1%;
}

/* End hide from IE-mac */
div.cms_entry img {
    margin-top: 30px;
    margin-bottom: 30px;
}

div.cms_entry .alignleft {
    margin-right: 30px;
    float: left;
}

div.cms_entry .alignright {
    margin-left: 30px;
    float: right;
}

div.cms_entry .alignleft,
div.cms_entry .alignright {
    max-width: 40%;
}

@media screen and (max-width:1150px) {
    div.cms_entry {
        margin: 30px auto 0 auto;
        width: 80%;
        font-size: 12px;
    }

    div.cms_entry p {
        font-size: 12px;
    }

    div.cms_entry img {
        margin-top: 20px;
        margin-bottom: 20px;
    }

    div.cms_entry .alignleft {
        margin-right: 20px;
    }

    div.cms_entry .alignright {
        margin-left: 20px;
    }
}

/*PCとSPのパンくず出し分け*/
.sp {
    display: none;
}

.pc {
    display: block;
}

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

    .pc {
        display: none;
    }

    div.pankuzu {
        margin-top: 0;
        height: 50px;
        top: -50px;
        bottom: 10px;
    }

    div.pankuzu.singlePost {
        top: inherit;
        height: auto;
    }

    div.pankuzu span span {
        margin-left: 15px;
        padding-left: 20px;
        display: inline-block;
        color: #FFF;
        font-size: 10px;
        line-height: 1.8;
        background: url(../images/icon_arrR_wh.png) left no-repeat;
        ;
        background-size: 10px auto;
    }

    div.pankuzu span a {
        margin-left: 15px;
        padding-left: 20px;
        display: inline-block;
        color: #73b12b;
        font-size: 10px;
        line-height: 1.8;
        background: url(../images/icon_arrR_wh.png) left no-repeat;
        background-size: 10px auto;
    }
}

div.container div.tlset table br.sp {
    display: none;
}

/*会社概要SP用*/
@media screen and (max-width:782px) {
    div.container .ttlL .navi {
        position: relative;
        top: 0;
        right: 10px;
    }

    div.container div.tlset table br.sp {
        display: block;
    }

    div.container div.tlset table {
        width: 100%;
    }

    div.container div.tlset table tbody,
    div.container div.tlset table th,
    div.container div.tlset table td,
    div.container div.tlset.half table tbody,
    div.container div.tlset.half table th,
    div.container div.tlset.half table td {
        display: block;
        width: 100%;
    }

    div.container div.tlset table th,
    div.container div.tlset table td,
    div.container div.tlset.half table th,
    div.container div.tlset.half table td {
        padding: 5px 0;
        text-align: left;
    }

    div.container div.tlset table th,
    div.container div.tlset.half table th {
        background: none;
    }

    div.container div.tlset table td,
    div.container div.tlset.half table td {
        border-bottom: none;
        padding-bottom: 30px;
    }

    div.container div.tlset table td div,
    div.container div.tlset.half table td div {
        border-bottom: none;
    }

    div.container div.tlset table td div,
    div.container div.tlset.half table td div {
        padding: 0 0 20px;
    }

    /*トップメッセージSP用*/
    div.container .topmessageset .topMassageImg {
        margin: 50px auto 0;
    }

    /* エンジニア採用 */
    div.container div.tlset {
        width: 80%;
        margin: 0 auto;
        padding: 0;
    }

    div.container div.tlset.min .dataTable td p {
        padding: 10px 0;
    }

    div.container div.tlset.min .dataTable td ul.dot {
        margin-left: 0;
    }

}

/*　inview　*/
/* -----------------------------------------------*/
/*----- フェードイン -----*/
.inviewfadeIn {
    opacity: 0;
    transition: .8s;
}

.fadeIn {
    opacity: 1.0;
}

/*----- 上へスライド -----*/
.inviewUp {
    -webkit-transform: translate(0, 40px);
    transform: translate(0, 40px);
    transition: .8s;
}

.Up {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

/*----- ズームイン -----*/
.inviewzoomIn {
    opacity: 0;
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    transition: .9s;
}

.zoomIn {
    opacity: 1.0;
    -webkit-transform: scale(1.05, 1.05);
    transform: scale(1.05, 1.05);
}

/*----- フェードインしながら上へスライド -----*/
.inviewfadeInUp {
    opacity: 0;
    -webkit-transform: translate(0, 60px);
    transform: translate(0, 60px);
    transition: .8s;
}

.fadeInUp {
    opacity: 1.0;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

/*=============================================================
sitemapの指定 START
=============================================================*/
#sitemapWrapper {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    align-content: stretch;
    justify-content: space-around;
}

#sitemapWrapper .chapter {
    flex-grow: 1;
}

#sitemapWrapper .list {
    margin: 20px auto 60px;
    padding: 0 20px;
}

#sitemapWrapper .chapterTitle {
    /*	border-bottom: #595959 solid 1px;*/
    border-bottom: #f1f1f1 solid 1px;
    padding: 0 0 10px;
    margin: 0 0 10px;
    font-size: 1.2em;
    font-weight: bold;
}

#sitemapWrapper .list li {
    font-size: 0.8em;
}

#sitemapWrapper .list li:hover {
    /*	background:#f8f8f8;*/
}

#sitemapWrapper .list li a {
    line-height: 2.5;
    display: block;
    text-decoration: none;
}

#sitemapWrapper .list li a:hover {
    color: #73b12b;
}

/*sitemap SP用の指定 START*/
@media only screen and (max-width: 640px) {
    #sitemapWrapper .list li {
        font-size: 12px;
    }
}

/*sitemap SP用の指定 END*/
/*=============================================================
sitemapの指定 END
=============================================================*/
/*=============================================================
公告ページの指定 START
=============================================================*/
#publicWrapper .dlList {
    margin: 50px auto 0;
}

#publicWrapper .dlList li {
    text-align: left;
    font-size: 0.8em;
}

#publicWrapper .dlList li a {
    text-decoration: none;
}

#publicWrapper .dlList li a:hover {
    color: #73b12b;
}

#publicWrapper .memo {
    margin: 30px auto 0;
}

#publicWrapper .memo li {
    font-size: 0.8em;
    padding: 5px 0;
}

/*=============================================================
公告ページの指定 END
=============================================================*/
/*　IR 190612　*/
/* -----------------------------------------------*/
div.container .newsset table td a {
    font-size: 13px;
    line-height: 1.8;
}

div.container .ttl_line_gr.ir {
    margin: 0 auto;
    padding: 0;
}

div.container .ttl_line_gr.ir:before {
    top: 50%;
}

body#page div.container .newsset.clear {
    margin: 50px auto !important;
}

div.container .inlead {
    padding: 20px 50px;
    font-size: 13px;
    line-height: 1.8;
}

div.ir_topmovie {
    margin: 80px auto 0 auto;
    width: 100%;
}

div.ir_topmovie .movieL {
    width: 50%;
    float: left;
    text-align: center;
}

div.ir_topmovie .movieR {
    width: 50%;
    float: right;
    text-align: center;
}

div.ir_topmovie .inmovie {
    width: 100%;
    max-width: 550px;
    display: inline-block;
}

div.ir_topmovie .mttl {
    margin-top: 10px;
    padding: 0;
    color: #73b12b;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.8;
}

div.ir_topmovie .movie {
    padding-top: 56.25%;
    width: 100%;
    border: #939393 solid 1px;
    box-sizing: border-box;
    position: relative;
}

div.ir_topmovie .movie iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}

div.ir_block {
    margin: 0 auto;
    padding-top: 100px;
    width: 90%;
    max-width: 1200px;
    position: relative;
}

div.ir_navi {
    width: 20%;
    float: left;
}

div.ir_navi .ttl {
    padding: 25px 0;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.8;
    border-top: #73b12b solid 2px;
    box-sizing: border-box;
    position: relative;
}

div.ir_navi ul {
    width: 100%;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

div.ir_navi ul li {
    border-bottom: #e2e2e2 solid 1px;
    box-sizing: border-box;
}

div.ir_navi ul li:last-child {
    border-bottom: none;
}

div.ir_navi ul li a {
    padding: 15px 20px 15px 50px;
    display: block;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.8;
    text-align: left;
    text-decoration: none;
    background: #f8f8f8;
    position: relative;
}

div.ir_navi ul li a:before {
    margin-top: -3px;
    width: 8px;
    height: 2px;
    content: "";
    background: #73b12b;
    position: absolute;
    top: 50%;
    left: 25px;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

div.ir_navi ul li a::after {
    margin-bottom: -3px;
    width: 8px;
    height: 2px;
    content: "";
    background: #73b12b;
    position: absolute;
    bottom: 50%;
    left: 25px;
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

div.ir_navi ul li a:hover:before,
div.ir_navi ul li a:hover::after {
    left: 30px;
}

div.ir_navi ul li span {
    padding: 15px 20px 15px 50px;
    display: block;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.8;
    text-align: left;
    text-decoration: none;
    background: #73b12b;
    position: relative;
}

div.ir_navi ul li span:before {
    margin-top: -3px;
    width: 8px;
    height: 2px;
    content: "";
    background: #ffffff;
    position: absolute;
    top: 50%;
    left: 25px;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

div.ir_navi ul li span::after {
    margin-bottom: -3px;
    width: 8px;
    height: 2px;
    content: "";
    background: #ffffff;
    position: absolute;
    bottom: 50%;
    left: 25px;
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

div.ir_contents {
    width: 70%;
    float: right;
}

div.ir_contents .news {
    width: 100%;
}

div.ircalendar {
    margin: 50px auto;
    max-width: 800px;
}

div.ircalendar img {
    width: 25%;
}

div.irgovernance {
    padding: 0;
}

div.irgovernance img {
    width: 100%;
}

div.irttlnaviset {
    margin: 50px auto -30px auto;
    width: 90%;
    height: 50px;
    position: relative;
}

div.irttlnaviset .ttl {
    padding: 20px 20px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.8;
    text-align: left;
    background: #f8f8f8;
}

div.irttlnaviset .yearnavi {
    position: absolute;
    top: 0;
    right: 0;
}

div.irttlnaviset .yearnavi select {
    padding: 7px 7px;
    width: 150px;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.8;
    text-indent: 1px;
    border: #e2e2e2 solid 1px;
    box-sizing: border-box;
    background: #ffffff;
    -moz-border-radius: 35px;
    /*for Firefox*/
    -webkit-border-radius: 35px;
    /*for Safari and chrome*/
    border-radius: 35px;
    behavior: url(border-radius.htc);
    /*for IE*/
}

div.irttlnaviset .ttlnavi {
    letter-spacing: -.4em;
    position: absolute;
    top: 0;
    left: 0;
}

div.irttlnaviset .ttlnavi a {
    margin: 0 7px 0 0;
    padding: 7px 10px;
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.8;
    text-decoration: none;
    text-indent: 2px;
    border: #ffffff solid 2px;
    box-sizing: border-box;
    background-color: rgba(255, 255, 255, 0.75);
}

div.irttlnaviset .ttlnavi a.select {
    color: #73b12b;
    border: #73b12b solid 2px;
    box-sizing: border-box;
    background-color: rgba(255, 255, 255, 1.0);
}

div.irttlnaviset .ttlnavi a:hover {
    color: #73b12b;
}

div.irttlnaviset.single {
    padding-top: 0;
}

div.irttlnaviset.single .yearnavi {
    top: 20px;
    right: 20px;
}

div.irhighlight {
    margin: 0 auto;
    width: 90%;
    max-width: 1100px;
    min-width: 0;
}

div.irhighlight div.irLR {
    margin: 0 auto;
    width: 100%;
    min-width: 0;
}

/* .clearfix の inline-table が float 子＋広いテーブルで intrinsic 幅まで膨らみ、横スクロールが効かなくなるのを防ぐ */
div.irhighlight div.irLR.clearfix {
    display: flow-root;
    width: 100%;
    min-width: 0;
}

div.irhighlight div.irLR .half {
    margin: 20px 0;
    width: 47.5%;
    min-width: 0;
}

div.irhighlight div.irLR .ttlset {
    margin: 20px 0;
}

div.irhighlight div.irLR .ttlset .ttl {
    padding-bottom: 10px;
    display: inline-block;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.8;
    border-bottom: #000000 solid 2px;
    box-sizing: border-box;
}

div.irhighlight div.irLR .irgra {
    width: 100%;
    min-width: 0;
}

div.irhighlight div.irLR .irgra .scroll-hint-shadow-wrap::before,
div.irhighlight div.irLR .irgra .scroll-hint-shadow-wrap::after {
    display: none;
}

div.irhighlight div.irLR .irgra .scroll-hint-icon {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

div.irhighlight div.irLR .irgra .scroll-hint-text {
    letter-spacing: 0;
}

div.irhighlight div.irLR .irgra .scrollable-table {
    box-sizing: border-box;
    margin: 20px 0;
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
}

div.irhighlight div.irLR .irgra .scrollable-table tbody {
    display: table;
    width: max-content;
    max-width: none;
    min-width: 100%;
}

div.irhighlight div.irLR .irgra .scrollable-table table th,
div.irhighlight div.irLR .irgra .scrollable-table table td {
    white-space: nowrap;
}

div.irhighlight div.irLR .irgra table {
    margin-bottom: 10px;
    width: 100%;
    border-collapse: separate;
    border-spacing: 1px;
    border: 0 !important;
    background: #e2e2e2;
}

div.irhighlight div.irLR .irgra table th,
div.irhighlight div.irLR .irgra table td {
    padding: 10px 5px;
    font-size: 12px;
    line-height: 1.8;
}

div.irhighlight div.irLR .irgra table th {
    text-align: center;
    background: #f8f8f8;
}

div.irhighlight div.irLR .irgra table td {
    text-align: right;
    background: #ffffff;
}

div.irhighlight ul.tab {
    margin: 50px auto 20px auto;
    width: 100%;
    height: 55px;
    text-align: center;
}

div.irhighlight ul.tab li {
    width: 30%;
    display: inline-block;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

div.irhighlight ul.tab li a {
    margin: 0 5px;
    padding: 15px 0;
    width: 90%;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    border: #e2e2e2 solid 1px;
    box-sizing: border-box;
    word-break: normal;
    overflow-wrap: normal;
}

div.irhighlight ul.tab li.select a {
    color: #73b12b;
    border: #73b12b solid 2px;
    box-sizing: border-box;
}

div.irhighlight ul.tab li a:hover {
    color: #73b12b;
}

div.irhighlight ul.content .hide {
    display: none;
}

.english_highlights div.irhighlight ul.tab li.select a {
    word-break: normal;
    overflow-wrap: normal;
}

div.maillink {
    margin: -50px auto 0 auto;
    width: 100%;
    text-align: center;
    user-select: none;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

div.maillink a {
    padding: 15px 30px;
    display: inline-block;
    color: #73b12b;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.8;
    text-decoration: none;
    border: #73b12b solid 3px;
    box-sizing: border-box;
}

div.mailframe {
    width: 100%;
    max-width: 1000px;
}

div.mailframe.register {
    margin: 50px auto 70px auto;
}

div.mailframe.deregister {
    margin: 50px auto 70px auto;
}

div.mailframe iframe {
    width: 100%;
    border: none;
}

div.mailframe.register,
div.mailframe.register iframe {
    height: 500px;
}

div.mailframe.deregister,
div.mailframe.deregister iframe {
    height: 380px;
}

.irsample {
    display: none !important;
}

.governance_img {
    text-align: center;
}

.governance_img img {
    max-width: 750px;
}

@media screen and (max-width:1150px) {
    div.container .inlead {
        padding: 20px 20px;
        font-size: 13px;
        line-height: 1.8;
    }

    div.ir_topmovie {
        margin: 50px auto 0 auto;
        width: 90%;
    }

    div.ir_topmovie .movieL {
        width: 100%;
        float: inherit;
    }

    div.ir_topmovie .movieR {
        margin-top: 30px;
        width: 100%;
        float: inherit;
    }

    div.ir_topmovie .mttl {
        font-size: 13px;
    }

    div.ir_block {
        padding-top: 30px;
        width: 90%;
    }

    div.ir_block .wideblock {
        width: 100% !important;
    }

    div.ir_navi {
        margin-bottom: 30px;
        width: 100%;
        float: inherit;
        -webkit-box-shadow: 5px 5px 10px 0 #cecece;
        /* Safari, Chrome用 */
        -moz-box-shadow: 5px 5px 10px 0 #cecece;
        /* Firefox用 */
        box-shadow: 5px 5px 10px 0 #cecece;
        /* CSS3 */
    }

    div.ir_navi .ttl {
        padding: 15px 0;
        font-size: 15px;
        cursor: pointer;
        user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        position: relative;
    }

    div.ir_navi .ttl:before {
        width: 13px;
        height: 3px;
        content: "";
        background: #73b12b;
        position: absolute;
        top: 50%;
        right: 20px;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    div.ir_navi .ttl::after {
        width: 13px;
        height: 3px;
        content: "";
        background: #73b12b;
        position: absolute;
        top: 50%;
        right: 20px;
        -moz-transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        -o-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    div.ir_navi .ttl.show:before {
        -moz-transform: rotate(225deg);
        -webkit-transform: rotate(225deg);
        -o-transform: rotate(225deg);
        -ms-transform: rotate(225deg);
        transform: rotate(225deg);
    }

    div.ir_navi .ttl.show::after {
        -moz-transform: rotate(315deg);
        -webkit-transform: rotate(315deg);
        -o-transform: rotate(315deg);
        -ms-transform: rotate(315deg);
        transform: rotate(315deg);
    }

    div.ir_navi ul {
        display: none;
    }

    div.ir_navi ul li a {
        padding: 10px 20px 10px 50px;
    }

    div.ir_navi ul li span {
        padding: 10px 20px 10px 50px;
    }

    div.ir_contents {
        width: 100%;
        float: inherit;
    }

    div.ir_contents .news {
        width: 90%;
    }

    div.ircalendar {
        margin: 30px auto;
        width: 90%;
    }

    div.ircalendar img {
        width: 50%;
    }

    div.irttlnaviset {
        margin: 30px auto -10px auto;
        height: auto;
    }

    div.irttlnaviset .ttl {
        padding: 10px 20px;
        font-size: 16px;
    }

    div.irttlnaviset .yearnavi {
        margin-bottom: 15px;
        text-align: center;
        position: static;
    }

    div.irttlnaviset .ttlnavi {
        margin-bottom: 20px;
        position: static;
    }

    div.irttlnaviset .ttlnavi a {
        margin: 0;
        padding: 7px 0;
        width: 33.33333%;
        font-size: 12px;
        text-align: center;
    }

    div.irhighlight {
        max-width: 100%;
        min-width: 0;
    }

    div.irhighlight div.irLR {
        margin: 0 auto;
        width: 100%;
        min-width: 0;
    }

    div.irhighlight div.irLR .half {
        margin: 20px 0;
        width: 100%;
        min-width: 0;
    }

    div.irhighlight div.irLR .ttlset {
        margin: 20px 0;
    }

    div.irhighlight div.irLR .ttlset .ttl {
        font-size: 14px;
    }

    div.irhighlight div.irLR .irgra {
        width: 100%;
        min-width: 0;
    }

    div.irhighlight div.irLR .irgra [id^="Chart"] {
        max-width: 100%;
    }

    div.irhighlight div.irLR .irgra table th,
    div.irhighlight div.irLR .irgra table td {
        padding: 10px 5px;
        font-size: 11px;
        white-space: nowrap;
    }

    div.irhighlight ul.tab {
        margin: 30px auto;
        display: flex;
        justify-content: center;
        gap: 2vw;
        width: 100%;
        height: auto;
    }

    div.irhighlight ul.tab li {
        flex: 1;
    }

    div.irhighlight ul.tab li a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 10px 0;
        font-size: 11px;
        letter-spacing: 1px;
    }

    div.maillink {
        margin: 0 auto;
    }

    div.maillink a {
        padding: 15px 30px;
        font-size: 16px;
    }

    .governance_img img {
        width: 100%;
    }
}

@media screen and (max-width:600px) {
    .english_highlights div.irhighlight ul.tab {
        gap: 1vw;
    }

    .english_highlights div.irhighlight ul.tab li {
        width: inherit;
    }

    .english_highlights div.irhighlight ul.tab li a {
        font-size: miv(3vw, 14px);
        letter-spacing: 0;
    }
}

/* IR動画 START */
#irmovieList {
    padding: 60px 7% 0 7%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    text-align: center;
}

#irmovieList a {
    text-decoration: none;
}

#irmovieList a.banner {
    display: block;
}

#irmovieList a.banner img {
    max-width: 100%;
    border: 1px solid #e1e1e1;
}

#irmovieList .pagination,
#irmovieList .entry-footer,
#irmovieList .entry-header {
    display: none;
}

#irmovieList .category-irmovie {
    display: block;
    width: 45%;
    max-width: 550px;
    margin: 20px 0;
}

#irmovieList .category-irmovie .movie {
    position: relative;
    box-sizing: border-box;
    height: 0;
    margin: 0;
    padding-top: 56.18%;
    border: 1px solid #939393;
}

#irmovieList .category-irmovie .movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 100%;
    width: 100%;
    border-style: none;
    line-height: 1.0;
}

/* 20周年サイトへのリンク start */
#irmovieList .category-irmovie img {
    width: 100%;
    height: auto;
}

#irmovieList .category-irmovie a+p {
    height: 1em;
}

/* 20周年サイトへのリンク end */
#irmovieList .mttl {
    margin: 0 0 20px 0;
    color: #73b12b;
    line-height: 1.4;
}

#irmovieList .releaseDate {
    margin: 5px 0 0 0;
    padding: 5px 0;
    font-size: 0.8em;
}

body.news div.container .archiveIrmovie .ttlL {
    display: block;
}

/* cm動画 START */
#irmovieList .category-irmovie.cm .movie {
    border: none;
}

#irmovieList .category-irmovie.cm .movie .cmmovie {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.cmLink,
.cmLink:hover {
    color: #73b12b;
    text-decoration: none;
}

/* cm動画 END */

.archive-irmovie-page .topComment {
    font-size: 13px;
    line-height: 1.6;
}

@media screen and (min-width:1151px) {
    .archive-irmovie-page .topComment {
        width: 90%;
        max-width: 1600px;
        margin: 40px auto;
    }

    .archive-irmovie-page #irmovieList {
        display: block;
        padding: 60px 10% 0 10%;
    }

    .archive-irmovie-page #irmovieList.rec {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        padding-top: 20px;
    }

    .archive-irmovie-page #irmovieList .category-irmovie {
        width: 100%;
        max-width: 100%;
    }

    .archive-irmovie-page #irmovieList.rec .category-irmovie {
        width: 46%;
        margin: 0 0 60px 0;
    }

    .archive-irmovie-page #irmovieList .category-irmovie .inmovie {
        zoom: 100%;
        padding-bottom: 60px;
    }

    .archive-irmovie-page #irmovieList.rec .category-irmovie .inmovie {
        padding-bottom: 0;
    }

    .archive-irmovie-page #irmovieList .category-irmovie .inmovie::after {
        content: ".";
        display: block;
        height: 0;
        margin: 0;
        padding: 0;
        font-size: 0;
        line-height: 0;
        visibility: hidden;
        clear: both;
    }

    .archive-irmovie-page #irmovieList .category-irmovie .inmovie .movie {
        width: 550px;
        height: 0;
        margin: 0 50px 0 0;
        padding-top: 308px;
        float: left;
    }

    .archive-irmovie-page #irmovieList.rec .category-irmovie .inmovie .movie {
        width: 100%;
        max-width: 550px;
        margin: 0 auto;
        padding-top: 56%;
        float: none;
    }

    .archive-irmovie-page #irmovieList .category-irmovie .mttl {
        margin: 0;
        padding: 0;
        text-align: left;
    }

    .archive-irmovie-page #irmovieList.rec .category-irmovie .mttl {
        padding: 10px;
        text-align: center;
    }

    .archive-irmovie-page #irmovieList .category-irmovie .releaseDate {
        margin: 0;
        padding: 30px 0 10px 0;
        text-align: left;
    }
}


@media screen and (max-width:1150px) {
    .archive-irmovie-page .topComment {
        margin: 40px auto;
        padding: 0 20px;
    }

    body.news div.container .archiveIrmovie .ttlL {
        padding: 15px 20px;
    }

    #irmovieList {
        padding-top: 0;
        display: block;
    }

    #irmovieList .category-irmovie {
        width: 100%;
        margin: 20px auto;
    }

    #irmovieList.rec .category-irmovie {
        margin: 0 auto 7vw auto;
    }

    #irmovieList.rec .category-irmovie .mttl {
        padding: 10px;
    }

    #irmovieList .releaseDate {
        font-size: 1.0em;
    }
}

/* IR動画 END */

/* ビジネスモデル START */
#businessmodel,
#businessmodel div,
#businessmodel span,
#businessmodel p,
#businessmodel ul,
#businessmodel li,
#businessmodel h4,
#businessmodel h5,
#businessmodel h6,
#businessmodel a,
#businessmodel section {
    box-sizing: border-box;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: inherit;
}

#businessmodel {
    padding: 60px 100px 0 100px;
}

#businessmodel .content {
    padding: 0 0 80px 0;
}

#businessmodel .contentTitle {
    margin: 0 0 30px 0;
    padding: 15px 0;
    font-size: 1.8em;
    font-weight: bold;
    line-height: 1.2;
    border-top: 2px solid #73b12b;
}

#businessmodel .contentCatch {
    margin: 0 0 30px 0;
    font-size: 1.2em;
    font-weight: bold;
}

#businessmodel .contentDescription {
    padding: 0 0 80px 0;
    line-height: 2.0;
}

#businessmodel #content1 .img1 {
    height: 0;
    margin: 0 auto 40px auto;
    padding-top: 240px;
    background: url("../images/bm/pc1.png") center top no-repeat;
    background-size: contain;
}

#businessmodel #content2 .img2 {
    height: 0;
    margin: 0 auto 20px auto;
    padding-top: 280px;
    background: url("../images/bm/pc2.png") center top no-repeat;
    background-size: contain;
}

#businessmodel #content3 .lvnmatchLogo {
    width: 460px;
    margin: 0 auto 30px auto;
    padding: 70px 0 20px 220px;
    background: url("../images/bm/lvnmatch.png") left top no-repeat;
    background-size: 200px;
}

#businessmodel #content3 .lvnmatchLogo img {
    display: block;
    width: 100%;
    max-width: 240px;
    margin: 0 auto;
}

#businessmodel #content3 .serviceList {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    justify-content: center;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
}

#businessmodel #content3 .serviceList li {
    width: 10%;
    min-width: 12.0em;
    margin: 7px 0.2%;
    padding: 10px 0;
    border: 1px solid #73b12b;
    box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.2);
}

#businessmodel #content3 .serviceList li p.name {
    margin: 0 0 10px 0;
    color: #73b12b;
    font-size: 1.1em;
    font-weight: bold;
    text-align: center;
}

#businessmodel #content3 .serviceList li p.name.narrow {
    letter-spacing: -0.1em;
}

#businessmodel #content3 .serviceList li p.descliption {
    padding: 0 10px;
}

#businessmodel #content4 .serviceTitle {
    margin: 0 0 20px 0;
    color: #73b12b;
    font-size: 1.4em;
    font-weight: bold;
    text-align: center;
}

#businessmodel #content4 .addList {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -webkit-justify-content: center;
    justify-content: center;
    padding: 0 0 60px 0;
}

#businessmodel #content4 .addList li {
    width: 420px;
    margin: 0 40px;
    padding: 20px 40px;
    border: 2px solid #d1d1d1;
}

#businessmodel #content4 .addList li img {
    width: 50%;
    display: block;
    margin: 0 auto 10px auto;
}

#businessmodel #content4 .addList li h6 {
    margin: 0 0 10px 0;
    color: #73b12b;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

#businessmodel #content4 .addList li p {
    line-height: 1.6;
}

#businessmodel #content4 .serviceMemo {
    margin: 0 0 20px 0;
    text-align: center;
}

#businessmodel #content4 .bannerList {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 800px;
    margin: 0 auto;
    padding: 0 0 0 140px;
    background: url("../images/bm/certification.png") left no-repeat;
    background-size: contain;
}

#businessmodel #content4 .bannerList li {
    padding: 10px 40px;
}

#businessmodel #content4 .bannerList li:nth-child(1) {
    width: 47%;
}

#businessmodel #content4 .bannerList li:nth-child(2) {
    width: 53%;
}

#businessmodel #content4 .bannerList li img {
    width: 100%;
}

@media screen and (max-width:1150px) {
    #businessmodel {
        padding: 60px 60px 0 60px;
    }

    #businessmodel .content {
        padding-bottom: 60px;
    }

    #businessmodel #content2 .img2 {
        padding-top: 26vw;
    }

    #businessmodel #content4 .addList li {
        width: 44%;
        margin: 0 3%;
        padding: 20px 30px;
    }

    #businessmodel #content4 .addList li img {
        width: 60%;
    }

    #businessmodel #content4 .bannerList {
        width: 80%;
        padding-left: 13%;
    }

    #businessmodel #content4 .bannerList li {
        padding: 0 20px;
    }
}

@media screen and (max-width:900px) {
    #businessmodel {
        padding: 40px 40px 0 40px;
    }

    #businessmodel #content1 .img1 {
        padding-top: -webkit-calc((90vw - 80px) * 0.33);
        padding-top: calc((90vw - 80px) * 0.33);
    }

    #businessmodel #content3 .lvnmatchLogo {
        width: 480px;
        padding: 70px 0 20px 210px;
        background-size: 200px;
    }

    #businessmodel #content3 .serviceList li {
        margin: 7px 1%;
    }

    #businessmodel #content4 .bannerList {
        width: 90%;
    }
}

@media screen and (max-width:640px) {
    #businessmodel {
        padding: 20px 20px 0 20px;
    }

    #businessmodel .content {
        padding-bottom: 40px;
    }

    #businessmodel .contentTitle {
        margin-bottom: 20px;
        padding: 10px;
        font-size: 1.6em;
        background-color: #f1f1f1;
    }

    #businessmodel .contentCatch {
        margin: 0 0 20px 0;
    }

    #businessmodel .contentDescription {
        padding: 0 0 30px 0;
        line-height: 1.4;
    }

    #businessmodel #content1 .img1 {
        margin-bottom: 20px;
        padding-top: -webkit-calc(100vw * 0.47);
        padding-top: calc(100vw * 0.47);
        background: url("../images/bm/sp1.png") center top no-repeat;
        background-size: contain;
    }

    #businessmodel #content2 {
        padding-bottom: 0;
    }

    #businessmodel #content2 .img2 {
        margin-bottom: 40px;
        padding-top: 60vw;
        background: url("../images/bm/sp2.png") center top no-repeat;
        background-size: contain;
    }

    #businessmodel #content3 .lvnmatchLogo {
        width: 100%;
        padding: 20px 0;
        background: none;
    }

    #businessmodel #content3 .lvnmatchLogo img {
        width: 50%;
        min-width: 180px;
    }

    #businessmodel #content3 .serviceList li {
        min-width: 30%;
    }

    #businessmodel #content4 .serviceTitle {
        font-size: 1.2em;
    }

    #businessmodel #content4 .addList {
        display: block;
        padding-bottom: 30px;
    }

    #businessmodel #content4 .addList li {
        width: 100%;
        margin: 10px 0;
        padding: 20px;
    }

    #businessmodel #content4 .addList li img {
        max-width: 180px;
    }

    #businessmodel #content4 .addList li p {
        line-height: 1.4;
    }

    #businessmodel #content4 .bannerList {
        width: 100%;
        padding: 20vw 0 0 0;
        background: url("../images/bm/certification.png") center top no-repeat;
        background-size: 18vw;
    }

    #businessmodel #content4 .bannerList li {
        padding: 0 10px;
    }
}

@media screen and (max-width:480px) {
    #businessmodel #content3 .serviceList li {
        min-width: 45%;
    }
}

@media screen and (max-width:440px) {
    #businessmodel #content2 .img2 {
        margin-bottom: 0;
        padding-top: -webkit-calc((90vw - 20px) * 0.9);
        padding-top: calc((90vw - 20px) * 0.9);
    }
}

/* ビジネスモデル END */

/* CM動画library START */
#cm_library {
    padding: 60px 7% 0 7%;
}

#cm_library .movieList {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding: 0 0 60px 0;
}

#cm_library .movieList .movie {
    width: 100%;
    max-width: 550px;
}

#cm_library .movieList .description {
    width: 100%;
    max-width: -webkit-calc(100% - 590px);
    max-width: calc(100% - 590px);
    padding: 30px 0;
}

#cm_library .movieList .description h4 {
    margin: 0 0 1.2em 0;
    color: #73b12b;
    font-weight: bold;
    line-height: 1.2;
}

#cm_library .movieList .description p {
    line-height: 1.2;
}

@media screen and (max-width:1150px) {
    #cm_library .movieList {
        display: block;
        padding: 0 0 30px 0;
    }

    #cm_library .movieList .movie {
        margin: 0 auto;
        text-align: center;
    }

    #cm_library .movieList .description {
        margin: 0 auto;
        max-width: 550px;
    }

    #cm_library .movieList .description h4 {
        margin-bottom: 0.6em;
    }
}

/* CM動画library END */

/* english page font START */
.languageEn,
.languageEn div,
.languageEn span,
.languageEn p,
.languageEn ul,
.languageEn li,
.languageEn h4,
.languageEn h5,
.languageEn h6,
.languageEn a,
.languageEn section {
    font-family: 'Roboto', arial, sans-serif !important;
    -moz-hyphens: auto !important;
    -ms-hyphens: auto !important;
    -webkit-hyphens: auto !important;
    hyphens: auto !important;
    word-break: normal;
}

.languageEn,
.languageEn h1,
.languageEn h2,
.languageEn h3,
.languageEn h4,
.languageEn h5,
.languageEn h6,
.languageEn p,
.languageEn ul,
.languageEn li,
.languageEn dl,
.languageEn dt,
.languageEn dd {
    hyphens: auto !important;
    word-break: normal;
}

/* english page font END */

/* 役員略歴ページ */
.tlset.biographies table th:nth-child(1) {
    width: 4%;
}

.tlset.biographies table th:nth-child(2) {
    width: 3%;
    border-left: 1px solid #e9e9e9;
    border-right: 1px solid #e9e9e9;
}

tlset.biographies table td:nth-child(2) {
    border-left: 1px solid #e9e9e9;
    border-right: 1px solid #e9e9e9;
}

.tlset.biographies tr {
    border-bottom: 1px solid #e9e9e9;
}

.tlset.biographies table td {
    vertical-align: top;
}

div.container div.tlset.biographies table td {
    width: auto;
}

div.container div.tlset.biographies table td p {
    white-space: nowrap;
    padding: 0 20px;
}

div.container div.tlset.biographies table td:nth-child(2) {
    border-right: 1px solid #e9e9e9;
    border-left: 1px solid #e9e9e9;
}

.tlset.biographies dl {
    padding: 0 25px;
    font-size: 12px;
    line-height: 1.8;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
}

.tlset.biographies dl dt {
    width: 20%;
    white-space: nowrap;
    /*align-items: center;
    justify-content: center;*/
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    line-height: 1.4;
    margin-bottom: 8px;
}

.tlset.biographies dl dd {
    width: 80%;
    line-height: 1.4;
    margin-bottom: 10px;
}

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

    .tlset.biographies dl dt,
    .tlset.biographies dl dd {
        width: 100%;
    }
}

@media only screen and (max-width: 782px) {
    .tlset.biographies tr {
        border-bottom: none;
        border: none;
    }

    .tlset.biographies tr:first-child {
        display: none;
    }

    .tlset.biographies table th:nth-child(1),
    .tlset.biographies table th:nth-child(2) {
        width: 0;
        border-right: none;
        border-left: none;
    }

    div.container div.tlset.biographies table td:nth-child(2) {
        border-right: none;
        border-left: none;
    }

    .tlset.biographies table th p {
        display: none;
    }

    .tlset.biographies table td::before {
        content: attr(data-label);
        display: block;
        padding-right: 20px;
        white-space: nowrap;
        text-align: left;
        letter-spacing: 0;
        font-weight: normal;
        font-size: 12px;
        margin-bottom: 5px;
        padding-bottom: 5px;
        border-bottom: 1px solid #e9e9e9;
    }

    .tlset.biographies table tr {
        display: block;
        margin-bottom: 60px;
        padding-bottom: 30px;
        border-bottom: 1px solid #e9e9e9;
    }

    .tlset.biographies dl {
        padding: 0;
    }

    div.container div.tlset.biographies table th p,
    div.container div.tlset.biographies table td p {
        padding: 0;
        font-size: 12px;
    }

    .tlset.biographies dl dt {
        width: 36%;
        letter-spacing: 0.1em;
    }

    .tlset.biographies dl dd {
        width: 60%;
    }
}

/* LVN DX株式会社 */
div.container .lvndxWrap {
    margin: 30px auto 0 auto;
    width: 90%;
}

div.container .lvndxWrap .mvImg {
    margin: 70px auto;
    display: block;
    height: auto;
    width: 100%;
}

div.container .lvndxWrap .visiton {
    font-size: 42px;
    text-align: center;
    margin: 2.5em auto;
}

div.container .lvndxWrap .visiton .sub {
    color: #73B12B;
    font-size: 16px;
    margin-top: 2em;
}

div.container .lvndxWrap .secTitle {
    position: relative;
    display: block;
    text-align: center;
    margin: 5em auto 3em auto;
    font-size: 32px;
}

div.container .lvndxWrap .secTitle:before {
    content: '';
    position: absolute;
    bottom: -35px;
    display: inline-block;
    width: 100px;
    height: 2px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #73B12B;
    border-radius: 2px;
}

div.container .entryform table td textarea {
    border: #e2e2e2 solid 1px;
    border-radius: 3px;
}

/*お問い合わせ完了画面*/
div.container .lvndxWrap .complate {
    text-align: center;
    margin-bottom: 80px;
}

@media only screen and (max-width: 1150px) {
    div.container .lvndxWrap {
        margin: -20px auto 0 auto;
        width: 80%;
    }

    div.container .lvndxWrap .visiton {
        font-size: 1.3em;
        line-height: 1.4;
    }

    div.container .lvndxWrap .visiton .sub {
        font-size: 0.6em;
        line-height: 1.3;
        margin-top: 1.2em;
    }

    div.container .lvndxWrap .secTitle {
        font-size: 1.2em;
    }

    div.container .lvndxWrap .secTitle:before {
        bottom: -15px;
        width: 4em;
    }

    div.container .lvndxWrap .complate {
        margin: 30px auto 0 auto;
        width: 80%;
    }
}

@media only screen and (max-width: 782px) {
    div.container .lvndxWrap {
        margin: 0 auto;
        width: 100%;
        padding-bottom: 50px;
    }

    div.container .lvndxWrap .mvImg {
        margin: 50px auto 0;
    }

    div.container .lvndxWrap .tlset table td p span {
        line-height: 1.4;
    }

    div.container .lvndxWrap .tlset table tr:last-child th {
        border-bottom: #e9e9e9 solid 1px;
        box-sizing: border-box;
    }

    div.container .lvndxWrap .complate {
        font-size: 12px;
        line-height: 1.4em;
        text-align: left;
    }
}
