@charset "utf-8";

/* // ContentsWrap //
----------------------------------------------- */

#ContentsWrap {
    padding-bottom: 50px;
}


/* // Header //
----------------------------------------------- */
#Header {
    margin-bottom: 0;
}
.OLD #Header {
    margin-bottom: 8px;
    ;
}

#Header .logo {
    display: block;
    vertical-align: middle;
    height: 45px;
    position: relative;
}
#Header .widthFix {
    padding: 0 !important;
}
#Header .logo img {
    height: auto;
    width: 260px;
    position: absolute;
    left: 5px;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%);
}

/* //    |- HeaderContactBtn  */
#HeaderContactBtn {
    position: fixed;
    top: auto;
    bottom: 0px;
    right: 0px;
    width: 90px;
    height: 40px;
}
#HeaderContactBtn .wrap {}
#HeaderContactBtn .wrap .tx {
    font-size: 80%;
}
#HeaderContactBtn .wrap .tx .en {
    font-size: 110%;
}
#HeaderContactBtn .wrap .tx .ja {
    margin-top: 4px;
}
#HeaderContactBtn:before {}


/* // GnaviSP //
----------------------------------------------- */
#GnaviSP * {
    box-sizing: border-box;
}

.modalMenuBox>.inner>.wrap {
    right: -45px;
    padding-right: 45px;
}
.modalMenuBox .closeBtn.fix {
    width: 45px;
    height: 45px;
}
.modalMenuBox .closeBtn {
    color: #000;
    background-color: transparent;
}

/* // GnaviSPMenu //
----------------------------------------------- */
#GnaviSPMenu {
    padding: 10px;
}
/* //    |- categoryMenu  */
#GnaviSPMenu .categoryMenu .menu li {
    border-bottom: 1px solid #FFF;
}
#GnaviSPMenu .categoryMenu .menu li a {
    background-color: #E61A19;
    display: block;
    color: #FFF;
    padding: 13px;
    line-height: 1;
}
#GnaviSPMenu .categoryMenu .menu li.on a {
    background-color: #A00000;
}
#GnaviSPMenu .categoryMenu .menu li a .en {
    display: block;
    text-align: center;
    font-weight: 600;
    font-size: 112%;
}
#GnaviSPMenu .categoryMenu .menu li a .ja {
    display: block;
    text-align: center;
    margin-top: 5px;
    font-size: 92%;
}

/* //    |- localMenu  */
#Top #GnaviSPMenu .localMenu {
    margin-bottom: 0;
    padding-top: 0;
}
#GnaviSPMenu .localMenu {
    margin-bottom: 20px;
    padding-top: 10px;
}
#GnaviSPMenu .localMenu .title {
    color: #555;
    font-weight: 600;
    margin-bottom: 6px;
    font-size: 120%;
    /*
	border-bottom:3px solid #5B5C57;
	padding-bottom:4px;
	 */
}
#GnaviSPMenu .localMenu .title .en {
    padding-left: 12px;
    font-weight: 100;
    font-size: 120%;
}
#GnaviSPMenu .localMenu .menu {
    line-height: 1;
}
#GnaviSPMenu .localMenu .menu li {
    margin-bottom: 2px;
}
#GnaviSPMenu .localMenu .menu li a {
    color: #555;
    padding: 13px 9px;
    display: block;
    font-size: 94%;
    position: relative;
    background-color: #EEE;
}
#GnaviSPMenu .localMenu .menu li a .tx {
    font-weight: 100;
}
#GnaviSPMenu .localMenu .menu li a:after {
    position: absolute;
    right: 8px;
    top: 50%;
    font-size: 80%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '\e90e';
    font-family: iconfontA;
    color: #999;
    transition: 0.2s;
}
#GnaviSPMenu .localMenu .menu li a.on {
    border-left: 3px solid #E61A19;
    background-color: #e3e3e3;
    padding-left: 6px;
}
#GnaviSPMenu .localMenu .menu li a.on .tx {
    font-weight: 500;
    color: #E61A19;
}
#GnaviSPMenu .localMenu .menu li a.on:after {
    display: none;
}

/* //    |- contact  */
#GnaviSPMenu .contact {
    margin-top: 20px;
}
#GnaviSPMenu .contact a {
    display: block;
    padding: 15px;
    line-height: 1;
}
#GnaviSPMenu .contact a .en {
    display: block;
    font-size: 140%;
    font-weight: 700;
    text-align: center;
}
#GnaviSPMenu .contact a .ja {
    display: block;
    font-weight: 200;
    text-align: center;
    font-size: 90%;
    margin-top: 5px;
}
#GnaviSPMenu .contact a i {
    font-size: 200%;
}

/* //    |- logoGroup  */
#GnaviSPMenu .logoGroup {
    display: block;
    margin: 20px auto 0;
    max-width: 80%;
}




/* // modalBtn //
----------------------------------------------- */
.modalBtn.A {
    width: 45px;
    height: 45px;
    padding: 7px;
    background-color: #5B5C57;
    text-decoration: none;
    color: #000;
}
.modalBtn.A .inner {
    width: 28px;
    height: 35px;
    top: 1px;
    margin: 0 auto;
}
.modalBtn.A .line {
    background-color: #fff;
}
.modalBtn.A .line:nth-of-type(1) {
    top: 0px;
}
.modalBtn.A .line:nth-of-type(2) {
    top: 8px;
}
.modalBtn.A .line:nth-of-type(3) {
    top: 16px;
}
.modalBtn.A .inner .tx {
    bottom: 1px;
    left: 50%;
    width: 130%;
    -ms-transform: translateX(-50%) scale(1, 0.85);
    -webkit-transform: translateX(-50%) scale(1, 0.85);
    -moz-transform: translateX(-50%) scale(1, 0.85);
    transform: translateX(-50%) scale(1, 0.85);
    font-size: 10px;
    letter-spacing: 0em;
    color: #fff;
}
.modalBtn.A.active {
    display: none;
}



/* // GlobalNavi //
----------------------------------------------- */
#GlobalNavi {
    border-bottom-width: 3px;
    position: relative;
}
#GlobalNavi .xscrollColumnWrap {
    width: 540px;
    box-sizing: content-box;
    padding: 0 20px;
}
html.top #GlobalNavi .xscrollColumnWrap {
    width: 450px;
}

#GlobalNavi .navi.parents {}
#GlobalNavi .navi.parents>li {}
html.top #GlobalNavi .navi.parents>li {}
#GlobalNavi .navi.parents>li a.parent {
    height: 40px;
}
#GlobalNavi .navi.parents>li a.parent .tx {
    transition: 0s;
}
#GlobalNavi .navi.parents>li a.parent .tx .en {
    font-weight: 600;
    font-size: 93%;
    white-space: nowrap;
}
#GlobalNavi .navi.parents>li a.parent .tx .ja {
    margin-top: 3px;
    font-weight: 200;
    font-size: 65%;
    opacity: 0.8;
    white-space: nowrap;
}

#GlobalNavi .navi.parents>li:after {
    height: 3px;
}
#GlobalNavi .navi.parents>li:not(.on):hover:after {
    width: 100%;
}
#GlobalNavi .navi.parents>li a.parent:before {}
#GlobalNavi .navi.parents>li:not(.on):hover a.parent:before {
    width: 200px;
    height: 200px;
}


#GlobalNavi:after {
    content: " ";
    display: block;
    background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.85) 55%, rgba(255, 255, 255, 0.85) 100%);
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.85) 55%, rgba(255, 255, 255, 0.85) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.85) 55%, rgba(255, 255, 255, 0.85) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=1);
    height: 40px;
    width: 26px;
    position: absolute;
    right: 0px;
    z-index: 300;
    top: 50%;
    font-size: 85%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '\e90e';
    font-family: iconfontA;
    box-sizing: border-box;
    text-align: right;
    padding-top: 10px;
}
#GlobalNavi:before {
    content: " ";
    display: block;
    background: -moz-linear-gradient(left, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.85) 45%, rgba(255, 255, 255, 0) 100%);
    background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.85) 45%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to right, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.85) 45%, rgba(255, 255, 255, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=1);
    height: 40px;
    width: 26px;
    position: absolute;
    left: 0px;
    z-index: 300;
    top: 50%;
    font-size: 85%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '\e90d';
    font-family: iconfontA;
    box-sizing: border-box;
    text-align: left;
    padding-top: 10px;
}


/* //    |- child  */

#GlobalNavi .navi.parents>li>.childWrap {
    z-index: 200;
    position: absolute;
    display: inline-block;
    top: 100%;
    left: 50%;
    -ms-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 270px;
    overflow: hidden;
    display: none;
    padding-top: 17px;
    padding-bottom: 40px;
}
#GlobalNavi .navi.parents>li:hover>.childWrap {}

#GlobalNavi .navi.parents>li>.childWrap:before {
    width: 30px;
    height: 30px;
    position: absolute;
    top: 12px;
    left: 50%;
    -ms-transform: translateX(-50%) rotate(-45deg);
    -webkit-transform: translateX(-50%) rotate(-45deg);
    -moz-transform: translateX(-50%) rotate(-45deg);
    transform: translateX(-50%) rotate(-45deg);
    content: " ";
    background-color: #E61A19;
}
#GlobalNavi .navi.parents>li>.childWrap a.child {
    display: block;
    line-height: 1;
    padding: 21px 5px;
    background-color: #E61A19;
    color: #FFF;
    text-align: center;
    position: relative;
    border-bottom: 1px solid #B2271B;
    border-top: 1px solid #D2625C;
    overflow: hidden;
}
#GlobalNavi .navi.parents>li>.childWrap li:first-of-type a.child {
    border-top: 0;
}
#GlobalNavi .navi.parents>li>.childWrap li:last-of-type a.child {
    border-bottom: 0;
}

#GlobalNavi .navi.parents>li>.childWrap a.child:before {
    content: " ";
    position: absolute;
    z-index: 10;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -ms-border-radius: 200px;
    -moz-border-radius: 200px;
    -webkit-border-radius: 200px;
    border-radius: 200px;
    display: block;
    width: 0;
    height: 0;
    background-color: #C10B0B;
    transition: 0.3s;
}
#GlobalNavi .navi.parents>li>.childWrap a.child:hover:before {
    width: 300px;
    height: 300px;
    transition: 0.5s;
}
#GlobalNavi .navi.parents>li>.childWrap a.child .tx {
    z-index: 14;
    position: relative;
    display: block;
    text-align: center;
}
#GlobalNavi .navi.parents>li>.childWrap a.child i {
    position: absolute;
    top: 50%;
    right: 0;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}


/* // Footer //
----------------------------------------------- */
/* //    |- upperBlock  */
#Footer .upperBlock {
    padding-top: 22px;
    padding-bottom: 20px;
}
#Footer .upperBlock .logo {
    text-align: center;
}
#Footer .upperBlock .logo img {
    width: 300px;
    left: auto;
    bottom: auto;
    position: static;
}
#Footer .upperBlock .menuWrap {
    width: 100%;
    border-width: 1px 0px 0px 1px;
    border-color: #DDD;
    border-style: solid;
    margin-bottom: 30px;
}
#Footer .upperBlock .menuWrap .cellWrap {
    width: 100%;
}
#Footer .upperBlock .menuWrap .cellWrap .cell {
    width: 100%;
}
#Footer .upperBlock .menuWrap a {}
#Footer .upperBlock .menuWrap .menu li.parent {
    margin-bottom: 0;
    float: none;
    width: 100%;
    font-size:
}
#Footer .upperBlock .menuWrap .menu li.parent a {
    padding-top: 10px;
    padding-bottom: 10px;
    position: relative;
}
#Footer .upperBlock .menuWrap .menu li.parent a:after {
    position: absolute;
    right: 4px;
    top: 50%;
    font-size: 100%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '\e90e';
    font-family: iconfontA;
    color: #fff;
    opacity: 0.7;
}
#Footer .upperBlock .menuWrap .menu li.parent em {
    font-weight: 400 !important;
    font-size: 108%;
}

#Footer .upperBlock .menuWrap .menu li {
    margin-bottom: 0;
    display: block;
    float: left;
    width: 50%;
    border-bottom: 1px #DDD solid;
    border-right: 1px #DDD solid;
    line-height: 1.4;
    box-sizing: border-box;
}
#Footer .upperBlock .menuWrap .menu li em {
    font-size: 82%;
}
#Footer .upperBlock .menuWrap .menu li a {
    display: block;
    padding: 6px;
    background-color: #FFF;
}
#Footer .upperBlock .menuWrap .menu li i {
    margin-left: 3px;
}
#Footer .upperBlock .menuWrap .menu.company li:not(.parent),
#Footer .upperBlock .menuWrap .menu.ir li:not(.parent) {
    display: none;
}


#Footer .upperBlock .btnWrap {
    width: 100%;
    padding-bottom: 10px;
}
#Footer .upperBlock .btnWrap .contact {
    margin-bottom: 25px;
}
#Footer .upperBlock .btnWrap .contact a {
    padding: 15px;
}
#Footer .upperBlock .btnWrap .access .htx {
    font-size: 150%;
    margin-bottom: 6px;
}
#Footer .upperBlock .btnWrap .access .btns li {
    margin-bottom: 16px;
}
#Footer .upperBlock .btnWrap .access .btns li .btn {
    margin-bottom: 4px;
}
#Footer .upperBlock .btnWrap .access .btns li .address {
    display: none;
}

/* //    |- bottomBlock  */
#Footer .bottomBlock {
    padding: 11px 0;
}
#Footer .bottomBlock .menu li {
    display: inline-block;
    margin-right: 16px;
    margin-bottom: 11px;
    font-size: 85%;
    ;
}
#Footer .bottomBlock .menu li a {}
#Footer .bottomBlock .copy {
    margin-top: 7px;
    position: static;
    right: 0px;
    -ms-transform: translateY(-0%);
    -webkit-transform: translateY(-0%);
    -moz-transform: translateY(-0%);
    transform: translateY(-0%);
    font-size: 70%;
    ;
}

/* // Breadcrumb //
----------------------------------------------- */
#Breadcrumb {
    display: none;
}

/* // TEXT SETTING //
----------------------------------------------- */
/* //    |- PageTitleA  */
#PageTitleA {
    padding: 0 0 0;
    margin-bottom: 40px;
}
#PageTitleA .inner {
    width: 100%;
    height: 300px;
}
#PageTitleA .image {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
#PageTitleA .image img {
    height: 100%;
    width: auto;
}
#PageTitleA .txWrap {
    top: 45%;
}
#PageTitleA .en {
    margin-bottom: 10px;
    font-size: 140%;
    opacity: 0.8;
}
#PageTitleA .ja {
    font-weight: 200;
    font-size: 200%;
}
#PageTitleA .ja:before {
    bottom: -13px;
    width: 90%;
}
#PageTitleA .ja:after {
    bottom: -13px;
    left: 10px;
    width: 33.3%;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

/* //    |- PageTitleB  */
#PageTitleB {
    padding: 0 0 0;
    margin-bottom: 20px;
}
#PageTitleB .inner {
    width: 100%;
    height: 140px;
}
#PageTitleB .image {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
#PageTitleB .image img {
    height: auto;
    width: 120%;
}
#PageTitleB .txWrap {
    top: 45%;
}
#PageTitleB .en {
    margin-bottom: 10px;
    font-size: 130%;
    opacity: 0.8;
}
#PageTitleB .ja {
    font-weight: 200;
    font-size: 170%;
}
#PageTitleB .ja:before {
    bottom: -13px;
    width: 90%;
}
#PageTitleB .ja:after {
    bottom: -13px;
    width: 30%;
    left: 5%;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
}

/* //    |- PageTitleC  */
#PageTitleC {
    margin-bottom: 40px;
}
#PageTitleC .inner {
    height: 240px;
}
#PageTitleC.small .inner {
    height: 160px;
}
#PageTitleC .image img {
    height: 100%;
}
#PageTitleC.small .image img {
    height: 100%;
    width: auto;
}
#PageTitleC .txWrap {}
#PageTitleC .parentEn {
    font-weight: 100;
    padding-bottom: 10px;
    margin-bottom: 15px;
    font-size: 150%;
    letter-spacing: 0em;
}
#PageTitleC .parentEn:before {
    bottom: 0px;
    width: 90%;
}
#PageTitleC .parentEn:after {
    width: 30% !important;
    left: 0;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
}
#PageTitleC .titEn {
    margin-bottom: 14px;
    font-size: 200%;
    letter-spacing: 0.02em;
}
#PageTitleC .titJa {
    font-size: 160%;
}

/* //    |- titleTxA  */
.titleTxA {
    margin-bottom: 30px;
}
.titleTxA .en {
    font-size: 160%;
    line-height: 1.3;
    margin-bottom: 1px;
}
.titleTxA .ja {
    font-size: 112%;
}
.titleTxA .ja.main {
    font-size: 180%;
}

.titleTxA.line {}
.titleTxA.line .tx {}
.titleTxA.line .tx:after,
.titleTxA.line .tx:before {
    width: 500px;
    height: 13px;
}
.titleTxA.line.s .tx:after,
.titleTxA.line.s .tx:before {
    height: 11px;
}

.titleTxA.line .tx:after {
    left: 97%;
    -ms-transform: translate(16px, -50%);
    -webkit-transform: translate(16px, -50%);
    -moz-transform: translate(16px, -50%);
    transform: translate(16px, -50%);
}
.titleTxA.line .tx:before {
    right: 97%;
    -ms-transform: translate(-16px, -50%);
    -webkit-transform: translate(-16px, -50%);
    -moz-transform: translate(-16px, -50%);
    transform: translate(-16px, -50%);
}

/* //    |- titleTxB  */
.titleTxB {
    margin-bottom: 17px;
    font-size: 140%;
}
.titleTxB.line em {
    border-width: 2px;
    padding: 0 8px 8px;
}

/* //    |- titleTxC  */
.titleTxC {
    margin-bottom: 16px;
    padding-bottom: 9px;
    font-size: 122%;
}
.titleTxC em {}

/* //    |- titleTxD  */
.titleTxD {
    margin-bottom: 30px;
}
.titleTxD .tx {
    font-size: 150%;
}
.titleTxD .tx:after,
.titleTxD .tx:before {
    width: 500px;
    height: 3px;
}

.titleTxD .tx:after {
    -ms-transform: translate(12px, -50%);
    -webkit-transform: translate(12px, -50%);
    -moz-transform: translate(12px, -50%);
    transform: translate(12px, -50%);
}
.titleTxD .tx:before {
    12 -ms-transform: translate(-12px, -50%);
    -webkit-transform: translate(-12px, -50%);
    -moz-transform: translate(-12px, -50%);
    transform: translate(-12px, -50%);
}

/* //    |- titleTxE  */
.titleTxE {
    margin-bottom: 27px;
}
.titleTxE .en {
    font-weight: 200;
    font-size: 200%;
    margin-bottom: 3px;
}
.titleTxE .ja {
    font-size: 100%;
}

.tabNavi .titleTxE {
    margin-bottom: 15px;
}

/* //    |- titleTxF  */
.titleTxF {
    margin-bottom: 30px;
}
.titleTxF .tx {
    padding: 0 20px 15px;
    font-size: 180%;
    min-width: 10px;
    width: 100%;
    position: relative;
    background-size: 100% 4px;
}

/* //    |- titleTxG  */
.titleTxG {
    margin-bottom: 27px;
}
.titleTxG:before {}
.titleTxG .tx {
    padding: 0 18px;
}
.titleTxG .tx:before {
    width: 40px;
}
.titleTxG .tx:after {
    width: 40px;
}
.titleTxG .tx .ja {
    display: block;
    font-weight: 500;
    font-size: 150%;
    text-align: center;
    position: relative;
}
.titleTxG .tx .en {
    display: block;
    color: #E10D20;
    font-weight: 500;
    font-size: 94%;
    text-align: center;
    margin-top: 6px;
    position: relative;
    top: 4px;
}



/* //    |- hTxA  */
.hTxA {
    margin-bottom: 16px;
    font-size: 125%;
}

/* // PageMv //
----------------------------------------------- */
/* //    |- PageMvA  */
#PageMvA {
    margin-bottom: 0;
    overflow: hidden;
}
#PageMvA .wrap {}
#PageMvA .image {}
#PageMvA .txBox {
    position: relative;
    bottom: auto;
    top: -30px;
    left: 20px;
    width: 90%;
    height: auto;
    display: block;
}
#PageMvA .txBox:before {
    left: 0px;
    top: 0px;
    width: 50px;
    height: 50px;
}
#PageMvA .txBox:after {
    right: -30px;
    bottom: -30px;
    width: 60px;
    height: 60px;
}

#PageMvA .txBox .in {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
}
#PageMvA .txBox .txWrap {
    position: relative;
    top: auto;
    left: auto;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
    padding: 35px 15px;
}
#PageMvA .txBox .txWrap p {
    font-size: 180%;
    line-height: 1.3;
    font-weight: 200;
    text-align: center;
}

/* // section //
----------------------------------------------- */
/* //    |- sectionA  */
.sectionA {
    padding: 45px 0;
}
.sectionA.s {
    padding: 30px 0;
}

/* //    |- sectionB  */
.sectionB {
    margin-bottom: 38px;
}
.sectionB:last-of-type {
    margin-bottom: 20px;
}



/* // tabNavi //
----------------------------------------------- */
/* //    |- tabNaviA  */
.tabNaviA {
    max-width: 100%;
    margin: 0 auto 30px;
}
.tabNaviA .btns {
    text-align: left;
    padding: 0 5px;
}
.tabNaviA .btns:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
.tabNaviA .btns {
    display: inline-block;
}
* html .tabNaviA .btns {
    height: 1%;
}
.tabNaviA .btns {
    display: block;
}

.tabNaviA .btns li {
    display: block;
    line-height: 1.3;
    margin: 0;
    padding: 0 2px 4px;
    width: 50%;
    float: left;
}
.tabNaviA .btns li a {
    width: 100%;
    min-width: 1px !important;
    font-size: 92%;
}
.tabNaviA .btns li a i {
    right: 3px;
    font-size: 90%;
}
.tabNaviA .btns li a .tx {
    padding: 10px;
}

/* //    |- tabNaviB  */
.tabNaviB {
    max-width: 100%;
    width: 100%;
    margin: 0 auto 24px;
}
.tabNaviB .btns:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
.tabNaviB .btns {
    display: inline-block;
}
* html .tabNaviB .btns {
    height: 1%;
}
.tabNaviB .btns {
    display: block;
}

.tabNaviB .btns {
    text-align: left;
    padding: 0 5px;
}
.tabNaviB .btns li {
    display: block;
    line-height: 1.3;
    margin: 0;
    padding: 0 3px 8px;
    width: 50%;
    float: left;
}
.tabNaviB .btns li a {
    display: block;
    border-bottom: 1px solid #7E7E7E;
    position: relative;
    color: #666;
    text-align: center;
    min-width: 10px;
    width: 100% font-size:90%;
}
.tabNaviB .btns li a .tx {
    padding: 7px;
}
.tabNaviB .btns li a i {
    margin-left: 10px;
}


.tabNaviB.year .btns li {
    margin-left: 0;
    margin-right: 0;
    padding: 0 3px 8px;
    width: 33.3%;
}
.tabNaviB.year .btns li a {
    min-width: 10px;
    width: 100%
}

/* //    |- tabNaviC  */
.tabNaviC {
    margin: 0 auto 37px;
}
.tabNaviC ul {
    text-align: center;
}
.tabNaviC ul li {
    display: inline-block;
    margin-right: -1px;
    font-size: 92%;
}
.tabNaviC ul li a {
    display: block;
    padding: 10px 10px;
    min-width: 10px;
}
.tabNaviC ul li a:after {
    display: none;
}
.tabNaviC ul li:first-of-type a:before {
    display: none;
}
.tabNaviC ul li a i {
    padding-left: 10px;
    font-size: 88%;
}

/* //    |- tabNaviD  */
.tabNaviD {
    padding: 0 7px;
}

.tabNaviD ul:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
.tabNaviD ul {
    display: inline-block;
}
* html .tabNaviD ul {
    height: 1%;
}
.xxxxxx {
    display: block;
}

.tabNaviD ul li {
    display: block;
    float: left;
    line-height: 1.3;
    width: 50%;
    padding: 1px;
    margin: 0 0 10px;
}
.tabNaviD ul li a {
    display: block;
}
.tabNaviD ul.col3 li a,
.tabNaviD ul.col4 li a {
    width: 100%;
}

.tabNaviD ul li a .image {
    height: 100px;
    margin-bottom: 0;
}

.tabNaviD ul li a .tx {
    display: block;
    padding-top: 15px;
    height: 35px;
    font-size: 90%;
}
.tabNaviD ul li a .tx:before {
    top: 10px;
}
.tabNaviD ul li a .tx:after {
    top: 11px;
    font-size: 80%;
}


/* // ServiceIndex //
----------------------------------------------- */
#ServiceIndex {}
#ServiceIndex .serviceItem {
    margin-bottom: 40px;
    overflow: hidden;
}
#ServiceIndex .serviceItem .widthFix {
    padding: 0;
}
#ServiceIndex .serviceItem .bg {
    display: none !important;
}
#ServiceIndex .serviceItem .mainBlock {
    text-align: right;
    padding: 0 12px 20px 10px;
}
#ServiceIndex .serviceItem .box {
    margin-top: 0;
    min-height: 1px;
    width: 85% !important;
    padding: 15px 15px;
    -moz-box-shadow: 6px 6px 0 #5B5C57;
    -webkit-box-shadow: 6px 6px 0 #5B5C57;
    box-shadow: 6px 6px 0 #5B5C57;
    background-color: rgba(225, 13, 32, 1);
}
#ServiceIndex .serviceItem .box .name {
    font-size: 180%;
    margin-bottom: 8px;
}
#ServiceIndex .serviceItem .box .company {
    font-size: 90%;
    margin-top: -6px;
    margin-bottom: 8px;
}

#ServiceIndex .serviceItem .box .htx {
    font-size: 125%;
    margin-bottom: 8px;
    line-height: 1.5;
}
#ServiceIndex .serviceItem .box .description {
    line-height: 1.7;
    font-size: 84%;
    margin-bottom: 12px;
}
#ServiceIndex .serviceItem .box .btn {}
#ServiceIndex .serviceItem .box .btn a {
    padding: 14px;
}
#ServiceIndex .serviceItem .box .btn a .tx {
    font-size: 110%;
}
#ServiceIndex .serviceItem .enName {
    margin-top: 10px;
}
#ServiceIndex .serviceItem .enName .tx {
    font-size: 37px;
    color: #fff;
    font-weight: 800;
    opacity: 0.6;
}
#ServiceIndex .serviceItem .image {
    bottom: 0px;
    width: 100% !important;
    height: 300px !important;
    overflow: hidden;
}
#ServiceIndex .serviceItem .image .in {}
#ServiceIndex .serviceItem .image .in img {
    width: auto;
    height: 100%;
}

#ServiceIndex .serviceItem:nth-of-type(even) .mainBlock {}
#ServiceIndex .serviceItem:nth-of-type(even) .enName {}
#ServiceIndex .serviceItem:nth-of-type(even) .image {
    left: auto;
    right: 0;
    width: 100%;
}

/* //    |- appealPoint  */
#ServiceIndex .serviceItem .appealPoint {
    margin-top: 13px;
}
#ServiceIndex .serviceItem .appealPoint .title {
    margin-bottom: 9px;
    padding-bottom: 10px;
    width: 100%;
    overflow: hidden;
}
#ServiceIndex .serviceItem .appealPoint .title:before {
    display: none;
}
#ServiceIndex .serviceItem .appealPoint .title .tx {
    padding: 0 13px;
}
#ServiceIndex .serviceItem .appealPoint .title .tx:before {
    width: 100px;
}
#ServiceIndex .serviceItem .appealPoint .title .tx:after {
    width: 100px;
}
#ServiceIndex .serviceItem .appealPoint .title .tx .ja {
    font-size: 120%;
}
#ServiceIndex .serviceItem .appealPoint .title .tx .en {
    font-size: 94%;
}
#ServiceIndex .serviceItem .appealPoint .pointWrap {
    display: block;
    width: 90%;
    margin: 0 auto;
}
#ServiceIndex .pointWrap:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
#ServiceIndex .pointWrap {
    display: inline-block;
}
* html #ServiceIndex .pointWrap {
    height: 1%;
}
#ServiceIndex .pointWrap {
    display: block;
}

#ServiceIndex .serviceItem .appealPoint .pointWrap .point {
    display: block;
    width: 50%;
    padding: 0px 10px 10px;
    border-right: 0;
    float: left;
}
#ServiceIndex .serviceItem .appealPoint .pointWrap.col3 {
    width: 100%;
}
#ServiceIndex .serviceItem .appealPoint .pointWrap.col3 .point {
    width: 33.3%;
    padding: 0px 5px 0;
}
#ServiceIndex .serviceItem .appealPoint .pointWrap .point:first-of-type {
    border-left: 0;
}
#ServiceIndex .serviceItem .appealPoint .pointWrap .point .tx p {
    font-size: 80%;
    font-weight: 400;
    line-height: 1.4;
}

/* // TopOtherService //
----------------------------------------------- */
#TopOtherService {
    padding: 25px 0;
}
#TopOtherService .title {
    margin-bottom: 18px;
}
#TopOtherService .title .tx {
    font-size: 200%;
}
#TopOtherService .itemWrap {
    display: block;
}

#TopOtherService .itemWrap .item {
    padding: 0 0;
    width: 100%;
    display: block;
    margin: 0 0 12px;
}
#TopOtherService .itemWrap .item>a {}
#TopOtherService .itemWrap .item>a:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
#TopOtherService .itemWrap .item>a {
    display: inline-block;
}
* html #TopOtherService .itemWrap .item>a {
    height: 1%;
}
#TopOtherService .itemWrap .item>a {
    display: block;
}


#TopOtherService .itemWrap .item .image {
    display: block;
    float: left;
    width: 32%;
    position: relative;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}
#TopOtherService .itemWrap .item .image img {
    display: none;
}

#TopOtherService .itemWrap .item .text {
    padding: 0;
    display: block;
    float: left;
    width: 68%;
}
#TopOtherService .itemWrap .item .text .inner {
    padding: 12px 15px 12px 10px;
}
#TopOtherService .itemWrap .item .text .name {
    font-weight: 500;
    font-size: 108%;
    margin-bottom: 8px;
}
#TopOtherService .itemWrap .item .text .name .company {
    font-size: 58%;
}
#TopOtherService .itemWrap .item .text .description {
    line-height: 1.5;
    font-size: 88%;
}
#TopOtherService .itemWrap .item a .text .linkIcon {
    position: absolute;
    bottom: 0px;
    right: 0px;
    display: block;
    width: 30px;
    height: 30px;
}


#TopOtherService .itemWrap .item a .text .linkIcon .in {}
#TopOtherService .itemWrap .item a .text .linkIcon .in i {}
#TopOtherService .itemWrap .item a:hover .text .linkIcon {
    background-size: 200% auto;
}


/* // TopContentsMenu //
----------------------------------------------- */
#TopContentsMenu {
    margin-top: 40px;
}
#TopContentsMenu .cellWrap {
    margin-bottom: 16px;
    width: 100%;
    padding: 0 5px;
    display: table !important;
}
#TopContentsMenu .cell {
    width: 50%;
    display: table-cell !important;
}
#TopContentsMenu .cell a {
    height: auto;
    position: relative;
    border: 1px solid #E10D20;
}
#TopContentsMenu .cell:first-of-type {
    padding-right: 8px;
}
#TopContentsMenu .cell:last-of-type {
    padding-left: 8px;
}
#TopContentsMenu .cell .image {
    width: 100%;
    height: auto%;
    position: relative;
    overflow: hidden;
    background-color: #fff;
    text-align: center;
    padding: 15px 0 15px;
}
#TopContentsMenu .cell .image img {
    position: relative;
    left: auto;
    top: auto;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
    width: 63px;
    -webkit-filter: grayscale(0%);
    filter: grayscale(0%);
    opacity: 1;
}
#TopContentsMenu .cell .title {
    display: block;
    position: relative;
    left: auto;
    top: auto;
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    transform: translateY(0);
    color: #333;
    line-height: 1;
    text-align: center;
    padding: 0 10px 12px;
}
#TopContentsMenu .cell .title .tx {
    padding-left: 0;
}
#TopContentsMenu .cell .title .tx:after {
    display: none;
}
#TopContentsMenu .cell .title .ja {
    font-weight: 500;
    font-size: 125%;
    padding-right: 0;
    display: block;
    margin-bottom: 7px;
}
#TopContentsMenu .cell .title .en {
    font-weight: 500;
    font-size: 95%;
    display: block;
    opacity: 0.4;
}

/* // InfoIndex //
----------------------------------------------- */
#InfoIndex {
    margin-top: 40px;
}
#InfoIndex .title {
    margin-bottom: 18px;
}
#InfoIndex .title .tx {
    font-size: 170%;
    font-weight: 600;
}
#InfoIndex .title .btn {}
#InfoIndex .title .btn a {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
}
#InfoIndex .infoList {}
#InfoIndex .infoList li {
    line-height: 1.4;
}
#InfoIndex .infoList li a {
    display: block;
    padding: 11px 7px;
}
#InfoIndex .infoList li a .date {
    display: inline-block;
    vertical-align: middle;
    width: auto;
    padding-left: 0;
    font-weight: 400;
    font-size: 108%;
    margin-right: 10px;
}
#InfoIndex .infoList li a .type {
    display: inline-block;
    vertical-align: middle;
    width: auto;
    padding-right: 0;
}
#InfoIndex .infoList li a .type .frame {
    padding: 3px 8px;
    text-align: center;
    font-size: 80%;
    line-height: 1;
    min-width: 110%;
}
#InfoIndex .infoList li a .body {
    display: block;
    vertical-align: top;
    width: 100%;
    padding-right: 25px;
    padding-left: 0;
    font-size: 93%;
    margin-top: 6px
}
#InfoIndex .infoList li a .body em {}
#InfoIndex .infoList li a .body .tx {
    position: relative;
    display: block;
}
#InfoIndex .infoList li a .body.pdf .tx:after {
    font-size: 120%;
    -webkit-transform: translate(12px, -50%);
    -ms-transform: translate(12px, -50%);
    -webkit-transform: translate(12px, -50%);
    transform: translate(12px, -50%);
}
#InfoIndex .infoList li a .body.out .tx:after {
    font-size: 120%;
    -webkit-transform: translate(12px, -50%);
    -ms-transform: translate(12px, -50%);
    -webkit-transform: translate(12px, -50%);
    transform: translate(12px, -50%);
}


/* // TOP waypoint Setting //
----------------------------------------------- */

#ServiceIndex .serviceItem.show .box {
    transition-delay: 0.1s;
}

#ServiceIndex .serviceItem.show .image {
    transition-delay: 0.3s;
}
#ServiceIndex .serviceItem:nth-of-type(odd).show .enName {
    transition-delay: 0.5s;
}
#ServiceIndex .serviceItem:nth-of-type(even) .enName {}
#ServiceIndex .serviceItem:nth-of-type(even).show .enName {
    transition-delay: 0.7s;
}

#ServiceIndex .serviceItem .appealPoint.show .title {
    transition-delay: 0.1s;
}

#ServiceIndex .serviceItem .appealPoint.show .pointWrap .point:nth-of-type(1) {
    transition-delay: 0.3s;
}
#ServiceIndex .serviceItem .appealPoint.show .pointWrap .point:nth-of-type(2) {
    transition-delay: 0.5s;
}
#ServiceIndex .serviceItem .appealPoint.show .pointWrap .point:nth-of-type(3) {
    transition-delay: 0.7s;
}
#ServiceIndex .serviceItem .appealPoint.show .pointWrap .point:nth-of-type(4) {
    transition-delay: 0.9s;
}
#TopOtherService.show .title {
    transition-delay: 0.2s;
}

#TopOtherService .itemWrap .item {}
#TopOtherService.show .item {}
#TopOtherService.show .item:nth-of-type(1) {
    transition-delay: 0.3s;
}
#TopOtherService.show .item:nth-of-type(2) {
    transition-delay: 0.5s;
}
#TopOtherService.show .item:nth-of-type(3) {
    transition-delay: 0.7s;
}
#TopOtherService.show .item:nth-of-type(4) {
    transition-delay: 0.9s;
}
#TopContentsMenu.show .cellWrap {}
#TopContentsMenu.show .cellWrap:nth-of-type(1) {
    transition-delay: 0.3s;
}
#TopContentsMenu.show .cellWrap:nth-of-type(2) {
    transition-delay: 0.5s;
}
#TopContentsMenu.show .cellWrap:nth-of-type(3) {
    transition-delay: 0.7s;
}
#TopContentsMenu.show .cellWrap:nth-of-type(4) {
    transition-delay: 0.9s;
}

#InfoIndex.show {
    transition-delay: 0.2s;
}

/* // ContentsIndex //
----------------------------------------------- */
#ContentsIndex {
    padding: 0 10px;
}
/* //    |- typeImage  */
#ContentsIndex .typeImage {
    margin-bottom: 35px;
}
#ContentsIndex .typeImage .item {
    margin-bottom: 15px;
}
#ContentsIndex .typeImage .item:nth-of-type(odd) {}
#ContentsIndex .typeImage .item:nth-of-type(even) {}
#ContentsIndex .typeImage .item .image {
    width: 100%;
    height: 180px;
    display: block;
}
#ContentsIndex .typeImage .item:nth-of-type(odd) .image {
    float: none;
}
#ContentsIndex .typeImage .item:nth-of-type(even) .image {
    float: none;
}

#ContentsIndex .typeImage .item .txWrap {
    width: 100%;
}
#ContentsIndex .typeImage .item .txWrap .inner {
    width: 100%;
    display: block;
    padding: 15px;
    min-height: 10px;
}
#ContentsIndex .typeImage .item:nth-of-type(odd) .txWrap {
    float: none;
    text-align: left;
    padding-right: 0;
}
#ContentsIndex .typeImage .item:nth-of-type(even) .txWrap {
    float: none;
    text-align: left;
    padding-left: 0;
}

#ContentsIndex .typeImage .item .txWrap .title {
    line-height: 1.4;
    display: block;
    padding-bottom: 12px;
    margin-bottom: 13px;
    position: relative;
}
#ContentsIndex .typeImage .item .txWrap .title:after {
    width: 100px;
    height: 2px;
}
#ContentsIndex .typeImage .item .txWrap .title .en {
    font-weight: 100;
    font-size: 170%;
}
#ContentsIndex .typeImage .item .txWrap .title .ja {
    font-size: 110%;
    font-weight: 500;
}
#ContentsIndex .typeImage .item .txWrap .htx {
    font-size: 102%;
    font-weight: 500;
    margin-bottom: 6px;
}
#ContentsIndex .typeImage .item .txWrap .body {
    font-size: 94%;
    line-height: 1.6;
    margin-bottom: 5px;
}
#ContentsIndex .typeImage .item .txWrap .btn {
    margin-top: 10px;
    text-align: left;
}
#ContentsIndex .typeImage .item .txWrap .btn a {
    width: 100%;
}

/* //    |- typeIcon  */
#ContentsIndex .typeIcon .item {
    width: 100%;
    float: none;
    transition: 0.2s !important;
}
#ContentsIndex .typeIcon .item * {
    transition: 0.2s !important;
}
#ContentsIndex .typeIcon .item .inner {
    padding: 10px;
}
#ContentsIndex .typeIcon .item .inner:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
#ContentsIndex .typeIcon .item .inner {
    display: inline-block;
}
* html #ContentsIndex .typeIcon .item .inner {
    height: 1%;
}
#ContentsIndex .typeIcon .item .inner {
    display: block;
}

#ContentsIndex .typeIcon .item .inner:before {
    position: absolute;
    right: 5px;
    top: 50%;
    font-size: 120%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: '\e90e';
    font-family: iconfontA;
    color: #F11D26;
    transition: 0.4s;
    opacity: 1;
}
#ContentsIndex .typeIcon .item .inner:hover:after {
    right: 5px;
    opacity: 1;
}
#ContentsIndex .typeIcon .item .icon {
    float: left;
    width: 70px;
    height: auto;
    margin-bottom: 0;
    text-align: center;
    padding-top: 5px;
}
#ContentsIndex .typeIcon .item .icon img {
    width: 80%;
    height: auto;
    position: static;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
}
#ContentsIndex .typeIcon .item .icon img.white {
    display: none;
}
#ContentsIndex .typeIcon .item .text {
    float: left;
    width: 100%;
    margin-left: -80px;
    padding-left: 95px;
    padding-right: 10px;
}

#ContentsIndex .typeIcon .item .name {
    font-size: 110%;
    font-weight: 500;
    text-align: left;
    margin-bottom: 4px;
}
#ContentsIndex .typeIcon .item .description {
    font-size: 88%;
    line-height: 1.6;
}

/* // RecruitTopIndex //
----------------------------------------------- */
#RecruitTopIndex {
    margin-top: 10px;
}
#RecruitTopIndex .typeImage .item .txWrap .inner {
    padding: 20px;
}

/* // RecruitContact //
----------------------------------------------- */
#RecruitContact {
    margin-top: 70px;
}

/* // RecruitContact //
----------------------------------------------- */
#RecruitContact {
    margin-top: 140px;
}

/* // RecruitListA //
----------------------------------------------- */
#RecruitListA .listWrap {}
#RecruitListA .listWrap .comment {
    font-size: 120%;
    line-height: 2.2;
    margin-bottom: 40px;
}
#RecruitListA .listItem {
    padding: 17px 21px 17px 5px;
}
#RecruitListA .listItem:after {
    right: 0px;
    font-size: 100%;
}
#RecruitListA .listItem:hover:after {
    right: 0px;
}
#RecruitListA .listItem:hover .wrap {
    transform: translateX(0);
}
#RecruitListA .listItem .title {
    font-size: 122%;
    margin-top: 10px;
    font-weight: 500;
}

/* // RecruitDetailA //
----------------------------------------------- */
#RecruitDetailA {}
#RecruitDetailA .btnBack {
    margin-bottom: 16px;
}
#RecruitDetailA .btnBack a {
    min-width: 130px;
}

#RecruitDetailA .title {
    font-weight: 500;
    font-size: 155%;
}

#RecruitDetailA .infoListA {
    margin-top: 13px;
}
#RecruitDetailA .infoListA {
    font-size: 85%;
}
#RecruitDetailA .infoListA li {
    margin-right: 0;
    display: block;
    margin-bottom: 5px;
}
#RecruitDetailA .infoListA li em {
    padding-right: 10px;
    margin-right: 0;
    font-weight: 600;
}


#RecruitDetailA .detailTable {
    margin-top: 25px;
}
#RecruitDetailA .detailTable tr {
    display: block;
}
#RecruitDetailA .detailTable th {
    display: block;
    font-size: 100%;
    font-weight: 500;
}
#RecruitDetailA .detailTable td {
    display: block;
    font-size: 90%;
    border-top: 0px;
    border-bottom-width: 0px;
    padding-bottom: 15px;
}
#RecruitDetailA .detailTable tr:last-of-type td {
    border-bottom-width: 1px;
}
#RecruitDetailA .photoWrap {
    margin-top: 30px;
}
#RecruitDetailA .photoWrap ul {
    text-align: center;
}
#RecruitDetailA .photoWrap ul li {
    display: block;
    width: 290px;
    ;
    margin: 0 auto 20px;
    ;
}
#RecruitDetailA .photoWrap ul li .photo {
    height: 210px;
}
#RecruitDetailA .photoWrap ul li .tx1 {
    line-height: 1.6;
    margin-top: 7px;
}
#RecruitDetailA .btnEntry {
    margin-top: 30px;
    text-align: center;
}
#RecruitDetailA .btnEntry a {
    padding-top: 20px;
    padding-bottom: 20px;
    width: 100%;
    font-size: 110%;
    font-weight: 400;
}

#RecruitDetailA .photoWrap.one ul li {
    width: 100%;
}
#RecruitDetailA .photoWrap.one ul li .photo {
    height: 210px;
}


/* // infoListA //
----------------------------------------------- */
.infoListA {
    line-height: 1.6;
    font-size: 78%;
}
.infoListA li {
    margin-right: 12px;
}
.infoListA li em {
    padding-right: 3px;
    margin-right: 0;
    font-weight: 600;
}
.infoListA li em:after {
    display: none;
}
.infoListA li .tx:after {
    content: "・";
}
.infoListA li .tx:last-of-type:after {
    content: "";
}


/* // refineSearchA //
----------------------------------------------- */
.refineSearchA {
    margin-bottom: 50px;
}
.refineSearchA .tit1 {
    margin-bottom: 9px;
    font-size: 135%;
}

.refineSearchA .boxFrame1 {
    padding: 15px;
}
.refineSearchA .itemWrap1 {
    line-height: 1.6;
    font-size: 94%;
}
.refineSearchA .item {
    border-color: #BBB;
    padding: 8px 0 4px;
    display: block;
}
.refineSearchA .item:first-of-type {}
.refineSearchA .item .title {
    width: 100%;
    display: block;
    font-size: 116%;
    margin-bottom: 4px;
}
.refineSearchA .item .select {
    width: 100%;
    display: block;
}
.refineSearchA .item .inputWrap {
    display: flex;
    display: -ms-flexbox;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
}
.refineSearchA .item .inputWrap li {
    display: block;
    width: 50%;
    margin-right: 0;
    margin-bottom: 8px
}
.refineSearchA .item.area .inputWrap li {
    width: 33.3%;
}
.refineSearchA .item.area .inputWrap li.allCheck {
    width: 100%;
}
.refineSearchA .item .inputWrap label {
    font-size: 90%;
    padding-left: 25px;
}

.refineSearchA .submit {
    margin-top: 15px !important;
}
.refineSearchA .submit button {
    margin-top: 0 !important;
}
.refineSearchA .submit button .tx {
    font-size: 16px;
}
.refineSearchA .submit button i {
    font-size: 115%;
}

.refineSearchA .reset {
    margin-top: 15px;
    font-size: 88%;
}
.refineSearchA .reset a {
    padding: 7px;
    width: 220px;
}
.refineSearchA .item .inputWrap li.allCheck a {
    padding: 5px 9px 5px 30px;
}


/* // TopMessage //
----------------------------------------------- */
#TopMessage {
    padding: 0 15px;
}
#TopMessage .intro {
    margin-bottom: 30px;
    display: block;
    height: auto;
    padding-left: 0;
    background-color: #FFFFFF;
}
#TopMessage .intro .image {
    display: block;
    width: 100%;
}
#TopMessage .intro .image img {
    max-width: 100%;
}
#TopMessage .intro .txWrap {
    width: 100%;
}

#TopMessage .intro .txWrap .htx {
    font-weight: 400;
    font-size: 140%;
    line-height: 1.5;
    padding-top: 20px;
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
}
#TopMessage .intro .txWrap .htx:before {
    height: 4px;
}
#TopMessage .intro .txWrap .htx:after {
    height: 4px;
}
#TopMessage .intro .txWrap .lead {
    font-size: 107%;
    line-height: 1.8;
}


#TopMessage .contents .htx1 {
    text-align: center;
    line-height: 1.3;
    font-size: 145%;
    margin-bottom: 20px;
}
#TopMessage .contents .htx1 em {
    display: block;
    width: 100%;
    padding-bottom: 15px;
}
#TopMessage .contents p {
    line-height: 2;
}


/* // signature //
----------------------------------------------- */
.signature {
    margin-top: 22px;
}
.signature p {}
.signature p.logo {
    margin-bottom: 5px;
}
.signature p.logo img {
    width: 210px;
}

/* // CompanyPhilosophy //
----------------------------------------------- */
/* //    |- MainCopy  */
#CompanyPhilosophy #MainCopy {
    margin-bottom: 40px;
}
#CompanyPhilosophy #MainCopy .inner {
    position: relative;
    height: auto;
    padding: 35px 10px;
}
#CompanyPhilosophy #MainCopy .tx {
    position: relative;
    left: 0;
    top: 0%;
    -ms-transform: translateY(-0%);
    -webkit-transform: translateY(-0%);
    -moz-transform: translateY(-0%);
    transform: translateY(-0%);
    line-height: 2.1;
    font-size: 140%;
    font-weight: 200;
    text-align: center;
}
#CompanyPhilosophy #MainCopy .image {
    display: none;
}

/* //    |- MainMassage  */
#CompanyPhilosophy #MainMassage {
    margin-bottom: 90px;
}

/* // CompanyHisotryImage //
----------------------------------------------- */
#CompanyHisotryImage {
    width: 100%;
}

/* // CompanyHisotry //
----------------------------------------------- */
#CompanyHisotry {
    width: 100%;
    line-height: 1.6;
    padding: 0 10px;
}

#CompanyHisotry>.inner {
    padding: 15px 0 15px 10px;
    border-left: #E8E8E8 solid 6px;
}

#CompanyHisotry .yearItem {
    padding: 4px 6px;
    display: block;
    width: 100%;
    margin-bottom: 6px;
}
#CompanyHisotry .yearItem:before {
    width: 17px;
    height: 17px;
    left: -23px;
    top: 9px;
}
#CompanyHisotry .yearItem .year {
    display: block;
    font-weight: 700;
    font-size: 180%;
    width: 100%;
}
#CompanyHisotry .yearItem .year .ja {
    font-size: 65%;
}
#CompanyHisotry .yearItem .inner {
    display: block;
    width: 100%;
}

#CompanyHisotry .monthItem {
    padding: 4px 0;
    width: 100%;
}
#CompanyHisotry .monthItem .month {
    font-weight: 600;
    font-size: 120%;
    width: 15%;
}
#CompanyHisotry .monthItem .tx {
    width: 85%;
    line-height: 1.5;
    font-size: 88%;
}
#CompanyHisotry .monthItem.photo .tx {
    width: 85%;
    padding-right: 0;
}
#CompanyHisotry .monthItem.photo .image {
    display: none;
}


/* // CompanyEnvironment //
----------------------------------------------- */
#CompanyEnvironment .bg {
    padding: 20px;
}
#CompanyEnvironment .bg .inner {
    padding: 20px;
}

/* // officeItem //
----------------------------------------------- */
.officeItem {
    border-width: 6px;
    margin-bottom: 15px;
}
.officeItem .frame {
    padding: 10px 10px;
}
.officeItem .name {
    font-size: 128%;
    padding: 0 3px 5px;
    margin-bottom: 10px;
}
.officeItem .name .tx {
    font-weight: 700;
}
.officeItem table.wrap {
    font-size: 92%;
    line-height: 1.4;
}
.officeItem table.wrap tr {
    display: block;
}
.officeItem table.wrap>tbody>tr>th {
    display: block !important;
    padding: 0 0 2px 0 !important;
    width: 100% !important;
    font-weight: 600;
    font-size: 106%;
}
.officeItem table.wrap>tbody>tr>td {
    display: block !important;
    padding: 0 0 10px 0 !important;
    width: 100% !important;
}
.officeItem table.in {
    line-height: 1.4;
}
.officeItem table.in>tbody>tr>th {
    display: inline-block;
}
.officeItem table.in>tbody>tr>td {
    display: inline-block;
}
.officeItem table.in>tbody>tr:nth-of-type(2)>th {
    padding-top: 5px;
}


.officeItem .mapBtn {
    position: static;
    right: auto;
    top: auto;
    text-align: center;
    padding-top: 6px;
}
.officeItem .mapBtn .btn {
    padding-top: 8px;
    padding-bottom: 8px;
    width: 240px;
}


/* // mapWrap //
----------------------------------------------- */
.mapWrap {
    padding-top: 12px;
    padding-bottom: 12px;
}
.mapWrap iframe {
    width: 100% !important;
    height: 300px !important;
}
.mapWrap .gMapBtn {
    margin-top: 14px;
}
.mapWrap .gMapBtn .btn {
    width: 240px;
}

/* // IrTopics //
----------------------------------------------- */
#IrTopics .innerWidth {
    width: 100%;
}
/* //    |- TopicsIndex  */
#IrTopics #TopicsIndex {
    width: 80%;
    margin: 0 auto;
}
#IrTopics #TopicsIndex .list li {
    float: none;
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
}
#IrTopics #TopicsIndex .list li a {
    width: 100%;
}
#IrTopics #TopicsIndex .list li a .image {}
#IrTopics #TopicsIndex .list li a:hover .image {
    height: 100%;
}
#IrTopics #TopicsIndex .list li a .title {
    padding: 35px 15px 10px 10px;
}
#IrTopics #TopicsIndex .list li a .title .inner {
    position: relative;
    padding-left: 35px;
}
#IrTopics #TopicsIndex .list li a .title p {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 500;
}
#IrTopics #TopicsIndex .list li a .title p:before {
    width: 26px;
    height: 26px;
    padding-top: 5px;
}

#IrTopics .topicsDetail {
    width: 100%;
    padding-bottom: 15px;
}
#IrTopics .swiperA.swiper-container {
    height: 200px;
    margin-top: 20px;
}
#IrTopics .swiperA.swiper-container.no .swiper-slide {
    margin: 0 7px;
}

#IrTopics .swiperA .swiper-slide {
    width: 260px;
    height: 200px;
}
#IrTopics .swiperA .swiper-slide .in {}
#IrTopics .swiperA .swiper-slide .image {}
#IrTopics .swiperA .swiper-slide .text {
    padding: 30px 15px 10px 15px;
    font-size: 13px;
    line-height: 1.5;
}

/* // FaqWrap //
----------------------------------------------- */
#FaqWrap .faqItem {
    margin-bottom: 10px;
    font-size: 90%;
}
#FaqWrap .faqItem .que {
    line-height: 1.5;
    padding: 10px 10px 10px 25px;
}
#FaqWrap .faqItem a:hover .que {}
#FaqWrap .faqItem .que:before {
    left: 5px;
    top: 7px;
    font-size: 17px;
}
#FaqWrap .faqItem .ans {
    line-height: 1.5;
    padding: 10px 10px 10px 25px;
}
#FaqWrap .faqItem .ans:before {
    left: 5px;
    top: 7px;
    font-size: 17px;
}
#FaqWrap .btnsAll .btn {
    display: block;
    width: 200px;
    margin: 0 0 10px auto;
}


/* // IrResults //
----------------------------------------------- */
#IrResults .item {
    margin-bottom: 36px;
}
#IrResults .item ul.results {
    text-align: center;
    display: block;
}
#IrResults .item ul.results li {
    display: block;
    margin: 0 0 12px;
    ;
    width: 100%;
    height: auto;
}
#IrResults .item ul.results li a {}

#IrResults .item ul.results li a .wrap {
    position: relative;
    top: auto;
    left: auto;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
    width: 100%;
    padding: 8px 30px 8px 10px;
    display: block;
}
#IrResults .item ul.results li a .tx {
    text-align: left;
    margin-bottom: 5px;
    font-size: 118%;
    font-weight: 500;
    line-height: 1.4;
}
#IrResults .item ul.results li a .date {
    text-align: left;
    margin-bottom: 0;
    font-size: 110%;
    font-weight: 300;
}
#IrResults .item ul.results li a .wrap:after {
    font-size: 150%;
    display: inline;
    position: absolute;
    top: 50%;
    right: 3px;
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}


/* // parallelSection //
----------------------------------------------- */
.parallelSection {
    display: block;
    width: 100%;
}
.parallelSection .block {
    display: block;
    margin-bottom: 40px;
}
.parallelSection.col2 .block {
    width: 100%;
}
.parallelSection.col2 .block:nth-of-type(odd) {
    padding-right: 0;
}
.parallelSection.col2 .block:nth-of-type(even) {
    padding-left: 0;
}
.parallelSection.col3 .block {
    width: 100%;
}
.parallelSection.col3 .block:nth-of-type(3n+1) {
    padding-right: 0;
}
.parallelSection.col3 .block:nth-of-type(3n+2) {
    padding-right: 0;
    padding-left: 0;
}
.parallelSection.col3 .block:nth-of-type(3n) {
    padding-left: 0;
}

/* // CareerChart //
----------------------------------------------- */
#CareerChart {
    margin-top: 40px;
    padding: 50px 0;
}
#CareerChart .image {
    padding-top: 20px;
}

/* // EngineeringCenter //
----------------------------------------------- */
#EngineeringCenter {}
#EngineeringCenter .swiper-container {
    height: 220px;
}
#EngineeringCenter .swiper-slide {
    width: 220px;
    height: 190px;
}
#EngineeringCenter .swiper-slide .in {
    width: 220px;
    height: 190px;
}

#EngineeringCenter .swiperA .swiper-slide .in .tx {

    padding: 29px 10px 10px 10px;
}
#EngineeringCenter .swiperA .swiper-slide .in .tx .inner {}
#EngineeringCenter .swiperA .swiper-slide .in .tx p {}
#EngineeringCenter .swiperA .swiper-slide .in .tx p.name {}

/* // HumanFukuri //
----------------------------------------------- */
#HumanFukuri .seiunkai {
    padding-left: 90px;
    background-size: auto 75px;
    min-height: 75px;
}
#HumanFukuri .facility .image {
    width: 250px;
    float: none;
    margin: 0 auto 15px;
}
#HumanFukuri .facility .tx {
    width: 100%;
    float: none;
    margin-left: -0;
    padding-left: 0;
}
#HumanFukuri .cultural .image {
    width: 150px;
}
#HumanFukuri .cultural .tx {
    margin-left: -150px;
    padding-left: 160px;
    font-size: 90%;
    line-height: 1.6;
}
/* // HumanStudy //
----------------------------------------------- */
#HumanStudy .titleTxC {
    background-color: #5B5C57;
    line-height: 1;
    padding: 10px;
    color: #FFF;
    border-bottom: 0;
}
#HumanStudy .mid_career_training .image {
    width: 80%;
    float: none;
    margin-bottom: 15px;
    margin-left: auto;
    margin-right: auto;
}
#HumanStudy .mid_career_training .image.w2 {
    width: 100%;
}
#HumanStudy .mid_career_training .job:after {
    width: 2px;
}
#HumanStudy .swiper-container {
    height: 220px;
}
#HumanStudy .swiper-slide {
    width: 220px;
    height: 190px;
}
#HumanStudy .swiper-slide .in {
    width: 220px;
    height: 190px;
}

/* // OtherPageA //
----------------------------------------------- */
#OtherPageA .item {
    margin-bottom: 30px;
}

/* // SNSAccount //
----------------------------------------------- */
#SNSAccount .accountItem {
    margin-bottom: 22px;
}
#SNSAccount .accountItem .image {
    float: none;
    width: 100%;
    margin-bottom: 12px
}
#SNSAccount .accountItem .image img {
    width: 150px;
}
#SNSAccount .accountItem .contents {
    float: none;
    width: 100%;
    margin-left: -0;
    padding-left: 0;
}

/* // ContactPage //
----------------------------------------------- */
#ContactPage .tit1 {
    margin-bottom: 13px;
}
#ContactPage .tit1 em {
    padding: 0 17px 6px;
    border-width: 2px;
    width: 90%;
    font-size: 90%;
    font-weight: 400;
    margin: 0 auto;
}
#ContactPage .tel {
    text-align: center;
    margin-bottom: 10px;
    font-weight: 300;
    font-size: 120%;
    line-height: 1.5;
}
#ContactPage .btn {}
#ContactPage .btn.sp {
    margin-bottom: 12px;
}
#ContactPage .btn a {
    font-size: 95%;
    width: 80%
}

/* // Services //
----------------------------------------------- */
#Services .tabNavi {
    padding: 25px 0 0;
}
#Services .tabNavi.bottom {
    padding: 25px 0 0;
}
#Services .item.A {}
#Services .item.A .image1 {
    text-align: center;
    overflow: hidden;
    margin-bottom: 25px;
}
#Services .item.A .image1 img {
    width: 140%;
    margin-left: -20%;
}
#Services .item.A .htx1 {
    text-align: left;
    font-size: 130%;
    line-height: 1.6;
    margin-bottom: 20px;
}
#Services .item.A .body p {
    text-align: left;
}
#Services .item.A .list1 {
    margin-top: 24px;
    padding: 10px;
}
#Services .item.A .list1 ul {}
#Services .item.A .list1 ul.col2 li {
    margin-left: 0;
    width: 100%;
}
#Services .item.A .list1 ul.col2 li:nth-of-type(odd) {
    padding-right: 0;
}
#Services .item.A .list1 ul.col2 li:nth-of-type(even) {
    padding-left: 0;
}
#Services .item.A .list1 ul li {
    display: block;
    margin-left: 0;
    margin-bottom: 10px;
}
#Services .item.A .list1 .htx2 {
    padding-left: 18px;
}
#Services .item.A .list1 .tx1 {
    font-size: 86%;
    line-height: 1.5;
    margin-top: 5px;
    padding-left: 0;
}
#Services .item.A .list1 .htx2:before {
    width: 12px;
    height: 12px;
    top: 4px;
    -ms-box-shadow: 2px 2px 0 #5B5C57;
    -moz-box-shadow: 2px 2px 0 #5B5C57;
    -webkit-box-shadow: 2px 2px 0 #5B5C57;
    box-shadow: 2px 2px 0 #5B5C57;
}
#Services .item.A .list1 br {
    display: none;
}
#Services video{
	max-width: 100%;
	background: #000;
}
#Services video:not(.vertical){
	height: calc( (100vw - 20px) * 0.5625 );
}
#Services video.vertical{
	max-height: 90vh;
}

/* // Mechatronics //
----------------------------------------------- */
#Mechatronics .tabNaviC {
    margin-top: -40px;
}

/* //    |- TopLead  */
#Mechatronics #TopLead {
    text-align: left;
}
#Mechatronics #TopLead .list1 {
    text-align: left;
}
#Mechatronics #TopLead .list1 li {
    display: block;
    margin: 0 0 2px;
    font-size: 94%;
    line-height: 1.5;
    text-align: center;
}
#Mechatronics #TopLead .list1 li:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}
#Mechatronics #TopLead .list1 li {
    display: inline-block;
}
* html #Mechatronics #TopLead .list1 li {
    height: 1%;
}
.xxxxxx {
    display: block;
}

#Mechatronics #TopLead .list1 li .icon {
    display: block;
    float: left;
    width: 100px;
    padding: 0 12px 0 0px;
}
#Mechatronics #TopLead .list1 li .tx {
    display: block;
    float: left;
    text-align: left;
    width: 100%;
    margin-left: -100px;
    padding-left: 100px;
    padding-top: 14px;
}
#Mechatronics #TopLead .mainImg {
    display: block;
    height: auto;
    position: relative;
    margin-top: 4px;
}
#Mechatronics #TopLead .mainImg img {
    position: static;
    left: auto;
    top: auto;
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    transform: translate(0, 0);
}
#Mechatronics #TopLead .mainImg .bg {
    display: none;
}
#Mechatronics #TopLead .mainImg .main {
    width: 310px;
    margin: 0 auto;
    display: block;
}

#Mechatronics #TopLead .list2 {
    margin-top: 12px;
    margin-bottom: 23px;
}
#Mechatronics #TopLead .list2 li {
    text-align: left;
    margin-bottom: 10px;
}
#Mechatronics #TopLead .list2 li .wrap {
    display: inline-block;
    padding: 0 10px;
    font-weight: 400;
}



/* //    |- Strength  */
#Mechatronics #Strength .item {
    margin-bottom: 40px;
}
#Mechatronics #Strength .item:last-of-type {
    margin-bottom: 0;
}
#Mechatronics #Strength .item>div {
    display: block;
    height: auto;
    width: 100%;
    float: none;
    position: relative;
}
#Mechatronics #Strength .item:nth-of-type(even)>div {
    float: right;
}
#Mechatronics #Strength .item .image {
    text-align: center;
    padding: 0 20px 11px;
}
#Mechatronics #Strength .item .contents .inner {
    position: static;
    top: auto;
    right: auto;
    -ms-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    transform: translateY(0%);
    width: 100%;
}
#Mechatronics #Strength .item:nth-of-type(even) .contents .inner {
    right: auto;
    left: auto;
}
#Mechatronics #Strength .item .contents .htx1 {
    font-size: 140%;
    line-height: 1.5;
    margin-bottom: 12px;
}

/* //    |- FieldIndex  */

#Mechatronics #FieldIndex .itemWrap {}
#Mechatronics #FieldIndex .itemWrap .item {
    display: block;
    float: none;
    overflow: hidden;
    width: 100%;
    height: 200px;
    margin-bottom: 10px;
}
#Mechatronics #FieldIndex .itemWrap .item:before {}
#Mechatronics #FieldIndex .itemWrap .item .tx {}
#Mechatronics #FieldIndex .itemWrap .item .tx .name {
    font-size: 160%;
    margin-bottom: 17px;
}
#Mechatronics #FieldIndex .itemWrap .item .tx .btn {}
#Mechatronics #FieldIndex .itemWrap .item .tx .btn a.btnA {
    width: 250px;
    font-size: 114%;
    padding-top: 7px;
    padding-bottom: 7px;
}

/* // Facility //
----------------------------------------------- */

/* //    |- strengthList  */

#Facility .strengthList .item {
    display: block;
    padding: 35px 15px;
}
#Facility .strengthList .item>* {
    display: block;
}
#Facility .strengthList .item .itemTtl {
    width: 100%;
    font-size: 150%;
    font-weight: 200;
    margin-bottom: 20px;
}


/* //    |- solutionList  */

#Facility .solutionList .item+.item {
    margin-top: 30px;
}
#Facility .solutionList .img {
    width: 100%;
    height: 53vw;
    overflow: hidden;
    position: relative;
    margin-bottom: 20px;
}
#Facility .solutionList .img img {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
#Facility .solutionList .item .ttl {
    line-height: 1.6;
    padding: 8px 15px;
    font-size: 113%;
    margin-bottom: 10px;
}
#Facility .solutionList.iconOn .item .ttl {
    padding-right: 95px;
}
#Facility .solutionList .item .ttl .icon {
    width: 84px;
}
#Facility .solutionList .item .inner {
    display: block;
}
#Facility .solutionList .item .inner .dlwrap {
    width: auto;
}
#Facility .solutionList .item .inner .dlwrap dl {}
#Facility .solutionList .item .inner dt {
    padding: 10px;
    width: 110px;
    text-align: center;
}
#Facility .solutionList .item .inner dd {
    font-size: 93%;
    padding: 10px 10px 10px 15px;
}

/* //    |- FieldIndex  */

#Facility #FieldIndex .crossA .item {
    display: block;
    margin-bottom: 40px;
}
#Facility #FieldIndex .crossA .item:last-child {
    margin-bottom: 0;
}
#Facility #FieldIndex .crossA .item>* {
    width: 100%;
}
#Facility #FieldIndex .crossA .item .img {
    width: 100%;
    margin-bottom: 20px;
    padding: 0 20px 0;
}
#Facility #FieldIndex .crossA .item .wrap {
    display: block;
    padding: 0;
}
#Facility #FieldIndex .crossA .item .wrap .ttl {
    font-size: 160%;
    margin-bottom: 10px;
}
#Facility #FieldIndex .crossA .item .wrap .body {
    font-size: 100%;
    margin-bottom: 20px;
}
#Facility #FieldIndex .crossA .item .wrap .btn a {
    font-size: 140%;
    width: 80%;
    padding: 9px 30px 9px 20px;
}


/* //    |- Strength  */

#Facility #Strength .groupTtl {
    font-size: 150%;
}
#Facility #Strength .groupTtl img {
    width: 40px;
    margin-right: 5px;
}
#Facility #Strength .groupImg .obj {
    position: static;
    font-size: 100%;
    width: auto;
    margin-top: 40px;
}
#Facility #Strength .groupImg .obj .ttl {
    font-size: 120%;
    font-weight: 600;
    color: #E61A19;
    margin-bottom: 10px;
    border-bottom: 2px solid #E61A19;
    padding-bottom: 3px;
}
#Facility #Strength .groupImg .obj .summery {
    text-align: left !important;
}
#Facility #Strength .groupImg .obj .btn {
    text-align: left !important;
}
#Facility #Strength .groupImg .obj .btn a {
    padding: 8px 40px 8px 25px;
}

/* //    |- Results  */

#Facility #Results .titleTxD {
    margin-bottom: 10px;
}
#Facility #Results .titleTxD .tx {
    font-size: 120%;
}
#Facility #Results .item .columnwrap .col {
    width: calc((100% - 10px) / 2);
    margin-top: 10px;
}
#Facility #Results .item+.item {
    margin-top: 40px;
}
#Facility #Results .item .btn a {
    background: #9d9d9d;
    width: 90%;
}
#Facility #Results .item .tabNaviA .btns li {
    width: 100%;
    float: none;
}
#Facility #Results .item .tabNaviA .btns li a {
    width: 100%;
}

/* //    |- Intro  */

#Facility #Intro p {
    text-align: left;
}

#Facility #Intro .ttl {
    font-size: 130%;
    line-height: 1.6;
    margin-bottom: 20px;
    text-align: left;
}
#Facility #Intro .txt {
    text-align: left;
}
#Facility #Intro ul.range {
    -webkit-justify-content: center;
    justify-content: center;
}
#Facility #Intro ul.range:before {
    display: none;
}
#Facility #Intro ul.range li {
    width: 23%;
    margin: 0 1% 10px;
}
#Facility #Intro .benefitsTtl {
    font-size: 170%;
}
#Facility #Intro .benefitsList {
    display: block;
}
#Facility #Intro .benefitsList li {
    width: 100%;
    display: block;
    font-size: 110%;
    padding: 10px 15px;
    text-align: left;
}

#Facility #Intro .strengthList .item .itemTtl {
    font-size: 110%;
    font-weight: 500;
    width: auto;
    text-align: center;
}
#Facility #Intro .strengthList .item li {
    line-height: 1.6;
    margin-bottom: 20px;
}
#Facility #Intro .strengthList .item li:last-child {
    margin-bottom: 0px;
}
#Facility #Intro .strengthList .item li span {
    margin-right: 0;
    display: block;
}
#Facility #Intro .supportList .support {
    display: block;
    padding: 30px 15px;
}

#Facility #Intro .supportList .supportName {
    font-size: 130%;
    line-height: 1.4;
    padding: 0px;
    border-bottom: 0;
    margin-bottom: 15px;
}
#Facility #Intro .supportList .itemWrap {
    width: auto;
    display: block;
}
#Facility #Intro .supportList .item {
    width: auto;
    padding-bottom: 10px;
    margin-bottom: 30px;
}
#Facility #Intro .supportList .item:last-child {
    margin-bottom: 0px;
}
#Facility #Intro .supportList .item .name {}
#Facility #Intro .supportList .item:not(:last-child):before {
    content: "　";
    position: absolute;
    display: block;
    left: 50%;
    top: auto;
    bottom: -15px;
    margin-top: 0;
    margin-left: -10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: rgba(0, 0, 0, .1) transparent transparent transparent;
}
#Facility #Intro .supportList .item li {
    font-size: 93%;
    margin-bottom: 0;
}
#Facility .tabNaviFa {
    margin: 0 auto 30px;
    width: auto;
}
#Facility .tabNaviFa a {
    font-size: 93%;
    padding: 10px 0;
}


/* //    |- Bui1  */

#Facility #Bui1 .item+.item {
    margin-top: 40px;
}
#Facility #Bui1 .ttl {
    font-size: 130%;
    margin-bottom: 30px;
    font-weight: 500;
}
#Facility #Bui1 .types {
    display: block;
}
#Facility #Bui1 .type {
    width: auto;
}
#Facility #Bui1 .type+.type {
    margin-top: 20px;
}
#Facility #Bui1 .type .inner {
    padding-left: 100px;
}
#Facility #Bui1 .type .inner .icon {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: 70px;
    top: 0;
}
#Facility #Bui1 .type .typeTtl {
    font-size: 130%;
    margin-bottom: 10px;
}
#Facility #Bui1 .targetList {
    display: block;
}
#Facility #Bui1 .target {
    width: auto;
    margin-bottom: 30px;
}
#Facility #Bui1 .target:last-child {
    margin-bottom: 0px;
}
#Facility #Bui1 .target>img {
    width: 27%;
}
#Facility #Bui1 .target .name {
    font-size: 130%;
    margin-bottom: 10px;
}
#Facility #Bui1 .target .inner {
    width: 68%;
}
#Facility #Bui1 .target .contents {
    width: auto;
    line-height: 1.6;
}


/* //    |- Bui2  */

#Facility #Bui2 .item+.item {
    margin-top: 40px;
}
#Facility #Bui2 .item.i1 .inner {
    padding-left: 0;
}
#Facility #Bui2 .item.i1 .inner>img {
    position: static;
    width: 70%;
    display: block;
    margin: 0 auto 30px;
}
#Facility #Bui2 .item.i1 .ttl {
    font-size: 130%;
    margin-bottom: 20px;
}
#Facility #Bui2 .item.i1 .txt {
    margin-bottom: 30px;
}
#Facility #Bui2 .item:not(.i1) .txt {
    text-align: left;
}


/* //    |- Rep1  */

#Facility #Rep1 .ranges {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
}
#Facility #Rep1 .range {
    margin-bottom: 30px;
    width: auto;
}
#Facility #Rep1 .range .txt {
    padding: 30px 15px;
}
#Facility #Rep1 .range .ttl {
    font-size: 130%;
    font-weight: 500;
    margin-bottom: 10px;
}
#Facility #Rep1 .range .list {
    margin-bottom: 0;
    line-height: 1.6;
}
#Facility #Rep1 .range .list li {
    padding-right: 0;
    width: auto !important;
    float: none;
}
#Facility #Rep1 .special {
    border: 5px solid #efdee0;
    padding: 30px 15px;
}
#Facility #Rep1 .special img {
    width: 50%;
    margin-right: 15px;
}

/* //    |- Rep2  */

#Facility #Rep2 .item+.item {
    margin-top: 40px;
}
#Facility #Rep2 .item .ttl {
    font-size: 130%;
    margin-bottom: 20px;
}
#Facility #Rep2 .item .table {
    display: block;
    margin-bottom: 20px;
}
#Facility #Rep2 .item .table table {
    width: 100%;
}
#Facility #Rep2 .item .table table:not(:last-child) tr:last-child th {
    border-bottom-color: #fff;
}
#Facility #Rep2 .item .table table:first-child tr:last-child td {
    border-bottom: 0 !important;
}
#Facility #Rep2 .item .imgs {
    -webkit-justify-content: space-around;
    justify-content: space-around;
}
#Facility #Rep2 .item .imgs p {
    width: 44%;
    margin-right: 4%;
    margin-bottom: 20px;
}




/* //    |- Con1  */

#Facility .solTtl {
    margin-bottom: 10px;
}
#Facility .solTtl em {
    font-size: 130%;
}
#Facility .solTtl em:before,
#Facility .solTtl em:after {
    width: 30px;
}
#Facility .solblock {
    width: auto;
}
#Facility .solblock .problem .checkEmpty {
    padding: 10px 15px;
}
#Facility .solblock .problem .checkEmpty li {
    padding-left: 25px;
    font-size: 93%;
    margin-bottom: 5px;
}
#Facility .solblock .info {
    padding: 20px 0;
}
#Facility .solblock .infoTtl {
    font-size: 110%;
    margin-bottom: 15px;
}
#Facility .solblock .info .wrap {
    padding: 0 15px;
    display: block
}
#Facility .solblock .info .wrap table {
    width: 100%;
}
#Facility .solblock .info .wrap table:first-child {
    border-bottom: 1px solid #d6d6d6;
}
#Facility .solblock .solution table {
    width: 100%;
    margin: 0 auto;
    display: block;
    padding: 10px 0;
}
#Facility .solblock .solution th {
    border: 0 !important;
    padding-bottom: 0;
}
#Facility .solblock .solution td {
    border-top: 0 !important;
}
#Facility .solblock .solution th,
#Facility .solblock .solution td {
    display: block;
    padding-left: 15px;
    padding-right: 15px;
}
#Facility .solblock .solution tr:last-child td {
    border-bottom: 0 !important;
}
#Facility .solblock .solution th p {
    padding-left: 25px;
}

#Facility .solblock .solution .imgs {
    padding: 15px 15px;
    -webkit-flex-flow: row nowrap;
    flex-flow: row nowrap;
}
#Facility .solblock .solution .imgs img {
    width: 50%;
}
#Facility .solblock .solution .checkAll {
    padding: 0 15px 30px;
}
#Facility .solblock .solution .checkAll li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 5px;
    line-height: 1.6;
    font-size: 93%;
}
#Facility .solblock .solution .checkAll i {
    font-size: 120%;
    position: absolute;
    left: 0;
    top: 0;
}
#Facility .solblock .contents {
    padding: 15px 15px 20px;
    font-size: 110%;
}
#Facility .solblock .contents .en:before {
    display: none;
}
#Facility .solblock .problem .contents {
    background-image: none !important;
}

#Facility .solblock .solution .contents {
    border-bottom: 2px solid #E61A19;
}
#Facility #Con1 .solblock .solution .contents:before {
    margin-left: -18px;
    border-width: 13px 18px 0 18px;
}
#Facility #Con1 .item+.item {
    margin-top: 40px;
}

/* //    |- Con2  */

#Facility #Con2 .ttl {
    font-size: 130%;
    margin-bottom: 20px;
    text-align: left;
}
#Facility #Con2 .txt {
    text-align: left;
}
#Facility #Con2 .flowItem {
    position: relative;
    margin-bottom: 50px;
}
#Facility #Con2 .flowItem:not(:last-child):after {
    content: "　";
    position: absolute;
    display: block;
    left: 50%;
    top: 100%;
    margin-top: 20px;
    margin-left: -18px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 13px 18px 0 18px;
    border-color: #f3d6d7 transparent transparent transparent;
}
#Facility #Con2 .flowItem .flowTtl {
    width: auto;
    height: auto;
    padding: 10px 15px;
    font-size: 130%;
    background: #e10d20 !important;
    position: static;
}
#Facility #Con2 .flowItem .flowInner {
    border-top: 0;
    padding: 20px 15px;
    width: auto;
    height: auto !important;
}
#Facility #Con2 .flowItem td {
    display: block;
    padding: 0;
}
#Facility #Con2 .flowItem tr+tr {
    display: block;
    margin-top: 20px;
}

#Facility #Con2 .flowItem .num {
    font-size: 93%;
    font-weight: 600;
    margin-bottom: 2px;
    line-height: 1;
}
#Facility #Con2 .flowItem .name {
    line-height: 1;
    font-size: 130%;
    margin-bottom: 10px;
}
#Facility #Con2 .flowItem li {
    padding-left: 25px;
}

/* //    |- Con3  */

#Facility #Con3 .solblock:first-of-type {
    margin-bottom: 40px;
}
#Facility #Con3 .solblock.bl1:after {
    margin-top: 18px;
    margin-left: -18px;
    border-width: 13px 18px 0 18px;
}
#Facility #Con3 .solblock.bl2 .contents {
    font-size: 130%;
}

/* //    |- Results  */

#Facility #R_Hotel .ttl {
    font-size: 150%;
    margin-bottom: 20px;
}
#Facility #R_Hotel .mainArea {
    display: block;
    background: transparent;
    margin-bottom: 10px;
}
#Facility #R_Hotel .mainArea .txt {
    display: block;
    padding: 20px 15px;
}
#Facility #R_Hotel .mainArea .txt .name {
    font-size: 130%;
    margin-bottom: 10px;
}
#Facility #R_Hotel .mainArea .txt li span {
    min-width: 100px;
}
#Facility #R_Hotel .num {
    padding: 10px 15px;
    font-size: 100%;
}
#Facility #R_Hotel .num .numTtl {
    margin-right: 0;
    display: block;
    text-align: center;
}
#Facility #R_Hotel .num em {
    font-size: 150%;
}

#Facility .resultsWrap {
    display: block;
}

#Facility .resultsWrap .txt {
    width: auto;
}
#Facility .resultsWrap .img {
    margin-bottom: 30px;
}
#Facility .resultsWrap .ttl {
    font-size: 150%;
    margin-bottom: 15px;
    text-align: center;
}
#Facility .resultsWrap .detail li {
    padding-left: 30px;
}


/* // AdobeAcrobat //
----------------------------------------------- */
#AdobeAcrobat {
    margin-top: 50px;
    text-align: center;
}
#AdobeAcrobat .inner {
    display: block;
    padding: 15px;
}
#AdobeAcrobat .logo {
    display: block;
    width: 150px;
    margin: 0 auto 10px 0;
}
#AdobeAcrobat .wrap1 {
    display: block;
    margin-left: 0;
}
#AdobeAcrobat .tx1 {
    line-height: 1.5;
    font-size: 100%;
    margin-bottom: 10px;
}



/* // IrLegalNotice //
----------------------------------------------- */
#IrLegalNotice .list1 li {
    margin-bottom: 10px;
}
#IrLegalNotice .list1 li .btn {
    width: 100%;
    text-align: left;
    display: block;
    padding-left: 15px;
}
#IrLegalNotice .list1 li .btn .date {
    display: block;
    margin-bottom: 3px;
    width: 100%;
}
#IrLegalNotice .list1 li .btn .group {
    padding: 3px 6px;
    font-size: 10px;
    margin: 0 5px;
}


/* // pamphletListA //
----------------------------------------------- */
.pamphletListA {}
.pamphletListA .itemWrap {
    display: block;
}
.pamphletListA .itemWrap .item {
    border-width: 10px;
    width: 100%;
    margin-bottom: 10px;
}
.pamphletListA .itemWrap .item:nth-of-type(odd) {
    margin-right: 0;
}
.pamphletListA .itemWrap .item .inner {
    padding: 10px;
}
.pamphletListA .itemWrap .item .image {
    width: 70px;
}
.pamphletListA .itemWrap .item .contents {
    width: calc(100% - 70px);
    padding-left: 10px;
}
.pamphletListA .itemWrap .item .contents .tit1 {
    font-size: 110%;
    margin-bottom: 14px;
}
.pamphletListA .itemWrap .item .contents .btns li {
    margin-bottom: 12px;
}
.pamphletListA .itemWrap .item .contents .btns li:last-of-type {
    margin-bottom: 0;
}
.pamphletListA .itemWrap .item .contents .btns li .btn {
    min-width: 10px;
    width: 100%;
}


/* // xxxxx //
----------------------------------------------- */
/* //    |- xxxxx  */




/* // CompanyOfficer //
----------------------------------------------- */

#Officer .widthFix {
    display: block;
}
#Officer .sectionA.s {
    padding: 30px 0 30px;
}

#Officer .sectionB.s {
    padding: 30px 0 30px;
}
#Officer .widthFix .box,
#Officer .widthFix.reverse .box {
    margin-top: -10px;
}

#Officer .widthFix .photo img {
    width: 80%;
    margin: 0 auto;
}

#Officer .widthFix .box .txtArea {
    background: #fff;
    border: 1px solid #e5e5e5;
    flex-basis: 570px;
    padding: 20px 10px 30px 10px;
    font-size: 86%;
    text-align: left;
    box-sizing: border-box;
    width: 100%;
    position: relative;
    min-height: auto;
}
#Officer .widthFix .nameBox {
    display: inline-block;
    width: 100%;
    padding: 10px 10px 10px;
    -moz-box-shadow: 6px 6px 0 #5B5C57;
    -webkit-box-shadow: 6px 6px 0 #5B5C57;
    box-shadow: 6px 6px 0 #5B5C57;
    z-index: 10;
    position: relative;
    left: 0%;
    bottom: 26px;
    min-height: 50px;
}
#Officer .widthFix.reverse .nameBox {
    left: 0%;
}
#Officer .widthFix .nameBox p {
    font-size: 100%;
}
#Officer .widthFix .nameBox p span {
    font-size: 80%;
}
#Officer .widthFix .nameBox p.name {
    text-align: right;
    font-size: 120%;
}


/* // CompanyOfficer //
----------------------------------------------- */

#Officer2 .widthFix {
    display: block;
}
#Officer2 .sectionA.s {
    padding: 30px 0 30px;
}

#Officer2 .sectionB.s {
    padding: 30px 0 30px;
}
#Officer2 .widthFix .box,
#Officer2 .widthFix.reverse .box {
    margin-top: 10px;
    margin-left: 0px;
    margin-right: 0px;
}

#Officer2 .widthFix .photo {
    display: block;
    margin: 0 auto;
}
#Officer2 .widthFix .photo img {
    width: 80%;
    margin: 0 auto;
}
#Officer2 .widthFix .nameBox {
    margin-top: 10px;
    display: block;
    width: 100%;
    z-index: 10;
    width: 100%;
    position: static;
}
#Officer2 .widthFix .box .txtArea {
    background: #fff;
    border: 1px solid #e5e5e5;
    flex-basis: 570px;
    padding: 20px 10px 30px 10px;
    font-size: 86%;
    text-align: left;
    box-sizing: border-box;
    width: 100%;
    position: relative;
    min-height: auto;
    line-height: 1.7;
}

#Officer2 .widthFix .nameBox.executive {}

#Officer2 .widthFix.reverse .nameBox {
    left: 0%;
    margin-left: 0px;
}
#Officer2 .widthFix .nameBox p {
    font-size: 100%;
    text-align: left !important;
    line-height: 1.6;
    width: 80% !important;
    margin: 0 auto;
    display: block;
}
#Officer2 .widthFix .nameBox p span {
    font-size: 80%;
}
#Officer2 .widthFix .nameBox p.name {
    font-size: 120%;
}
