@charset "utf-8";

/*
/////sscss/////
Smart Style Complex Original Stylesheet Template.
URL:http://ss-complex.com/
Author:Seiji Okabe
*/

/*-----clearfix-----*/
.cf:after {content: "."; display: block;clear: both;height: 0;visibility: hidden;}
.cf {min-height: 1px;}
* html .cf {height: 1px;}

/*-----cleartext-----*/
.clearText {text-indent:100%;white-space:nowrap;overflow:hidden;}

/*-----common-----*/
/*all device*/
.wrapper {position: relative;}
.taRBlk {text-align: right;display: block;}
.noLine {text-decoration: none;}
.bold {font-weight: bold;}
.bgFit {background-repeat: no-repeat;background-position: center;background-size: cover;}
.bgFit.ctn {background-size: contain;}
.kome {margin-left: 1.2em;}
.kome li {position: relative;list-style-type: none !important;}
.kome li:before {position: absolute;content: '※';left: -1.2em;top: 0;}
.taL {text-align: left;}
.taC {text-align: center;}
.taR {text-align: right;}
.fL {float: left;}
.fR {float: right;}
.posRel {position: relative;}
.lh0 {line-height: 0;}
.fBox {margin-left: -4%}
.fAll {float: left;width: 96%;margin-left: 4%;}
.f1of2 {float: left;width: 46%;margin-left: 4%;}
.f1of3 {float: left;width: 29.3333%;margin-left: 4%;}
.f2of3 {float: left;width: 62.6666%;margin-left: 4%;}
.f1of4 {float: left;width: 21%;margin-left: 4%;}
.f3of4 {float: left;width: 71%;margin-left: 4%;}
.f1of5 {float: left;width: 16%;margin-left: 4%;}
.f2of5 {float: left;width: 36%;margin-left: 4%;}
.f3of5 {float: left;width: 56%;margin-left: 4%;}
.f4of5 {float: left;width: 76%;margin-left: 4%;}
.f1of6 {float: left;width: 12.6666%;margin-left: 4%;}
.f5of6 {float: left;width: 79.3333%;margin-left: 4%;}
.f1of7 {float: left;width: 10.2857%;margin-left: 4%;}
.f2of7 {float: left;width: 24.5714%;margin-left: 4%;}
.f3of7 {float: left;width: 38.8571%;margin-left: 4%;}
.f4of7 {float: left;width: 53.1428%;margin-left: 4%;}
.f5of7 {float: left;width: 67.4285%;margin-left: 4%;}
.f6of7 {float: left;width: 81.7142%;margin-left: 4%;}
.f1of8 {float: left;width: 8.5%;margin-left: 4%;}
.f3of8 {float: left;width: 33.5%;margin-left: 4%;}
.autoImg {width: 100%;height: auto;}
.autoImg.full {width: auto;max-width: 100%;height: auto;display: table;margin: 0 auto;}
.autoImg.lg {width: 80%;margin: 0 auto;display: block;}
.autoImg.md {width: 50%;margin: 0 auto;display: block;}
.autoImg.sm {width: 30%;margin: 0 auto;display: block;}
.hAuto {height: auto !important;}
select::-ms-expand {
  display: none;
}
select {
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
}
/*sp*/
@media only screen and (max-width: 767px){
.wrapper {width: 100%;letter-spacing: 0.05em;line-height: 1.4em;}
.boldSp {font-weight: bold;}
.hideSp {display: none !important;}
.taLSp {text-align: left;}
.taCSp {text-align: center;}
.taRSp {text-align: right;}
.fLSp {float: left;}
.fRSp {float: right;}
.fBoxSp {margin-left: -4%}
.fAllSp {float: left;width: 96%;margin-left: 4%;}
.f1of2Sp {float: left;width: 46%;margin-left: 4%;}
.f1of3Sp {float: left;width: 29.3333%;margin-left: 4%;}
.f2of3Sp {float: left;width: 62.6666%;margin-left: 4%;}
.f1of4Sp {float: left;width: 21%;margin-left: 4%;}
.f3of4Sp {float: left;width: 71%;margin-left: 4%;}
.f1of5Sp {float: left;width: 16%;margin-left: 4%;}
.f2of5Sp {float: left;width: 36%;margin-left: 4%;}
.f3of5Sp {float: left;width: 56%;margin-left: 4%;}
.f4of5Sp {float: left;width: 76%;margin-left: 4%;}
.f1of6Sp {float: left;width: 12.6666%;margin-left: 4%;}
.f5of6Sp {float: left;width: 79.3333%;margin-left: 4%;}
.f1of7Sp {float: left;width: 10.2857%;margin-left: 4%;}
.f2of7Sp {float: left;width: 24.5714%;margin-left: 4%;}
.f3of7Sp {float: left;width: 38.8571%;margin-left: 4%;}
.f4of7Sp {float: left;width: 53.1428%;margin-left: 4%;}
.f5of7Sp {float: left;width: 67.4285%;margin-left: 4%;}
.f6of7Sp {float: left;width: 81.7142%;margin-left: 4%;}
.f1of8Sp {float: left;width: 8.5%;margin-left: 4%;}
.f3of8Sp {float: left;width: 33.5%;margin-left: 4%;}
.autoImg {width: 100%;height: auto;}
.autoImg.fullSp {width: auto;max-width: 100%;height: auto;display: table;margin: 0 auto;}
.autoImg.lgSp {width: 80%;margin: 0 auto;display: block;}
.autoImg.mdSp {width: 50%;margin: 0 auto;display: block;}
.autoImg.smSp {width: 30%;margin: 0 auto;display: block;}
.hAutoSp {height: auto !important;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.wrapper {width: 100%;min-width: 1240px;letter-spacing: 0.05em;line-height: 1.8em;}
.boldPc {font-weight: bold;}
.hidePc {display: none !important;}
.taLPc {text-align: left;}
.taCPc {text-align: center;}
.taRPc {text-align: right;}
.fLPc {float: left;}
.fRPc {float: right !important;}
.fBoxPc {margin-left: -4%}
.fAllPc {float: left;width: 96%;margin-left: 4%;}
.f1of2Pc {float: left;width: 46%;margin-left: 4%;}
.f1of2PcSkillLeft {float: left;width: 50%;margin-left: 4%;}
.f1of2PcSkillRight {float: left;width: 42%;margin-left: 4%;}
.f1of3Pc {float: left;width: 29.3333%;margin-left: 4%;}
.f2of3Pc {float: left;width: 62.6666%;margin-left: 4%;}
.f1of4Pc {float: left;width: 21%;margin-left: 4%;}
.f3of4Pc {float: left;width: 71%;margin-left: 4%;}
.f1of5Pc {float: left;width: 16%;margin-left: 4%;}
.f2of5Pc {float: left;width: 36%;margin-left: 4%;}
.f3of5Pc {float: left;width: 56%;margin-left: 4%;}
.f4of5Pc {float: left;width: 76%;margin-left: 4%;}
.f1of6Pc {float: left;width: 12.6666%;margin-left: 4%;}
.f5of6Pc {float: left;width: 79.3333%;margin-left: 4%;}
.f1of7Pc {float: left;width: 10.2857%;margin-left: 4%;}
.f2of7Pc {float: left;width: 24.5714%;margin-left: 4%;}
.f3of7Pc {float: left;width: 38.8571%;margin-left: 4%;}
.f4of7Pc {float: left;width: 53.1428%;margin-left: 4%;}
.f5of7Pc {float: left;width: 67.4285%;margin-left: 4%;}
.f6of7Pc {float: left;width: 81.7142%;margin-left: 4%;}
.f1of8Pc {float: left;width: 8.5%;margin-left: 4%;}
.f3of8Pc {float: left;width: 33.5%;margin-left: 4%;}
.autoImg {width: 100%;height: auto;}
.autoImg.fullPc {width: auto;max-width: 100%;height: auto;display: table;margin: 0 auto;}
.autoImg.lgPc,.autoImgPc.lgPc {width: 80%;margin: 0 auto;display: block;}
.autoImg.mdPc,.autoImgPc.mdPc {width: 50%;margin: 0 auto;display: block;}
.autoImg.smPc,.autoImgPc.smPc {width: 30%;margin: 0 auto;display: block;}
.hAutoPc {height: auto !important;}
}
/*lightbox*/
.fs-lightbox-overlay {
    z-index: 110;
}
.fs-lightbox {
    z-index: 111;
}
.fs-lightbox-position {
    display: none;
}
.fs-lightbox-content,.fs-lightbox-container {
    overflow: inherit;
}
@media only screen and (max-width: 767px){
.fs-lightbox-close {width: 40px;height: 40px;background: none;color: #111;}
.fs-lightbox-close:after {content: '×';position: absolute;width: 40px;height: 40px;text-align: center;line-height: 40px;font-size: 38px;color: #fff;top: 0;right: 0;}
.fs-lightbox-caption_toggle {display: none !important;}
.fs-lightbox-controls {height: 40px;background:none;}
.fs-lightbox-control_previous {width: 40px;height: 40px;background: none;color: #111;}
.fs-lightbox-control_next {width: 40px;height: 40px;background: none;color: #111;}
.fs-lightbox-control_previous:after,.fs-lightbox-control_next:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    top: 10px;
    left: 10px;
}
.fs-lightbox-control_previous:after {
    background-image: url(../image/icon_arrow_left_white.png);
}
.fs-lightbox-control_next:after {
    background-image: url(../image/icon_arrow_right_white.png);
}
.fs-lightbox-mobile.fs-lightbox-touch .fs-lightbox-meta {
    width: 90%;
    left: 50%;
    margin-left: -45%;
    height: auto;
    bottom: 200px;
    background-color: rgba(0,0,0,0.6);
    box-sizing: border-box;
    padding: 10px;
}
.fs-lightbox-meta span {
    display: block;
    margin-bottom: 5px;
}
}
@media only screen and (min-width: 768px), print{
.fs-lightbox-close {
    width: 40px;height: 40px;
    background: none;color: #111;text-indent:100%;
    white-space:nowrap;overflow:hidden;
    right: -20px;
    top: -20px;
}
.fs-lightbox-close:after {
    content: '×';
    position: absolute;
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 38px;
    font-size: 24px;
    color: #333;
    top: 0;right: 0;
    text-indent:0%;white-space:normal;overflow:visible;
    border-radius: 20px;
    background-color: #fafafa;
}
.fs-lightbox-caption_toggle {display: none !important;}
.fs-lightbox-position {background: #000;text-align: center;color: #fff;}
.fs-lightbox-control_previous,.fs-lightbox-control_next {
    width: 40px;
    height: 40px;
    background: none;
    color: #111;
    text-indent:100%;white-space:nowrap;overflow:hidden;
}
.fs-lightbox-control_previous {
    left: -60px;
}
.fs-lightbox-control_next {
    right: -60px;
}
.fs-lightbox-control_previous:after,.fs-lightbox-control_next:after {
    content: '';
    position: absolute;
    width: 40px;
    height: 40px;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.fs-lightbox-control_previous:after {
    background-image: url(../image/icon_arrow_left_white.png);
}
.fs-lightbox-control_next:after {
    background-image: url(../image/icon_arrow_right_white.png);
}
.fs-lightbox-meta_content .caption {padding: 15px;}
.fs-lightbox-meta_content .caption span {display: block;margin-bottom: 5px;}
}


/*-----customize-----*/

/*-----content-size-----*/
/*sp*/
@media only screen and (max-width: 767px){
.contentBox,.contentBoxSp,
.contentBoxM,.contentBoxMSp,
.contentBoxL,.contentBoxLSp {margin-left: 2.5% !important;margin-right: 2.5% !important;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.contentBox,.contentBoxPc {width:1240px;margin-left: auto !important;margin-right: auto !important; padding: 0 20px;box-sizing: border-box;}
.contentBoxM,.contentBoxMPc {width:800px;margin-left: auto !important;margin-right: auto !important; padding: 0;box-sizing: border-box;}
.contentBoxL,.contentBoxLPc {width:1024px;margin-left: auto !important;margin-right: auto !important; padding: 0;box-sizing: border-box;}
}

/*-----font-color-----*/
body {color: #333;}
.black {color: #333;}
.white {color: #fff;}
.gray {color: #999;}
.red {color: #d32f2f;}
.orange {color: #f4511e;}
a {color:#2962ff;text-decoration:none;}
a:hover {text-decoration:none;}
@media only screen and (max-width: 767px){
.blackSp {color: #333;}
.whiteSp {color: #fff;}
.redSp {color: #d32f2f;}
.orangeSp {color: #f4511e;}
}
@media only screen and (min-width: 768px), print{
.blackPc {color: #333;}
.whitePc {color: #fff;}
.redPc {color: #d32f2f;}
.orangePc {color: #f4511e;}
}

/*-----background-color-----*/
body {background-color: #fafafa;}
.bgBlack {background-color: #333;}

/*-----font-family-----*/
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 400;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Regular.woff2) format('woff2'),
		url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Regular.woff) format('woff'),
		url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Regular.otf) format('opentype');
    font-display:swap;
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 700;
	src: url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Bold.woff2) format('woff2'),
		url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Bold.woff) format('woff'),
		url(//fonts.gstatic.com/ea/notosansjapanese/v3/NotoSansJP-Bold.otf) format('opentype');
    font-display:swap;
}
html{font-family:Noto Sans Japanese, YuGothic, '游ゴシック',"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;font-display: swap;}
.ming {font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
.qs {font-family: 'Quicksand', sans-serif; font-weight: bold;}
@media all and (-ms-high-contrast:none){
*::-ms-backdrop, html { font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;} /* IE11 */
*::-ms-backdrop, .ming { font-family:"ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ 明朝", serif !important;} /* IE11 */
}

/*-----font-size-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.textXXL,.textXXLSp {font-size: 8vw;line-height: 1.8em;}
.textXL,.textXLSp {font-size: 6.5vw;line-height: 1.8em;}
.textL,.textLSp {font-size: 16px;}
.textM,.textMSp {font-size: 14px;}
.textS,.textSSp {font-size: 12px;}
.textXS,.textXSSp {font-size: 10px;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.textXXL,.textXXLPc {font-size: 36px;line-height: 1.8em;}
.textXL,.textXLPc {font-size: 24px;line-height: 1.8em;}
.textL,.textLPc {font-size: 18px;}
.textM,.textMPc {font-size: 16px;}
.textS,.textSPc {font-size: 14px;}
.textXS,.textXSPc {font-size: 12px;}
}

/*-----margin-top-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.mtXS,.mtXSp {margin-top: 5px !important;}
.mtS,.mtSSp {margin-top: 15px !important;}
.mtM,.mtMSp {margin-top: 20px !important;}
.mtL,.mtLSp {margin-top: 30px !important;}
.mtXL,.mtXLSp {margin-top: 40px !important;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.mtXS,.mtXSPc {margin-top: 10px !important;}
.mtS,.mtSPc {margin-top: 20px !important;}
.mtM,.mtMPc {margin-top: 40px !important;}
.mtL,.mtLPc {margin-top: 60px !important;}
.mtXL,.mtXLPc {margin-top: 80px !important;}
}

/*-----margin-bottom-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.mbXS,.mbXSp {margin-bottom: 5px !important;}
.mbS,.mbSSp {margin-bottom: 15px !important;}
.mbM,.mbMSp {margin-bottom: 20px !important;}
.mbL,.mbLSp {margin-bottom: 30px !important;}
.mbXL,.mbXLSp {margin-bottom: 40px !important;}
.mbXXL,.mbXXLSp {margin-bottom: 100px !important;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.mbXS,.mbXSPc {margin-bottom: 10px !important;}
.mbS,.mbSPc {margin-bottom: 20px !important;}
.mbM,.mbMPc {margin-bottom: 40px !important;}
.mbL,.mbLPc {margin-bottom: 60px !important;}
.mbXL,.mbXLPc {margin-bottom: 80px !important;}
.mbXXL,.mbXXLPc {margin-bottom: 120px !important;}
}

/*-----padding-top-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.ptXS,.ptXSp {padding-top: 5px !important;}
.ptS,.ptSSp {padding-top: 15px !important;}
.ptM,.ptMSp {padding-top: 20px !important;}
.ptL,.ptLSp {padding-top: 30px !important;}
.ptXL,.ptXLSp {padding-top: 40px !important;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.ptXS,.ptXSPc {padding-top: 10px !important;}
.ptS,.ptSPc {padding-top: 20px !important;}
.ptM,.ptMPc {padding-top: 40px !important;}
.ptL,.ptLPc {padding-top: 60px !important;}
.ptXL,.ptXLPc {padding-top: 80px !important;}
}

/*-----padding-bottom-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.pbXS,.pbXSSp {padding-bottom: 5px !important;}
.pbS,.pbSSp {padding-bottom: 15px !important;}
.pbM,.pbMSp {padding-bottom: 20px !important;}
.pbL,.pbLSp {padding-bottom: 30px !important;}
.pbXL,.pbXLSp {padding-bottom: 40px !important;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.pbXS,.pbXSPc {padding-bottom: 10px !important;}
.pbS,.pbSPc {padding-bottom: 20px !important;}
.pbM,.pbMPc {padding-bottom: 40px !important;}
.pbL,.pbLPc {padding-bottom: 60px !important;}
.pbXL,.pbXLPc {padding-bottom: 80px !important;}
}
/*-----paddingBox-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.pdBoxS,.pdBoxSSp {box-sizing: border-box;padding-left: 5px;padding-right: 5px;}
.pdBoxM,.pdBoxMSp {box-sizing: border-box;padding-left: 10px;padding-right: 10px;}
.pdBoxL,.pdBoxLSp {box-sizing: border-box;padding-left: 20px;padding-right: 20px;}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.pdBoxS,.pdBoxSPc {box-sizing: border-box;padding-left: 10px;padding-right: 10px;}
.pdBoxM,.pdBoxMPc {box-sizing: border-box;padding-left: 20px;padding-right: 20px;}
.pdBoxL,.pdBoxLPc {box-sizing: border-box;padding-left: 40px;padding-right: 40px;}
}
/*-----SNS Button-----*/
/*all device*/
@font-face {
    font-family: 'icomoon';
    src:url('../fonts/icomoon.eot?ookgoz');
    src:url('../fonts/icomoon.eot?ookgoz#iefix') format('embedded-opentype'),
        url('../fonts/icomoon.ttf?ookgoz') format('truetype'),
        url('../fonts/icomoon.woff?ookgoz') format('woff'),
        url('../fonts/icomoon.svg?ookgoz#icomoon') format('svg');
        font-weight: normal;
        font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: inherit;
    
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-line:before        {content: "\e90a";}
.icon-feedly:before      {content: "\e900";}
.icon-pocket:before      {content: "\e902";}
.icon-instagram:before   {content: "\ea92";}
.icon-twitter:before     {content: "\ea96";}
.icon-youtube:before     {content: "\ea9d";}
.icon-google:before      {content: "\ea88";}
.icon-google2:before     {content: "\ea89";}
.icon-google-plus:before {content: "\ea8b";}
.icon-google-plus2:before{content: "\ea8c";}
.icon-facebook:before    {content: "\ea90";}
.icon-facebook2:before   {content: "\ea91";}
.icon-linkedin:before    {content: "\eaca";}
.icon-linkedin2:before   {content: "\eac9";}
.icon-pinterest:before   {content: "\ead2";}
.icon-pinterest2:before  {content: "\ead1";}
.icon-hatebu:before      {content: "\e903";}
.icon-hatebu2:before     {content: "\e901";}
.icon-rss:before         {content: "\ea9b";}
.icon-rss2:before        {content: "\ea9c";}

/*ソーシャルリストデザイン3*/
.shareList3 {
    list-style:none;
    display: flex;
    flex-wrap:wrap;
    width:100%;
    margin:-5px 0 -4px -5px;
    padding:0;
}
.shareList3__item {
    height:40px;
    line-height:40px;
    width:40px;
    margin:5px 0 4px 5px;
    text-align:center;
}
.shareList3__link {
    display:block;
    color:#ffffff;
    text-decoration: none;
    border-radius: 5px;
}
.shareList3__link::before{
    font-size:16px;
    display:block;
    transition:.2s;
}
.shareList3__link:hover{opacity: 0.75;}

.shareList3__link.icon-twitter{background:#55acee; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-facebook{background:#3B5998; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-google-plus{background:#dd4b39; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-hatebu{background:#008FDE; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-pocket{background:#EB4654; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-rss{background:#ff9900; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-feedly{background:#6cc655; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-pinterest{background:#cb2027; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-linkedin{background:#0e76a8; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link.icon-line{background:#1dcd00; border-bottom: solid 4px rgba(0,0,0,0.25);}

.shareList3__link:active {
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
    border-bottom: none;
}


/*-----UI-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.menuArea {
    top: 0 !important;
    left: 0;
    width: 100%;
    z-index: 3;
}
.menuBtn {
    position: absolute;
    right: 0px;
    top: 0px;
    width: 60px;
    height: 60px;
    cursor: pointer;
    z-index: 102;
    background-color: #333;
}

/*201911追加 */

.IRArea .menuBtn {
    position: absolute;
    right: 0px;
    top: 60px;
    display:block;
    width: 100%;
    height: 40px;
    cursor: pointer;
    z-index: -1;
    background-color: #333;
}
.IRArea .menuBtn .menuTitle {
    text-align: left;
    position: relative;
    bottom: 0;
    width: 100%;
    color: #fff;
    font-size: 14px;
    line-height: 40px;
    padding-left: 35px;
}
.IRArea .menuBtn .menuTitle:before {
    content: '';
    width: 10px;
    height: 10px;
    background-image: url(../image/icon_down_white.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 20px;
    margin-left: -5px;
    bottom: 14px;
    transition: 0.3s;
}
.IRArea .open .menuTitle:before {
    content: '';
    width: 10px;
    height: 10px;
    background-image: url(../image/icon_up_white.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 20px;
    margin-left: -5px;
    bottom: 14px;
    transition: 0.3s;
}
.IRArea .grobalMenu {
    display: none;
    height: -webkit-calc(100vh - 60px);
    height: calc(100vh - 60px);
    margin-top: 100px;
    overflow-y: scroll;
    background-color: #333;
}
.IRArea .subMenu {
    background-color:#666;
}

/*201911追加ここまで */

/*202010追加 */

.IRChildPage .eir {
    max-width:100% !important;
}
/*202010追加ここまで */

.menuBtn span {
    display: block;
    position: absolute;
    height: 1px;
    width: 30px;
    background: #fff;
    left: 15px;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
.menuBtn span:nth-child(1) {
    top: 14px;
}
.menuBtn span:nth-child(2) {
    top: 22px;
}
.menuBtn span:nth-child(3) {
    top: 30px;
}
.menuBtn.open span:nth-child(1) {
    top: 21px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}
.menuBtn.open span:nth-child(2) {
    width: 0;
    left: 50%;
}
.menuBtn.open span:nth-child(3) {
    top: 21px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
}
.menuBtn .menuTitle {
	position: absolute;
	bottom: 3px;
	text-align: center;
	width: 100%;
	color: #fff;
	font-size: 12px;
}
.grobalMenu {
	display: none;
    height: -webkit-calc(100vh - 60px);
    height: calc(100vh - 60px);
    margin-top: 60px;
    overflow-y: scroll;
    background-color: #333;
}
.grobalMenu .menuBtnClose {
    position: absolute;
    width: 60px;
    height: 60px;
    top: 0;
    right: 0;
    z-index: 104;
}
.mainMenu {
    border-bottom: 1px solid rgba(255,255,255,0.6);
}
.mainMenu a {
    color: #fff;
}
.toggleContents {
    display: none;
}
.mainMenu .topMenu {
    position: relative;
}
.mainMenu .topMenu > a,.mainMenu .topMenu .close {
    display: block;
    border-top: 1px solid rgba(255,255,255,0.6);
    font-weight: bold;
    font-size: 16px;
    padding: 20px 0 20px 10px;
}
.mainMenu .topMenu .close {
    padding-right: 15px;
}
.mainMenu .topMenu .close:before {
    content: '×';
    margin-right: 15px;
}
.mainMenu .topMenu > .toggleBtn {
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    border: 1px solid #fff;
    right: 15px;
    top: 15px;
}
.mainMenu .topMenu > .toggleBtn:before {
    content: '';
    width: 16px;
    height: 16px;
    background-image: url(../image/icon_plus_white.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -8px;
    margin-left: -8px;
}
.mainMenu .topMenu > .toggleBtn:after {
    content: '';
    width: 60px;
    height: 60px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -30px;
}
.mainMenu .topMenu > .toggleBtn.active:before {
    background-image: url(../image/icon_minus_white.png);
}
.mainMenu .topMenu.recruit:before {
    content: '';
    width: 16px;
    height: 16px;
    background-image: url(../image/icon_window_white.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    right: 25px;
    margin-top: -8px;
}
.subMenu {
    background-color: #444;
}
.subMenu > li {
    border-top: 1px solid rgba(255,255,255,0.6);
    position: relative;
}
.subMenu > li > a {
    display: block;
    font-size: 12px;
    padding: 10px 0 10px 10px;
}
.subMenu > li > a[target="_blank"]:after {
    content: '';
    background-image: url(../image/icon_window_white.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    width: 16px;
    height: 16px;
    right: 20px;
    top: 50%;
    margin-top: -8px;
}
.subMenu > li > .toggleBtn {
    position: absolute;
    display: block;
    width: 40px;
    height: 100%;
    border-left: 1px solid rgba(255,255,255,0.6);
    top: 0;
    right: 0;
}
.subMenu > li > .toggleBtn:before {
    content: '';
    width: 16px;
    height: 16px;
    position: absolute;
    background-image: url(../image/icon_down_white.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: 10px;
    left: 50%;
    margin-left: -8px;
}
.subMenu > li > .toggleBtn.active:before {
    background-image: url(../image/icon_up_white.png);
}
.childMenu {
    width: -webkit-calc(100% - 40px);
    width: calc(100% - 40px);
}
.childMenu > li {
    width: 50%;
    float: left;
}
.childMenu {
    border-top: 1px solid rgba(255,255,255,0.6);
}
.childMenu > li > a {
    display: block;
    font-size: 12px;
    border-bottom: 1px solid rgba(255,255,255,0.6);
    box-sizing: border-box;
    padding: 10px;
}
.childMenu > li:nth-child(odd) > a {
    border-right: 1px solid rgba(255,255,255,0.6);
}
.childMenu > li:last-child > a {
    border-bottom: none;
}
.mainMenu .en,.mainMenu .jp {
    position: absolute;
    top: 0;
    right: 60px;
    width: 60px;
    height: 60px;
    background-color: #666;
    text-align: center;
    box-sizing: border-box;
    padding-top: 33px;
}
.mainMenu .en {
    font-family: 'Quicksand', sans-serif;
}
.mainMenu .en a {
    font-weight: bold;
    font-size: 12px;
}
.mainMenu .jp a {
    font-weight: bold;
    font-size: 10px;
}
.mainMenu .en a:before,.mainMenu .jp a:before {
    content: '';
    width: 16px;
    height: 16px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -8px;
    margin-top: -15px;
}
.mainMenu .en a:before {
    background-image: url(../image/icon_en_white.png);
}
.mainMenu .jp a:before {
    background-image: url(../image/icon_jp_on.png);
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.grobalMenu {
    display: block !important;
    float: right;
}
.grobalMenu .mainMenu,.grobalMenu .contactMenu {
    float: left;
}
.grobalMenu .mainMenu > li,.grobalMenu .contactMenu > li {
    float: left;
}
.hoverContent {
    display: none;
    position: absolute;
    background-color: #333;
    width: 400px;
    z-index:99;
}
.hoverContent.service {
    width: 480px;
}
.hoverContent a {
    color: #fff;
}
.grobalMenu .mainMenu .topMenu {
    position: relative;
}
.grobalMenu .mainMenu .topMenu > a {
    font-size: 16px;
    line-height: 100px;
    padding: 0 25px;
    color: #333;
    font-weight: bold;
    display: block;
    position: relative;
    transition: 0.3s;
}
.grobalMenu .mainMenu .topMenu.hover:after {
    content: '';
    width: 10px;
    height: 10px;
    background-image: url(../image/icon_down_black.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 50%;
    margin-left: -5px;
    bottom: 16px;
    transition: 0.3s;
}
.grobalMenu .mainMenu .topMenu:hover > a {
    background-color: #333;
    color: #fff;
    transition: 0.3s;
}
.grobalMenu .mainMenu .topMenu.hover:hover:after {
    background-image: url(../image/icon_down_white.png);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    transform: rotate(180deg);
    transition: 0.3s;
}

/* 201911追加 */

.IRArea {
    width: 100%;
    background: #333;
    clear:both;
    height:60px;
}
.IRArea .grobalMenu {
    display: flex !important;
    float: none;
}
.IRArea .grobalMenu .mainMenu {
    float:none;
    margin: 0 auto;
}
.IRArea .grobalMenu .mainMenu > li {
    float: left;
}
.IRArea .grobalMenu .mainMenu .topMenu > a {
    font-size: 14px;
    line-height: 60px;
    padding: 0 12px;
    color: #fff;
    font-weight: bold;
    display: block;
    position: relative;
    transition: 0.3s;
}
.IRArea .grobalMenu .mainMenu .topMenu.hover:after {
    content: '';
    width: 10px;
    height: 10px;
    background-image: url(../image/icon_down_white.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 50%;
    margin-left: -5px;
    bottom: 8px;
    transition: 0.3s;
}
.IRArea .grobalMenu .mainMenu .topMenu:hover > a {
    background-color: #666;
    color: #fff;
    transition: 0.3s;
}
.IRArea .grobalMenu .mainMenu .topMenu.hover:hover:after {
    background-image: url(../image/icon_down_white.png);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    transform: rotate(180deg);
    transition: 0.3s;
}
.IRArea .grobalMenu .mainMenu .hoverContent {
    display: none;
    position: absolute;
    background-color: #666;
    width: 400px;
    z-index:99;
}
.BoardMemberTitle {
    border-bottom: 1px solid #CCCCCC;
    padding-bottom: 10px;
}
.BoardMemberContent .Img {
    width:200px;
    height:250px;
    z-index:-1;
    float:left;
}
.BoardMemberContent .Img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.BoardMemberContent .Text {
    text-align: left;
    float:left;
    padding: 12px 16px;
    color:#999999;
    width:calc(100% - 232px);
    position:relative;
}
.BoardMemberContent .ttl:after {
    left: 30px;
    bottom: -5px;
    background-color: #CCCCCC;
    content: '';
    position: absolute;
    height: 1px;
    width: 40px;
    margin-left: -15px;
}
.BoardMemberContent .Text .name {
    margin-top:6px;
    line-height:24px;
    color:#333333;
}
.BoardMemberContent .Text .name span {
    margin-left:12px;
}
.BoardMemberContent .Profile {
    text-align: left;
    float:left;
    width: calc(100% - 216px);
    margin: 0;
    padding: 16px 0 0 16px;
}
.BoardMemberContent02Parent {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.BoardMemberContent02 {
    width:100%;
}
.BoardMemberContent02 .Text {
    text-align: left;
    float:left;
    padding: 12px 0px;
    color:#999999;
    width:100%;
    position:relative;
}
.BoardMemberContent02 .ttl:after {
    left: 15px;
    bottom: -5px;
    background-color: #CCCCCC;
    content: '';
    position: absolute;
    height: 1px;
    width: 40px;
    margin-left: -15px;
}
.BoardMemberContent02 .Text .name {
    margin-top:6px;
    line-height:24px;
    color:#333333;
}
.BoardMemberContent02 .Text .name span {
    margin-left:12px;
}
.BoardMemberContent02 .Profile {
    text-align: left;
    float:left;
    width: 100%;
    margin: 0;
    padding: 16px 0 0 0;
}



.BoardMemberContentFour {
    width:22.5%;
    margin-right:3.3333%;
    float:left;
    margin-top:-30px;
    margin-bottom:50px;
    position:relative;
}
.BoardMemberContentFour:nth-child(4n) {
    margin-right:0%;
}
.BoardMemberContentFour .Img {
    width:100%;
    height:260px;
    z-index:-1;
}
.BoardMemberContentFour .Img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.BoardMemberContentFour .Text {
    text-align:center;
    position:absolute;
    bottom: -50px;
    background-color: #ffffff;
    width: 90%;
    margin: 0 5%;
    padding: 12px 0;
    border:1px solid #cccccc;
}
.BoardMemberContentFour .Text .ttl {
    position:relative;
}
.BoardMemberContentFour .Text .ttl:after {
    left: 50%;
    bottom: -5px;
    background-color: #999;
    content: '';
    position: absolute;
    height: 1px;
    width: 30px;
    margin-left: -15px;
}
.BoardMemberContentFour .Text .name {
    margin:15px 10px 0 10px;
}

/*201911追加ここまで */

/*202010追加 */

.IRChildPage .eir {
    max-width:100% !important;
}
/*202010追加ここまで */


.grobalMenu .mainMenu .en a,.grobalMenu .mainMenu .jp a {
    font-size: 14px;
    line-height: 100px;
    padding: 0 45px 0 25px;
    margin-right: 25px;
    color: #333;
    display: block;
    position: relative;
    transition: 0.3s;
}
.grobalMenu .mainMenu .jp a {
    margin-right: 5px;
}
.grobalMenu .mainMenu .en a:before,.grobalMenu .mainMenu .jp a:before {
    content: '';
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 16px;
    height: 16px;
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -8px;
    transition: 0.3s;
}
.grobalMenu .mainMenu .en a:before {
    background-image: url(../image/icon_en_off.png);
}
.grobalMenu .mainMenu .jp a:before {
    background-image: url(../image/icon_jp_off.png);
}
.grobalMenu .mainMenu .en a:hover:before {
    background-image: url(../image/icon_en_on.png);
}
.grobalMenu .mainMenu .jp a:hover:before {
    background-image: url(../image/icon_jp_on.png);
}
.grobalMenu .contactMenu .tel {
    width: 100px;
    height: 100px;
    background-color: #666;
    position: relative;
}
.grobalMenu .contactMenu .mail {
    width: 100px;
    height: 100px;
    background-color: #333;
    position: relative;
}
.grobalMenu .contactMenu .tel:after,.grobalMenu .contactMenu .mail:after {
    content: '';
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -23px;
    margin-left: -12px;
    transition: 0.3s;
}
.grobalMenu .contactMenu .tel:hover:after,.grobalMenu .contactMenu .mail:hover:after {
    -webkit-transform: rotate(30deg);
    -moz-transform: rotate(30deg);
    transform: rotate(30deg);
    transition: 0.3s;
}
.grobalMenu .contactMenu .tel:after {
    background-image: url(../image/icon_phone_white.png);
}
.grobalMenu .contactMenu .mail:after {
    pointer-events: none;
    background-image: url(../image/icon_mail_white.png);
}
.grobalMenu .contactMenu .tel > a,.grobalMenu .contactMenu .mail > a {
    width: 100px;
    height: 100px;
    display: block;
    color: #fff;
    font-size: 14px;
    text-align: center;
    box-sizing: border-box;
    padding-top: 55px;
}
.grobalMenu .subMenu > li > a {
    display: block;
    font-size: 16px;
    font-weight: bold;
    padding: 15px 20px;
    border-bottom: 1px solid rgba(255,255,255,0.4);
    position: relative;
    transition: 0.3s;
}
.grobalMenu .subMenu > li:last-child > a {
    border-bottom: none;
}
.grobalMenu .subMenu > li > a:hover {
    padding-left: 25px;
    transition: 0.3s;
}
.grobalMenu .subMenu > li > a:after {
    content: '';
    background-image: url(../image/icon_arrow_right_white.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    width: 16px;
    height: 16px;
    right: 20px;
    top: 50%;
    margin-top: -8px;
}
.grobalMenu .subMenu > li > a[target="_blank"]:after {
    content: '';
    background-image: url(../image/icon_window_white.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    width: 16px;
    height: 16px;
    right: 20px;
    top: 50%;
    margin-top: -8px;
}
.grobalMenu .subMenu .childMenu {
    border-bottom: 1px solid rgba(255,255,255,0.4);
}
.grobalMenu .subMenu .childMenu > li {
    width: 50%;
    float: left;
}
.grobalMenu .subMenu .childMenu > li > a {
    display: block;
    font-size: 14px;
    padding: 10px 20px;
    border-bottom: 1px solid rgba(255,255,255,0.4);
    transition: 0.3s;
}
.grobalMenu .subMenu .childMenu > li > a:hover {
    padding-left: 25px;
    transition: 0.3s;
}
.grobalMenu .subMenu .childMenu > li:last-child > a {
    border-bottom: none;
}
.grobalMenu .subMenu .childMenu > li:nth-child(odd) > a {
    border-right: 1px solid rgba(255,255,255,0.4);
}
.hoverContent.telDetail {
    background-color: #666;
    right: 0;
}
.hoverContent.telDetail .comment {
    border-bottom: 1px solid rgba(255,255,255,0.4);
    padding: 15px 0;
}
.hoverContent.telDetail .number {
    display: table;
    margin: 30px auto 10px;
    padding: 0 0 0 40px;
    font-size: 38px;
    position: relative;
}
.hoverContent.telDetail .number:before {
    content: '';
    background-image: url(../image/icon_phone_white.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -15px;
}
}

/*-----header-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px) {
.header {
    width: 100%;
    height: 60px;
    position: fixed;
    transition: 0.3s;
    background-color: rgba(255,255,255,0.9);
    z-index: 103;
}
.header .logo {
    float: left;
    padding: 15px 0 0 10px;
}
.header .logo a {
    position:relative;
    display: block;
    width: 177px;
    height: 32px;
    background-image: url(../image/logo_header.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
.header .logo .mothers {
    position: absolute;
    content: "";
    display: block;
    width: 30px;
    height: 33px;
    left: 192px;
    top: 12px;
    background-image: url(../image/logo_mothers.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.header {
    width: 100%;
    min-width: 1240px;
    height: 100px;
    background-color: rgba(255,255,255,0.9);
    position: fixed;
    top: 0;
    left: 0;
    transition: 0.3s;
    z-index: 103;
}
.header .logo {
    float: left;
    padding: 23px 0 0 23px;
}
.header .logo a {
    position:relative;
    display: block;
    width: 309px;
    height: 56px;
    background-image: url(../image/logo_header.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    transition: 0.3s;
}
.header .logo a:hover {
    opacity: 0.7;
    transition: 0.3s;
}
.header .logo .mothers {
    position: absolute;
    content: "";
    display: block;
    width: 40px;
    height: 44px;
    left: 344px;
    top: 31px;
    background-image: url(../image/logo_mothers.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}
}

/*-----footer-----*/
/*all device*/
.footerMenuArea {
    background-color: #333;
    overflow: hidden;
}
.footerMenuArea a {
    color: #fff;
    transition: 0.3s;
}
.footer {
    border-top: 1px solid #333;
}
.topBtn {
    right: 20px;
}


/*2020/6月追加 */
/*all device*/
.topNewsAreaBox {
    padding:4px 0px 12px 0px;
}
.topNewsAreaBox:hover {
    text-decoration:none;
}
.topNewsAreaDate {
    display:inline-block;
    margin-right: 8px;
}
.topNewsAreaCategory {
    background-color: #333333;
    color: #fff;
    padding: 0px 15px;
    margin: 0px;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    line-height: 20px;
    margin-right: 8px;
}
.topNewsAreaCategory {
    display: inline-block;
}
.topNewsAreaTitle {
    text-decoration:underline;
}
.topNewsAreaTitle:hover {
    text-decoration:none;
}
.topNewsAreaIcon {
    display:inline-block;
    width: 14px;
    height: 12px;
    position: relative;
}
.topNewsAreaIcon:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_download_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    /* margin-left: 0px; */
    bottom: 0px;
    transition: 0.3s;
}
.categoryNews {
    display:inline-block;
}
.stickyLink {
    color:#333 !important;
}
.stickyLink:hover {
    color:#fff !important;
}
.stickyPost {
    top: 60px;
    left: 0;
    width: 100%;
    z-index: 3;
    position: absolute;
    transition: 0.3s;
    background-color: rgba(255,255,255,0.7);
    color:#333 !important;
    z-index: 1;
}
.stickyPost:hover {
    background-color: rgba(48,48,48,0.9);
    color:#fff !important;
}
.stickyDate {
    padding:12px 8px 4px 16px;
    display: inline-block;
    font-weight:bold;
}
.stickyTitle {
    padding:10px 8px 10px 16px;
    display: inline-block;
    font-weight:bold;
}
.submitBox {
    content: '';
    display: block;
    width: 0px;
    height: 16px;
    margin: 0 auto;
    margin-top: 16px;
    background-image: url(../image/ajax-loader.gif);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/*201911月追加 */
/*all device*/
.IRFooterArea {
    background-color: #F1F1F1;
    overflow: hidden;
}
.IRFooterArea a {
    color: #333333;
    transition: 0.3s;
}

.IRFooterArea .footerMenuBox .footerMenu .footerMenuList:first-child {
    margin-left:0;
}
.IRFooterArea .footerMenuBox .footerMenu .footerMenuList {
    float: left;
    width: 20%;
}
.IRFooterArea .footerMenuBox .footerMenu .footerMenuList > li > a {
    font-weight:normal;
}
.IRFooterArea .footerMenuBox .footerMenu .footerMenuList > li {
    margin:10px 0;
}
.IRFooterArea .footerMenuBox .footerMenu .footerMenuList > li > ul > li {
    margin:5px 0px 5px 25px;
    list-style:disc;
    position:relative;
}
.IRFooterArea .footerMenuBox .footerMenu .footerMenuList > li > ul > li > a[target="_blank"]:after {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_window_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -3px;
    transition: 0.3s;
}
/*201911月追加ここまで */

/*sp*/
@media only screen and (max-width: 767px){
.footer {
    margin-top: 40px;
}
.topBtn {
    width: 100px;
    height: 50px;
    position: absolute;
    text-align: center;
    overflow: hidden;
}
.topBtn span {
    position: absolute;
    z-index: 1;
    width: 100px;
    left: 0;
    bottom: 0;
}
.topBtn:before {
    content: '';
    border: 50px solid transparent;
    border-bottom: 45px solid #333;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
}
.bannerArea {
    border-top: 1px solid #333;
}
.bannerArea a {
    line-height: 0;
}
.footerMenuList {
    float: left;
}
.footerMenu .fb a {
    position: relative;
    left: 16px;
    top: 0px;
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(../image/icon_fb_white.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.footerMenu .tw a {
    margin-top: 10px;
    position: relative;
    left: 16px;
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url(../image/icon_tw_white.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.footerMenu .IRCard {
    position:absolute;
}
.footerMenu .IRCard a.IRCardL {
    margin-top: 10px;
    position: relative;
    top: -97px;
    left: 232px;
    width: 60px;
    display: inline-block;
}
.footerMenu .IRCard a.IRCardR {
    margin-top: 10px;
    position: relative;
    top: -81px;
    left: 240px;
    width: 40px;
    display: inline-block;
}
.copyYear {
    border-top: 1px solid #fff;
}
.footeContactArea {
    height: 85px;
    position: relative;
}
.footeContactAreaTop {
    height: 85px;
    position: relative;
}
.footerContactBox {
    position: absolute;
    padding: 10px 0;
    width: 100%;
    box-sizing: border-box;
    background-color: #fafafa;
    z-index: 2;
}
.footerContactBox .footerBtn,.contactMenu .footerBtn {
    width: 45%;
    margin: 0 2.5%;
    float: left;
    font-size: 12px;
    text-align: center;
    height: 65px;
    color: #fff;
    font-weight: bold;
    position: relative;
    box-sizing: border-box;
    padding-top: 35px;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.1);
}
.footerContactBox .footerBtn:after,.contactMenu .footerBtn:after {
    content: '';
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 24px;
    height: 24px;
    position: absolute;
    left: 50%;
    margin-left: -12px;
    top: 8px;
}
.footerContactBox .footerBtn.tel,.contactMenu .footerBtn.tel {
    background-color: #666;
    border-bottom: 5px solid #444;
}
.footerContactBox .footerBtn.download,.contactMenu .footerBtn.download {
    background-color: #26a69a;
    border-bottom: 5px solid #00897b;
}
.footerContactBox .footerBtn.mail,.contactMenu .footerBtn.mail {
    background-color: #43a047;
    border-bottom: 5px solid #2e7d32;
}
.footerContactBox .footerBtn.tel:after,.contactMenu .footerBtn.tel:after {
    background-image: url(../image/icon_phone_white.png);
}
.footerContactBox .footerBtn.download:after,.contactMenu .footerBtn.download:after {
    background-image: url(../image/icon_pdf_white.png);
}
.footerContactBox .footerBtn.mail:after,.contactMenu .footerBtn.mail:after {
    background-image: url(../image/icon_mail_white.png);
}
.topNewsAreaBox {
    padding: 8px 0px;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.footer {
    margin-top: 40px;
}
.topBtn {
    width: 100px;
    height: 50px;
    position: absolute;
    text-align: center;
    overflow: hidden;
    z-index:999;
}
.topBtn span {
    position: absolute;
    z-index: 1;
    width: 100px;
    left: 0;
    bottom: 0;
}
.topBtn:before {
    content: '';
    border: 50px solid transparent;
    border-bottom: 45px solid #333;
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
}
.contactArea {
    height:163px;
}
.footeContactArea {
    display: table;
    margin: 0 auto;
    position:fixed;
    background:rgba(250,250,250,0.9);
    bottom:0;
    width:100%;
    padding:16px 16px 8px 16px;
    z-index:998;
}
.footeContactAreaTop {
    display: none;
    margin: 0 auto;
    position:fixed;
    background:rgba(250,250,250,0.9);
    bottom:0;
    width:100%;
    padding:16px 16px 8px 16px;
    z-index:998;
}
.footerContactBox {
    /*position: inherit !important;*/
    position:relative;
    left:calc(50% - 336px);
}
.footerContactBox .tel, .footerContactBox .footerBtn {
    float: left;
}
.footerContactBox .footerBtn {
    margin-left: 40px;
}
.footerContactBox .tel {
    position: relative;
    padding-left: 40px;
    margin-top: 10px;
}
.footerContactBox .tel:before {
    content: '';
    background-image: url(../image/icon_phone_black.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 32px;
    height: 32px;
    position: absolute;
    left: 0;
    top: 0;
}
.footerContactBox .tel span {
    display: block;
}
.footerContactBox .tel .number {
    font-size: 60px;
    margin-bottom: 20px;
}
.footerContactBox .tel .time {
    line-height: 1;
}
.footerBtn {
    width: 300px;
    height: 60px;
    position: relative;
    line-height: 60px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    padding-left: 50px;
    box-sizing: border-box;
}
.footerBtn span {
    font-size: 18px;
    font-weight: bold;
    color: #fff;

}
.footerBtn:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: -10px;
    left: 0;
    z-index: -1;
    box-shadow: 10px 10px 30px rgba(0,0,0,0.2);
    transition: 0.3s;
}
.footerBtn:hover:after {
    box-shadow: 3px 3px 3px rgba(0,0,0,0.2);
    transition: 0.3s;
}
.footerBtn.download {
    background-color: #26a69a;
    transition: 0.3s;
    margin-left:0px !important;
}
.footerBtn.download:hover {
    background-color: #5fc1b8;
    transition: 0.3s;
}
.footerBtn.download:after {
    background-color: #00897b;
}
.footerBtn.mail {
    background-color: #43a047;
    transition: 0.3s;
}
.footerBtn.mail:hover {
    background-color: #4dbf52;
    transition: 0.3s;
}
.footerBtn.mail:after {
    background-color: #2e7d32;
}
.footerBtn:before {
    content: '';
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: absolute;
    left: 20px;
    top: 50%;
    margin-top: -10px;
}
.footerBtn.download:before {
    background-image: url(../image/icon_pdf_white.png);
}
.footerBtn.mail:before {
    background-image: url(../image/icon_mail_white.png);
}
.bannerArea {
    border-top: 1px solid #333;
}
.bannerArea a {
    line-height: 0;
}
.footerMenu {
    margin-top: 5px;
}
.footerMenuArea .logo {
    float: left;
    width: 146px;
    height: 101px;
    padding-top: 40px;
}
.footerMenuArea .logo a {
    width: 146px;
    height: 101px;
    background-image: url(../image/logo_footer.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
}
.footerMenuArea .footerMenuBox {
    float: right;
}
.footerMenuArea .footerMenuBox .footerMenu .footerMenuList:first-child {
    margin-left: 0;
}
.footerMenuArea .footerMenuBox .footerMenu .footerMenuList {
    float: left;
    margin-left: 32px;
}
.footerMenuArea a:hover {
    opacity: 0.7;
    transition: 0.3s;
}
.footerMenuList > li {
    margin-bottom: 5px;
}
.footerMenuList > li > a {
    font-weight: bold;
}
.footerMenuList > li > ul {
    margin-bottom: 5px;
}
.footerMenuList > li > ul.indent {
    margin-left: 15px;
}
.footerMenuList > li > ul > li > ul {
    margin-left: 15px;
    margin-bottom: 10px;
}
.footerMenuList a.fb {
    margin-top: 10px;
    display: block;
    float: left;
    width: 24px;
    height: 24px;
    background-image: url(../image/icon_fb_white.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.footerMenuList a.tw {
    margin-top: 10px;
    margin-left:16px;
    display: block;
    float: left;
    width: 24px;
    height: 24px;
    background-image: url(../image/icon_tw_white.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.copyYear {
    border-top: 1px solid #fff;
}
.contactAreaTitle {
    text-align: center;
}
.contactAreaTitle * {
    display: inline-block;
    margin: 0 10px;
}
.stickyPost {
    top: 100px;
}
.stickyDate {
    padding:12px 8px 4px 32px;
}
}

/*-----layout-----*/
/*all device*/
.bg {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.bg.bgTopVoice {
    background-image: url(../image/bg_top_voice.jpg);
}
.bg.bgInsourcing1 {
    background-image: url(../image/bg_insourcing1.jpg);
}
.bg.bgPhilosophy1 {
    background-image: url(../image/bg_philosophy1.jpg);
}
.bg.bgSkill {
    background-image: url(../image/bg_skill.jpg);
}
.bg.bgInfo1 {
    background-image: url(../image/bg_info1.jpg);
}
.bg.bgInfo2 {
    background-image: url(../image/bg_info2.jpg);
}
.bg.bgInfo3 {
    background-image: url(../image/bg_info3.jpg);
}
.sectionBox.lineBtm {
    border-bottom: 1px solid #ddd;
}
.thumTopVoice {
    background-color: rgba(0,0,0,0.6);
}
.table.normal,.table.case {
    width: 100%;
}
.table.normal th,.table.case th {
    font-weight: bold;
}
.tile {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.tile.reason1 {
    background-image: url(../image/bg_insourcing2.jpg);
}
.tile.reason2 {
    background-image: url(../image/bg_insourcing3.jpg);
}
.tile.reason3 {
    background-image: url(../image/bg_insourcing4.jpg);
}
.tile.reason4 {
    background-image: url(../image/bg_insourcing5.jpg);
}
.tile.reason5 {
    background-image: url(../image/bg_insourcing6.jpg);
}
.tile.reason6 {
    background-image: url(../image/bg_insourcing7.jpg);
}
.tile.price {
    background-image: url(../image/bg_price.jpg);
}
.subContentMenu {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.subContentMenu.insourcing {
    background-image: url(../image/bg_insourcing_menu.jpg);
}
.subContentMenu.company {
    background-image: url(../image/bg_company_menu.jpg);
}
.subContentMenu .subContentList li {
    background-color: rgba(255,255,255,0.85);
    position: relative;
    transition: 0.3s;
}
.subContentMenu .subContentList li a:after {
    content: '';
    background-image: url(../image/icon_arrow_right_black.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    transition: 0.3s;
}
.subContentMenu .subContentList li.active {
    pointer-events: none;
    opacity: 0.4;
}
.subContentMenu .subContentList li span {
    display: block;
    transition: 0.3s;
}
.pointArea .pointTtl.point1:before {
    background-image: url(../image/icon_insourcing01.png);
}
.pointArea .pointTtl.point2:before {
    background-image: url(../image/icon_insourcing02.png);
}
.pointArea .pointTtl.point3:before {
    background-image: url(../image/icon_insourcing03.png);
}
.pointArea .pointTtl.point4:before {
    background-image: url(../image/icon_insourcing04.png);
}
.pointArea .pointTtl.point5:before {
    background-image: url(../image/icon_insourcing05.png);
}
.pointArea .pointTtl.point6:before {
    background-image: url(../image/icon_insourcing06.png);
}
.skillList li {
    position: relative;
    font-weight: bold;
}
.skillList li:before {
    content: '';
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
}
.skillList li.skill1:before {
    background-image: url(../image/icon_skill1.png);
}
.skillList li.skill2:before {
    background-image: url(../image/icon_skill2.png);
}
.skillList li.skill3:before {
    background-image: url(../image/icon_skill3.png);
}
.skillList li.skill1.plus:after {
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    background-image: url(../image/icon_skill_plus.png);
}
.equal {
    position: relative;
}
.equal:before {
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    background-image: url(../image/icon_skill_equal.png);
}
.list {
    margin-left: 20px;
}
.list li {
    position: relative;
}
.list li:last-child {
    margin-bottom: 0;
}
.list li:before {
    content: '■';
    position: absolute;
    left: -20px;
    font-size: 60%;
    color: #ddd;
}
.list.normal li {
    list-style-type: disc;
}
.list.normal li:before {
    content: '';
}
.ulList {
    margin-left: 20px;
}
.ulList li {
    list-style-type: square;
}
.olList {
    margin-left: 20px;
}
.olList li {
    list-style-type: decimal;
}
/*sp*/
@media only screen and (max-width: 767px){
.shadow,.shadowSp {
    box-shadow: 5px 5px 15px rgba(0,0,0,0.1);
    transition: 0.3s;
    display: block;
}
.thumBox {
    margin-top: 30px;
    padding: 10px 10px 0 10px;
}
.topColumnArea {
    border-bottom: 1px solid #ddd;
}
.topColumnArea .catLink {
    z-index: 2;
    font-size: 11px;
    font-weight: bold;
    background-color: #333;
    display: inline-block;
    padding: 1px 8px;
    margin: 10px 0;
}
.titleArea {
    width: 100%;
    height: 240px;
    background-position: center;
    background-size: cover;
    position: relative;
}
.titleArea:after {
    content: '';
    background-image: url(../image/slash.png);
    background-repeat: repeat;
    background-position: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
/*201911月追加 */
.IRtitleArea {
    width: 100%;
    height: 100px;
}
.IRmovieArea {
    border:1px solid #ccc;
    padding:32px 16px;
    margin-bottom: 24px;
}
.IRmovieArea h2 {
    font-size: 22px;
    margin-bottom: 15px;
    position: relative;
    text-align:center;
}
.IRmovieArea p {
    text-align:center;
}
.IRmovieArea img {
    width:100%;
    max-width:100%;
    height:auto;
}
.IRColumnTwo {
    display:inline-block;
    width:100%;
}
.IRColumnTwoChild {
    width:100%;
    margin-right:0%;
    float:none;
    margin-bottom: 20px;
}
.IRColumnTwoChild h3 {
    font-size:24px;
    margin-bottom:25px;
    position: relative;
}
.IRColumnTwoChild h3:after {
  content: '';
  position: absolute;
  top: 50%;
  right:0px;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #333;
  z-index:-1;
}
.IRColumnTwoChild span.Title {
    padding: 0 15px 0 0;
    background-color: #fafafa;
    z-index: 2;
}
.IRColumnTwoChild span.IRNews {
    font-size: 14px;
    padding: 0 20px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
}
.IRColumnTwoChild span.IRNews:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_menu_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 6px;
    transition: 0.3s;
}
.IRColumnTwoChild span.IRDocument {
    font-size: 14px;
    padding: 0 20px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
}
.IRColumnTwoChild span.IRDocument:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_download_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 6px;
    transition: 0.3s;
}
.IRColumnTwoChild .News {
    margin:15px 0 25px 0;
}
.IRColumnTwoChild .News:last-child {
    margin:15px 0 75px 0;
}
.IRColumnTwoChild p.day {
    margin: 0 10px 0 0;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRColumnTwoChild p.category {
    background-color: #333333;
    color: #fff;
    padding: 0px 15px;
    margin: 0px 10px 8px 0;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
}
.IRColumnTwoChild p.title {
    text-decoration: underline;
    display: inline-block;
    font-size: 14px;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRColumnTwoChild p.title:after {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    background-image: url(../image/icon_pdf_red.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -2px;
    transition: 0.3s;
}
.IRColumnTwoChild p.title:hover {
    text-decoration: none;
}

.IRColumnThree {
    display:inline-block;
    width:100%;
}
.IRColumnThreeChild {
    width:100%;
    float:none;
    margin-right:0;
    margin-bottom:20px;
}
.IRColumnThreeChild img {
    width:100%;
    margin-bottom:10px;
    box-shadow: 5px 5px 10px rgba(0,0,0,0.2);
}
.IRColumnThreeChild p:before {
    left: 0px;
    width: 35px;
    height: 2px;
    background: #666666;
}
.IRColumnThreeChild p:after {
    left: 30px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #666666;
    border-right: 2px solid #666666;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.IRColumnThreeChild p a {
    color:#333333;
}
.IRArrow{
    position: relative;
    display: block;
    padding: 0 48px 0 0px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.IRArrow::before,
.IRArrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right:-90%;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.IRChildPage .businessGray {
    background-color:#efefef;
    font-size:20px;
    margin-bottom:20px;
    padding:5px;
}
.IRChildPage .businessThreeColumn {
    width:calc(100% - 10px);
    margin:0%;
    padding:5px;
    float:none;
}
.IRChildPage .businessThreeColumn p.first {
    border: 1px solid #cccccc;
    text-align: center;
    padding: 5px;
    margin-bottom:10px;
}
.IRColumnFour {
    display:inline-block;
    width:100%;
}
.IRColumnFourChild {
    width:100%;
    margin-right:0%;
    float:none;
    margin-bottom:20px;
}
.IRColumnFourChild:nth-child(4n) {
    margin-right:0%;
}
.IRColumnFourChild h3 {
    font-size:24px;
    margin:40px 0 20px 0;
    position: relative;
}
.IRColumnFourChild h3:after {
  content: '';
  position: absolute;
  top: 50%;
  right:0px;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #333;
  z-index:-1;
}
.IRColumnFourChild span.Title {
    padding: 0 15px 0 0;
    background-color: #fafafa;
    z-index: 2;
}
.IRColumnFourChild span.IRNews {
    font-size: 14px;
    padding: 0 25px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
    position: relative;
}
.IRColumnFourChild span.IRNews:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_menu_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 6px;
    transition: 0.3s;
}
.IRColumnFourChild ul {
    margin:0;
    padding:0;
}
.IRColumnFourChild li {
    list-style:disc;
    margin: 5px 0 5px 20px;
    text-decoration: underline;
    font-size: 14px;
    color: #333333;
}
.IRColumnFourChild a {
    position:relative;
}
.IRColumnFourChild a[target="_blank"] li:after {
    content: '';
    width: 16px;
    height: 16px;
    background-image: url(../image/icon_window_gray.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    top: 3px;
    right: -10px;
    margin-top: -8px;
    display: inline-block;
}
.IRColumnFourChild .News {
    margin:15px 0;
}
.IRColumnFourChild p.day {
    margin: 0 10px 0 0;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRColumnFourChild p.title {
    text-decoration: underline;
    display: inline-block;
    font-size: 14px;
    color: #333333;
}
.IRColumnFourChild p.title:hover {
    text-decoration: none;
}
.IRColumnFourChild .News > a[target="_blank"] > p.title:after {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    background-image: url(../image/icon_window_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -2px;
    transition: 0.3s;
}
.IRColumnFourChild .News > a[href $='.jpg'] > p.title:after,
.IRColumnFourChild .News > a[href $='.JPG'] > p.title:after,
.IRColumnFourChild .News > a[href $='.jpeg'] > p.title:after,
.IRColumnFourChild .News > a[href $='.JPEG'] > p.title:after,
.IRColumnFourChild .News > a[href $='.doc'] > p.title:after,
.IRColumnFourChild .News > a[href $='.DOC'] > p.title:after,
.IRColumnFourChild .News > a[href $='.xls'] > p.title:after,
.IRColumnFourChild .News > a[href $='.xml'] > p.title:after {
    background-image: url(../image/icon_download_gray.svg);
}
.IRColumnFourChild .News > a[href $='.pdf'] > p.title:after {
    background-image: url(../image/icon_pdf_red.svg);
}
.IRLinkBox {
    display: inline-block;
    position:relative;
    border: 1px solid #666666;
    padding: 15px 0 15px 15%;
    width: 85%;
    color:#333;
}
.IRLinkBox::before, .IRLinkBox::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: -65%;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.IRLinkBox:before {
    left: 0px;
    width: 35px;
    height: 2px;
    background: #666666;
}
.IRLinkBox:after {
    left: 30px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #666666;
    border-right: 2px solid #666666;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.IRLibrary:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_library_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRCalendar:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_library_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRFaq:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_faq_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRDisclaimer:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_faq_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRStockprice:after {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_window_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRChildPage h3 {
    font-size:24px;
    margin:40px 0;
    position: relative;
}
.IRChildPage h3:after {
  content: '';
  position: absolute;
  top: 50%;
  right:0px;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #333;
  z-index:-1;
}
.IRChildPage span.Title {
    padding: 0 15px 0 0;
    background-color: #fafafa;
    z-index: 2;
}
.IRChildPage span.IRDocument {
    font-size: 14px;
    padding: 0 20px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
}
.IRChildPage span.IRDocument:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_download_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 5px;
    transition: 0.3s;
}
.IRChildPage .News {
    margin:15px 0;
}
.IRChildPage p.day {
    margin: 0 10px 0 0;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRChildPage p.category {
    background-color: #333333;
    color: #fff;
    padding: 0px 15px;
    margin: 0px 10px 8px 0;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
}
.IRChildPage p.title {
    text-decoration: underline;
    display: inline-block;
    font-size: 14px;
    color: #333333;
}
.IRChildPage .News > a[target="_blank"] > p.title:after {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    background-image: url(../image/icon_window_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -2px;
    transition: 0.3s;
}
.IRChildPage .News > a[href $='.pdf'] > p.title:after {
    background-image: url(../image/icon_pdf_red.svg);
}

.IRChildPage p.size {
    margin: 0;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRChildPage p.attention {
    color: #707070;
    font-size:12px;
    letter-spacing: 0.0em;
    clear: both;
}
.IRChildPage p.Question {
    position:relative;
}
.IRChildPage p.Question:after {
    width:40px;
    height:1px;
    content: '';
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: -15px;
    transition: 0.3s;
    background-color: #333;
}
.IRChildPage p.Answer {
    margin:40px 0;
}
.IRChildPage p.ForTop {
    text-align: right;
    text-decoration: underline;
    margin-bottom:20px;
    color:#333;
}
.IRChildPage p.ForTop:hover {
    text-decoration:none;
}
.IRChildPage ol {
    margin-top:-20px;
}
.IRChildPage ol li {
    list-style:none;
    position:relative;
    padding-left:20px;
    margin-bottom:10px;
    color:#333;
}
.IRChildPage ol li:after{
    content: '';
    display: block;
    position: absolute;
    background: #333;
    width: 6px;
    height: 6px;
    top: 9px;
    left: 5px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
}
.IRChildPage table {
    border-top: 1px solid #ccc;
    width:100%;
}
.IRChildPage table tr {
    max-width: calc(100% - 10px);
}
.IRChildPage table th {
    width: calc(100% - 10px);
    display: block;
}
.IRChildPage  table td {
    width: calc(100% - 10px);
    display: block;
}
.IRChildPage table th,.IRChildPage table td {
    border-bottom: 1px solid #ccc;
    padding: 20px 5px;
}

.IRChildPage .YearSelect {
    display:inline-block;
    position:relative;
    margin-bottom: 20px;
}
.IRChildPage .YearSelect select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #707070;
    border-radius: 0;
    padding: 7px 15px;
    width: 144px;
    font-size: 16px;

}
.IRChildPage .YearSelect::before,
.IRChildPage .YearSelect::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.IRChildPage .YearSelect:after {
    right: 14px;
    top:-5px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.IRChildPage .IRColumn {
    width: 100%;
    float: none;
    margin-left: 0px;
}

.IRChildPage .IRColumn input[type="radio"],
.IRChildPage .IRColumn input[type="checkbox"] {
    display: none;
}
.IRChildPage .IRColumn input:checked + .tabitem {
    border-bottom: 3px solid #333333;
    box-sizing: border-box;
}
.IRChildPage .IRColumn .tabitem {
    width: calc(100%/2);
    height: 40px;
    border-bottom: 1px solid #CCCCCC;
    box-sizing: border-box;
    line-height: 40px;
    text-align: center;
    color: #333;
    float: left;
    font-weight: bold;
    transition: all 0.2s ease;
}
.IRChildPage .IRColumn .tabcontent {
    display: none;
    padding: 40px 0 0;
    clear: both;
    overflow: hidden;
}
#news:checked ~ #newscontent,
#settlement:checked ~ #settlementcontent,
#materials:checked ~ #materialscontent,
#infomation:checked ~ #infomationcontent
 {
    display: block;
    width: 100%;
    margin-left: 0px;
}
.BoardMemberTitle {
    border-bottom: 1px solid #CCCCCC;
    padding-bottom: 10px;
}
.BoardMemberContent .Img {
    width:200px;
    height:250px;
    margin:0 auto;
    z-index:-1;
}
.BoardMemberContent .Img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.BoardMemberContent .Text {
    text-align: left;
    padding: 12px 16px;
    color:#999999;
    width:calc(100% - 32px);
    position:relative;
}
.BoardMemberContent .ttl:after {
    left: 30px;
    bottom: -5px;
    background-color: #CCCCCC;
    content: '';
    position: absolute;
    height: 1px;
    width: 40px;
    margin-left: -15px;
}
.BoardMemberContent .Text .name {
    margin-top:6px;
    line-height:24px;
    color:#333333;
    font-size: 24px;
}
.BoardMemberContent .Text .name span {
    margin-left:12px;
}
.BoardMemberContent .Profile {
    text-align: left;
    width: calc(100% - 32px);
    margin: 0;
    padding: 16px;
}
.BoardMemberContent02Parent {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.BoardMemberContent02 {
    width:calc(100% - 32px);
    padding:16px;
}
.BoardMemberContent02 .Text {
    text-align: left;
    float:left;
    padding: 12px 0px;
    color:#999999;
    width:100%;
    position:relative;
}
.BoardMemberContent02 .ttl:after {
    left: 15px;
    bottom: -5px;
    background-color: #CCCCCC;
    content: '';
    position: absolute;
    height: 1px;
    width: 40px;
    margin-left: -15px;
}
.BoardMemberContent02 .Text .name {
    margin-top:6px;
    line-height:24px;
    color:#333333;
}
.BoardMemberContent02 .Text .name span {
    margin-left:12px;
}
.BoardMemberContent02 .Profile {
    text-align: left;
    float:left;
    width: 100%;
    margin: 0;
    padding: 16px 0 0 0;
}
.BoardMemberContentFour {
    width:48%;
    margin-right:4%;
    float:left;
    margin-top:0px;
    margin-bottom:50px;
    position:relative;
}
.BoardMemberContentFour:nth-child(even) {
    margin-right:0%;
}
.BoardMemberContentFour .Img {
    width:100%;
    height:300px;
    z-index:-1;
}
.BoardMemberContentFour .Img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.BoardMemberContentFour .Text {
    text-align:center;
    position:absolute;
    bottom: -50px;
    background-color: #ffffff;
    width: 90%;
    margin: 0 5%;
    padding: 15px 0;
    border: 1px solid #cccccc;
}
.BoardMemberContentFour .Text .ttl {
    position:relative;
}
.BoardMemberContentFour .Text .ttl:after {
    left: 50%;
    bottom: -5px;
    background-color: #999;
    content: '';
    position: absolute;
    height: 1px;
    width: 30px;
    margin-left: -15px;
}
.BoardMemberContentFour .Text .name {
    margin-top:15px;
}
/*201911月追加ここまで */

.titleArea .titleBox {
    box-sizing: border-box;
    padding-top: 60px;
    height: 240px;
    display: table;
    width: 100%;
}
.titleArea .titleBox .centering {
    display: table-cell;
    vertical-align: middle;
    z-index: 1;
    position: relative;
}
.tileArea a {
    color: #333;
}
.tileArea .tileBox .tile {
    position: relative;
    border-bottom: 1px solid #ddd;
}
.tileArea .tileBox .tile > a {
    display: block;
    box-sizing: border-box;
    width: 100%;
    position: relative;
}
.tileArea .tileBox .tile > a .img {
    left: 0;
    top: 0;
    overflow: hidden;
    width: 100%;
    height: 180px;
}
.tileArea .tileBox .tile > a .img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    transition: 0.3s;
}
.tileArea .detailLink {
    display: block;
    width: 190px;
    height: 50px;
    border: 1px solid #333;
    line-height: 48px;
    box-sizing: border-box;
    padding-left: 15px;
    font-weight: bold;
    position: relative;
    margin: 20px 0 0 auto;
}
.tileArea .detailLink:after {
    content: '';
    width: 20px;
    height: 20px;
    background-image: url(../image/icon_arrow_right_black.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -10px;
    transition: 0.3s;
}
.table.normal th {
    display: block;
    margin-bottom: 5px;
}
.table.normal td {
    display: block;
    margin-bottom: 20px;
}
.table.normal tr:last-child td {
    margin-bottom: 0;
}
.table.normal .inner {
    width: 100%;
}
.table.normal .inner th {
    display: table-cell;
    width: 45%;
    padding-bottom: 10px;
    font-weight: normal;
}
.table.normal .inner td {
    display: table-cell;
    width: 55%;
    padding-bottom: 10px;
}
.table.case th {
    display: block;
    margin-bottom: 5px;
    border-top: 1px solid #ddd;
    padding-top: 10px;
}
.table.case td {
    display: block;
    padding-bottom: 10px;
}
.table.case tr:last-child td {
    border-bottom: 1px solid #ddd;
}
.splitArea .img {
    width: 100%;
    height: 200px;
}
.splitArea .img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.pointArea .pointTtl {
    font-size: 16px;
    font-weight: bold;
    padding-left: 30px;
    margin-bottom: 15px;
    position: relative;
}
.pointArea .pointTtl span {
    font-size: 12px;
    display: block;
}
.pointArea .pointTtl:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: 50%;
    left: 0;
    margin-top: -10px;
}
.subContentMenu .subContentList li {
    margin-bottom: 10px;
    box-sizing: border-box;
}
.subContentMenu .subContentList li a {
    display: block;
    padding: 10px;
}
.subContentMenu .subContentList li a:after {
    right: 10px;
    top: 15px;
    width: 12px;
    height: 12px;
}
.subContentMenu .subContentList li span:first-child {
    font-size: 11px;
    width: 80%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.subContentMenu .subContentList li span:last-child {
    color: #333;
    font-size: 10px;
    font-weight: bold;
    width: 80%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.irList {
    border-top: 1px solid #ddd;
}
.irList dt {
    font-weight: bold;
    padding-top: 10px;
}
.irList dd {
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
    margin-top: 5px;
}
.skillList li {
    font-size: 11px;
    padding-top: 30px;
}
.skillList li:before {
    width: 20px;
    height: 20px;
    top: 0;
    left: 50%;
    margin-left: -10px;
}
.skillList li.plus:after {
    width: 20px;
    height: 20px;
    top: 4px;
    right: -18px;
}
.equal {
    padding-top: 50px;
    font-size: 18px;
    line-height: 1em;
    font-weight: bold;
}
.equal:before {
    width: 30px;
    height: 30px;
    top: 0;
    left: 50%;
    margin-left: -15px;
}
.list li {
    margin-bottom: 10px;
}
.olList li {
    margin-bottom: 10px;
}
.priceList li {
    text-align: center;
    border-top: 1px solid #ddd;
    box-sizing: border-box;
    padding: 10px 0;
}
.priceList li:last-child {
    border-bottom: 1px solid #ddd;
}
.priceList li .lv {
    float: left;
    font-size: 20px;
    font-weight: bold;
}
.priceList li .lv span {
    font-size: 14px;
    margin-right: 5px;
}
.priceList li .price {
    float: right;
    font-size: 20px;
    font-weight: bold;
}
.priceList li .price:after {
    content: '/h〜';
    font-size: 14px;
    margin-left: 5px;
}
.commentList > li {
    border-bottom: 1px solid #ddd;
    padding-bottom: 40px;
    margin-bottom: 40px;
}
.commentList .logo {
    height: 180px;
}
.commentList .logo img {
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    display: table;
    margin: 0 auto;
}
.flowList .flowItem {
    margin-bottom: 40px;
}
.flowList .flowItem .arrow {
    position: absolute;
    left: 0;
    top: 0;
    background-color: #eeeeee;
    width: 60px;
    height: 100%;
    text-align: center;
    box-sizing: border-box;
    font-size: 12px;
    padding-top: 5px;
}
.flowList .flowItem .arrow:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -19.5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 30px 0 30px;
    border-color: #eeeeee transparent transparent transparent;
}
.flowList .flowItem:last-child .arrow:after {
    border: none;
}
.flowList .flowItem .flowContent .img {
    margin-left: 70px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: calc(100% - 70px);
    height: 160px;
}
.flowList .flowItem .flowContent .text {
    padding-left: 70px;
    width: calc(100% - 70px);
}
.staffItem {
    margin-bottom: 5%;
}
.staffItem a {
    display: block;
}
.staffItem a .hoverImg {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}
.staffSelectBox select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 120px;
    height: 40px;
    border-radius: 0;
    border: 1px solid #ddd;
    font-size: 11px;
    line-height: 40px;
    padding: 0 30px 0 10px;
    box-sizing: border-box;
}
.staffSelectBox .select {
    position: relative;
    margin: 0 5px 0 0;
}
.staffSelectBox .select:after {
    content: '';
    position: absolute;
    width: 12px;
    height: 12px;
    right: 10px;
    top: 50%;
    margin-top: -6px;
    background-image: url(../image/icon_down_black.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.staffSelectBox input[type=submit] {
    width: 40px;
    height: 40px;
    border-radius: 0;
    border: 1px solid #ddd;
    background-color: #fafafa;
    background-image: url(../image/icon_search_black.png);
    background-size: 20px 20px;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0px;
}
.map iframe {
    width: 100%;
    height: 250px;
}
.staffImgList li {
    float: left;
    width: 50%;
    line-height: 0;
}
.staffImgList li img {
    box-sizing: border-box;
    padding: 2px;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.shadow,.shadowPc {
    box-shadow: 10px 10px 30px rgba(0,0,0,0.2);
    transition: 0.3s;
    display: block;
}
.shadow:hover,.shadowPc:hover {
    box-shadow: 4px 4px 4px rgba(0,0,0,0.2);
    transition: 0.3s;
}
.readMore {
    position: absolute;
    width: 230px;
    height: 50px;
    line-height: 50px;
    font-weight: bold;
    font-size: 14px;
    top: 50%;
    left: 50%;
    margin-top: -25px;
    margin-left: -115px;
    opacity: 0;
    transition: 0.3s;
    box-sizing: border-box;
    border: 1px solid rgba(255,255,255,0.8);
    z-index: 2;
    box-sizing: border-box;
    padding-left: 15px;
}
.readMore:after {
    content: '';
    position: absolute;
    background-image: url(../image/icon_arrow_right_white.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 16px;
    height: 16px;
    top: 50%;
    right: 15px;
    margin-top: -8px;
}
a:hover .readMore {
    opacity: 1;
    transition: 0.3s;
}
.thumBox .img {
    overflow: hidden;
    line-height: 0;
    position: relative;
}
.thumBox .img:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0;
    transition: 0.3s;
    z-index: 1;
}
.thumBox .img img {
    moz-transition: -moz-transform 0.3s linear;
    -webkit-transition: -webkit-transform 0.3s linear;
    -o-transition: -o-transform 0.3s linear;
    -ms-transition: -ms-transform 0.3s linear;
    transition: transform 0.3s linear;
}
.thumBox:hover .img:before {
    opacity: 0.4;
    transition: 0.3s;
}
.thumBox:hover .img img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}
.thumColumn .readMore {
    margin-top: -65px;
}
.thumColumn .titleBox {
    position: absolute;
    bottom: 0;
    z-index: 2;
}
.thumColumn .title {
    background-color: rgba(0,0,0,0.6);
}
.thumColumn .date {
    text-shadow: 2px 2px 2px rgba(0,0,0,0.6);
}
.topColumnArea .catLink {
    position: absolute;
    z-index: 2;
    font-size: 13px;
    font-weight: bold;
    background-color: #333;
    display: inline-block;
    padding: 5px 15px;
    top: -15px;
    left: 10px;
}
.titleArea {
    width: 100%;
    height: 410px;
    background-position: center;
    background-size: cover;
    position: relative;
}
.titleArea:after {
    content: '';
    background-image: url(../image/slash.png);
    background-repeat: repeat;
    background-position: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
/*201911月追加 */
#IRtopBtn {
    margin-top:-10px;
}
.IRtitleArea {
    width: 100%;
    height: 160px;
}
.IRmovieArea {
    border:1px solid #ccc;
    padding:32px 16px;
}
.IRmovieArea h2 {
    font-size: 24px;
    margin-bottom: 30px;
    position: relative;
    text-align:center;
}
.IRmovieArea h2:before {
    content: '';
    position: absolute;
    top: 50%;
    left: calc(50% - 260px);
    display: inline-block;
    width: 7%;
    height: 1px;
    background-color: #333;
    z-index: -1;
    }
.IRmovieArea h2:after {
    content: '';
    position: absolute;
    top: 50%;
    right: calc(50% - 260px);
    display: inline-block;
    width: 7%;
    height: 1px;
    background-color: #333;
    z-index: -1;
}
.IRmovieArea p {
    text-align:center;
}
.IRmovieArea img {
    width:50%;
    height:auto;
}
.IRmovieArea img:hover {
    opacity:0.7;
    transition: 0.3s;
}
.IRColumnTwo {
    display:inline-block;
    width:100%;
}
.IRColumnTwoChild {
    width:46.6%;
    margin-right:6.8%;
    float:left;
}
.IRColumnTwoChild:nth-child(even) {
    margin-right:0%;
}
.IRColumnTwoChild h3 {
    font-size:24px;
    margin-bottom:30px;
    position: relative;
}
.IRColumnTwoChild h3:after {
  content: '';
  position: absolute;
  top: 50%;
  right:0px;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #333;
  z-index:-1;
}
.IRColumnTwoChild span.Title {
    padding: 0 15px 0 0;
    background-color: #fafafa;
    z-index: 2;
}
.IRColumnTwoChild span.IRNews {
    font-size: 14px;
    padding: 0 20px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
}
.IRColumnTwoChild span.IRNews:hover {
    margin-right:-5px;
    transition: 0.3s;
}
.IRColumnTwoChild span.IRNews:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_menu_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 9px;
    transition: 0.3s;
}
.IRColumnTwoChild span.IRDocument {
    font-size: 14px;
    padding: 0 20px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
}
.IRColumnTwoChild span.IRDocument:hover {
    margin-right:-5px;
    transition: 0.3s;
}
.IRColumnTwoChild span.IRDocument:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_download_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 9px;
    transition: 0.3s;
}
.IRColumnTwoChild .News {
    margin:15px 0;
}
.IRColumnTwoChild p.day {
    margin: 0 10px 0 0;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRColumnTwoChild p.category {
    background-color: #333333;
    color: #fff;
    padding: 0px 15px;
    margin: 0px 10px 0 0;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
}
.IRColumnTwoChild p.title {
    text-decoration: underline;
    display: inline-block;
    font-size: 14px;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRColumnTwoChild p.title:after {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    background-image: url(../image/icon_pdf_red.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -2px;
    transition: 0.3s;
}
.IRColumnTwoChild p.title:hover {
    text-decoration: none;
}

.IRColumnThree {
    display:inline-block;
    width:100%;
}
.IRColumnThreeChild {
    width:30.8%;
    float:left;
    margin-right:3.8%;
    margin-top:40px;
}
.IRColumnThreeChild:nth-child(3n) {
    margin-right:0;
}
.IRColumnThreeChild img {
    width:100%;
    max-height:140px;
    object-fit:cover;
    margin-bottom:10px;
    box-shadow: 10px 10px 15px rgba(0,0,0,0.2);
}
.IRColumnThreeChild img:hover {
    opacity:0.7;
    transition: 0.3s;
}
.IRColumnThreeChild p:before {
    left: 0px;
    width: 35px;
    height: 2px;
    background: #666666;
}
.IRColumnThreeChild p:after {
    left: 30px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #666666;
    border-right: 2px solid #666666;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.IRColumnThreeChild p a {
    color:#333333;
}
.IRArrow {
    position: relative;
    display: block;
    padding: 0 48px 0 0px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.IRArrow::before,
.IRArrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right:-88%;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.IRArrow:hover {
    padding-right:42px;
    transition: 0.3s;
}
.IRChildPage .businessGray {
    background-color:#efefef;
    font-size:20px;
    margin-bottom:20px;
    padding:5px;
}
.IRChildPage .businessThreeColumn {
    width:calc(31% - 10px);
    margin-right:3.5%;
    padding:5px;
    float:left;
}
.IRChildPage .businessThreeColumn:nth-child(3n) {
    margin-right:0;
}
.IRChildPage .businessThreeColumn p.first {
    border: 1px solid #cccccc;
    text-align: center;
    padding: 5px;
    margin-bottom:10px;
}
.IRColumnFour {
    display:inline-block;
    width:100%;
}
.IRColumnFourChild {
    width:21.25%;
    margin-right:5%;
    float:left;
}
.IRColumnFourChild:nth-child(4n) {
    margin-right:0%;
}
.IRColumnFourChild h3 {
    font-size:24px;
    margin:40px 0 20px 0;
    position: relative;
}
.IRColumnFourChild h3:after {
  content: '';
  position: absolute;
  top: 50%;
  right:0px;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #333;
  z-index:-1;
}
.IRColumnFourChild span.Title {
    padding: 0 15px 0 0;
    background-color: #fafafa;
    z-index: 2;
}
.IRColumnFourChild span.IRNews {
    font-size: 14px;
    padding: 0 25px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
}
.IRColumnFourChild span.IRNews:hover {
    margin-right:-5px;
    transition: 0.3s;
}
.IRColumnFourChild span.IRNews:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_menu_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 9px;
    transition: 0.3s;
}
.IRColumnFourChild ul {
    margin:0;
    padding:0;
}
.IRColumnFourChild li {
    list-style:disc;
    margin: 5px 0 5px 20px;
    text-decoration: underline;
    font-size: 14px;
    color: #333333;
}
.IRColumnFourChild li:hover {
    text-decoration: none;
}
.IRColumnFourChild a[target="_blank"] li:after {
    content: '';
    width: 16px;
    height: 16px;
    background-image: url(../image/icon_window_gray.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    top: 3px;
    right: -10px;
    margin-top: -8px;
    display: inline-block;
}
.IRColumnFourChild .News {
    margin:15px 0;
}
.IRColumnFourChild p.day {
    margin: 0 10px 0 0;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRColumnFourChild p.title {
    text-decoration: underline;
    display: inline-block;
    font-size: 14px;
    color: #333333;
}
.IRColumnFourChild p.title:hover {
    text-decoration: none;
}
.IRColumnFourChild .News > a[target="_blank"] > p.title:after {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    background-image: url(../image/icon_window_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -2px;
    transition: 0.3s;
}
.IRColumnFourChild .News > a[href $='.jpg'] > p.title:after,
.IRColumnFourChild .News > a[href $='.JPG'] > p.title:after,
.IRColumnFourChild .News > a[href $='.jpeg'] > p.title:after,
.IRColumnFourChild .News > a[href $='.JPEG'] > p.title:after,
.IRColumnFourChild .News > a[href $='.doc'] > p.title:after,
.IRColumnFourChild .News > a[href $='.DOC'] > p.title:after,
.IRColumnFourChild .News > a[href $='.xls'] > p.title:after,
.IRColumnFourChild .News > a[href $='.xml'] > p.title:after {
    background-image: url(../image/icon_download_gray.svg);
}
.IRColumnFourChild .News > a[href $='.pdf'] > p.title:after {
    background-image: url(../image/icon_pdf_red.svg);
}
.IRLinkBox {
    display: inline-block;
    position:relative;
    border: 1px solid #666666;
    padding: 15px 0 15px 15%;
    width: 85%;
    color:#333;
}
.IRLinkBox:hover {
    background-color:#333;
    border:1px solid #333;
    color:#ffffff;
    transition: 0.3s;
}
.IRLinkBox::before, .IRLinkBox::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: -65%;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.IRLinkBox:before {
    left: 0px;
    width: 35px;
    height: 2px;
    background: #666666;
}
.IRLinkBox:after {
    left: 30px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #666666;
    border-right: 2px solid #666666;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.IRLibrary:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_library_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRCalendar:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_library_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRFaq:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_faq_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRDisclaimer:before {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_faq_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-right: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRStockprice:after {
    content: '';
    width: 18px;
    height: 18px;
    display: inline-block;
    background-image: url(../image/icon_window_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -3px;
    transition: 0.3s;
}
.IRChildPage h3 {
    font-size:24px;
    margin:40px 0;
    position: relative;
}
.IRChildPage h3:after {
  content: '';
  position: absolute;
  top: 50%;
  right:0px;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #333;
  z-index:-1;
}
.IRChildPage span.Title {
    padding: 0 15px 0 0;
    background-color: #fafafa;
    z-index: 2;
}

.IRChildPage span.IRDocument {
    font-size: 14px;
    padding: 0 20px 0 10px;
    float: right;
    display: block;
    color: #333;
    background-color: #fafafa;
    z-index: 1;
}
.IRChildPage span.IRDocument:after {
    content: '';
    width: 14px;
    height: 12px;
    background-image: url(../image/icon_download_gray.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    right: 0;
    margin-left: 0px;
    bottom: 9px;
    transition: 0.3s;
}
.IRChildPage .News {
    margin:15px 0;
}
.IRChildPage p.day {
    margin: 0 10px 0 0;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRChildPage p.category {
    background-color: #333333;
    color: #fff;
    padding: 0px 15px;
    margin: 0px 10px 8px 0;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
}
.IRChildPage p.title {
    text-decoration: underline;
    display: inline-block;
    font-size: 14px;
    color: #333333;
}
.IRChildPage p.title:hover {
    text-decoration: none;
}
.IRChildPage .News > a[target="_blank"] > p.title:after {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    background-image: url(../image/icon_window_gray.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    right: 0;
    margin-left: 8px;
    bottom: -2px;
    transition: 0.3s;
}
.IRChildPage .News > a[href $='.jpg'] > p.title:after,
.IRChildPage .News > a[href $='.JPG'] > p.title:after,
.IRChildPage .News > a[href $='.jpeg'] > p.title:after,
.IRChildPage .News > a[href $='.JPEG'] > p.title:after,
.IRChildPage .News > a[href $='.doc'] > p.title:after,
.IRChildPage .News > a[href $='.DOC'] > p.title:after,
.IRChildPage .News > a[href $='.xls'] > p.title:after,
.IRChildPage .News > a[href $='.xml'] > p.title:after {
    background-image: url(../image/icon_download_gray.svg);
}

.IRChildPage .News > a[href $='.pdf'] > p.title:after {
    background-image: url(../image/icon_pdf_red.svg);
}
.IRChildPage p.size {
    margin: 0 0 0 15px;
    display: inline-block;
    color: #333333;
    letter-spacing: 0.0em;
}
.IRChildPage p.attention {
    color: #707070;
    font-size:12px;
    letter-spacing: 0.0em;
    clear: both;
}
.IRChildPage p.Question {
    position:relative;
}
.IRChildPage p.Question:after {
    width:40px;
    height:1px;
    content: '';
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: -15px;
    transition: 0.3s;
    background-color: #333;
}
.IRChildPage p.Answer {
    margin:40px 0;
}
.IRChildPage p.ForTop {
    text-align: right;
    text-decoration: underline;
    margin-bottom:20px;
    color:#333;
}
.IRChildPage p.ForTop:hover {
    text-decoration:none;
}
.IRChildPage ol {
    margin-top:-20px;
}
.IRChildPage ol li {
    list-style:none;
    position:relative;
    padding-left:20px;
    margin-bottom:10px;
    color:#333;
}
.IRChildPage ol li:after{
    content: '';
    display: block;
    position: absolute;
    background: #333;
    width: 6px;
    height: 6px;
    top: 12px;
    left: 5px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
}
.IRChildPage table {
    border-top: 1px solid #ccc;
    width:100%;
}
.IRChildPage table th {
    width: 25%;
}
.IRChildPage  table td {
    width: 75%;
}
.IRChildPage table th,.IRChildPage table td {
    border-bottom: 1px solid #ccc;
    padding: 30px 0;
}
.IRChildPage .YearSelect {
    display:inline-block;
    position:relative;
}
.IRChildPage .YearSelect select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #707070;
    border-radius: 0;
    padding: 7px 15px;
    width: 144px;
    font-size: 16px;

}
.IRChildPage .YearSelect::before,
.IRChildPage .YearSelect::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.IRChildPage .YearSelect:after {
    right: 14px;
    top:-5px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.IRChildPage .IRColumn {
    width: calc(100% - 164px);
    float: right;
    margin-left: 20px;
}

.IRChildPage .IRColumn input[type="radio"],
.IRChildPage .IRColumn input[type="checkbox"] {
    display: none;
}
.IRChildPage .IRColumn input:checked + .tabitem {
    border-bottom: 3px solid #333333;
    box-sizing: border-box;
}
.IRChildPage .IRColumn .tabitem {
    width: calc(100%/4);
    height: 40px;
    border-bottom: 1px solid #CCCCCC;
    box-sizing: border-box;
    line-height: 40px;
    text-align: center;
    color: #333;
    float: left;
    font-weight: bold;
    transition: all 0.2s ease;
}
.IRChildPage .IRColumn .tabcontent {
    display: none;
    padding: 40px 0 0;
    clear: both;
    overflow: hidden;
}
#news:checked ~ #newscontent,
#settlement:checked ~ #settlementcontent,
#materials:checked ~ #materialscontent,
#infomation:checked ~ #infomationcontent
 {
    display: block;
    width: calc(100% + 164px);
    margin-left: -164px;
}
/*201911月追加ここまで */
.titleArea .titleBox {
    box-sizing: border-box;
    padding-top: 100px;
    height: 410px;
    display: table;
    width: 100%;
}
.titleArea .titleBox .centering {
    display: table-cell;
    vertical-align: middle;
    z-index: 1;
    position: relative;
}
.breadcrumb {
    border-bottom: 1px solid #ddd;
    height: 39px;
    font-size: 12px;
}
.breadcrumb > div > span {
    display: block;
    position: relative;
    padding-right: 30px;
    line-height: 39px;
    height: 39px;
    float: left;
}
.breadcrumb > div > span:after {
    content: '';
    width: 12px;
    height: 39px;
    background-image: url(../image/bread_list.png);
    position: absolute;
    right: 9px;
    top: 0;
}
.breadcrumb > div > span:last-child {
    padding-right: 0;
}
.breadcrumb > div > span:last-child:after {
    background-image: none;
}
.breadcrumb span a span {
    font-weight: bold;
    color: #333;
    transition: 0.3s;
}
.breadcrumb span a span:hover {
    opacity: 0.7;
    transition: 0.3s;
}
.tileArea a {
    color: #333;
    cursor: pointer;
}
.tileArea .tileBox {
    border-top: 1px solid #ddd;
    margin-top: -1px;
}
.tileArea .tileBox .tile > a {
    display: block;
    box-sizing: border-box;
    width: 100%;
    position: relative;
}
.tileArea .tileBox .tile.tileOne > a {
    padding-left: 40%;
}
.tileArea .tileBox .tile.tileFour > a {
    padding-top: 225px;
}
.tileArea .tileBox .tile.tileThree > a {
    padding-top: 300px;
}
.tileArea .tileBox .tile.tileTwo > a {
    padding-top: 300px;
}
.tileArea .tileBox .tile > a .img {
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
}
.tileArea .tileBox .tile.tileOne > a .img {
    width: 40%;
    height: 100%;
}
.tileArea .tileBox .tile.tileFour > a .img,
.tileArea .tileBox .tile.tileThree > a .img,
.tileArea .tileBox .tile.tileTwo > a .img {
    width: 100%;
}
.tileArea .tileBox .tile.tileFour > a .img {
    height: 225px;
}
.tileArea .tileBox .tile.tileThree > a .img {
    height: 300px;
}

.tileArea .tileBox .tile.tileTwo > a .img {
    height: 300px;
}
.tileArea .tileBox .tile > a .img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    transition: 0.3s;
}
.tileArea .tileBox .tile > a:hover .img span {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
    transition: 0.3s;
}
.tileArea .tileBox .tile.tileFour,.tileArea .tileBox .tile.tileThree,.tileArea .tileBox .tile.tileTwo {
    float: left;
    box-sizing: border-box;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.tileArea .tileBox .tile.tileTwo {
    width: 50%;
}
.tileArea .tileBox .tile.tileFour {
    width: 25%;
}
.tileArea .tileBox .tile.tileThree {
    width: 33.33333%;
}
.tileArea .tileBox .tile:last-child {
    border-right: none;
}
.tileArea .detailLink {
    display: block;
    width: 190px;
    height: 50px;
    border: 1px solid #333;
    line-height: 48px;
    box-sizing: border-box;
    padding-left: 15px;
    font-weight: bold;
    position: relative;
    margin: 30px 0 0 auto;
}
.tileArea .detailLink:after {
    content: '';
    width: 20px;
    height: 20px;
    background-image: url(../image/icon_arrow_right_black.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -10px;
    transition: 0.3s;
}
.tileArea .detailLink:hover {
    color: #fff;
    background-color: #333;
    transition: 0.3s;
    padding-left: 20px;
}
.tileArea .detailLink:hover:after {
    background-image: url(../image/icon_arrow_right_white.png);
    transition: 0.3s;
}
.table.normal th {
    width: 30%;
    padding-bottom: 30px;
}
.table.normal td {
    width: 70%;
    box-sizing: border-box;
    padding-left: 20px;
    padding-bottom: 30px;
}
.table.normal.narrow th {
    width: 20%;
    padding-bottom: 20px;
}
.table.normal.narrow td {
    width: 80%;
    padding-bottom: 20px;
}
.table.normal.wide th {
    width: 40%;
}
.table.normal.wide td {
    width: 60%;
}
.table.normal .inner {
    width: 100%;
}
.table.normal .inner th {
    width: 35%;
    padding-bottom: 0px;
    font-weight: normal;
}
.table.normal .inner td {
    width: 65%;
    padding-bottom: 0px;
}
.table.normal tr:last-child th,.table.normal tr:last-child td {
    padding-bottom: 0;
}
.table.case {
    border-top: 1px solid #ddd;
}
.table.case th {
    width: 10%;
}
.table.case td {
    width: 90%;
}
.table.case th,.table.case td {
    border-bottom: 1px solid #ddd;
    padding: 20px 0;
}
.splitArea .img {
    position: absolute;
}
.splitArea .img span {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.splitArea.splitHalf .img {
    width: -webkit-calc(50% - 30px);
    width: calc(50% - 30px);
    height: 100%;
}
.splitArea.splitThird .img {
    width: -webkit-calc(33.3333%);
    width: calc(33.3333%);
    height: 100%;
}
.splitArea.leftImg .img {
    left: 0;
}
.splitArea.rightImg .img {
    right: 0;
}
.splitArea.splitHalf .splitContent {
    width: 570px;
}
.splitArea.splitHalf.leftImg .splitContent {
    padding-left: -webkit-calc(50% + 30px);
    padding-left: calc(50% + 30px);
}

.splitArea.splitHalf.rightImg .splitContent {
    padding-right: -webkit-calc(50% + 30px);
    padding-right: calc(50% + 30px);
}
.splitArea.splitThird .splitContent {
    width: 770px;
}
.splitArea.splitThird.leftImg .splitContent {
    padding-left: -webkit-calc(33.3333% + 30px);
    padding-left: calc(33.3333% + 30px);
}

.splitArea.splitThird.rightImg .splitContent {
    padding-right: -webkit-calc(33.3333% + 30px);
    padding-right: calc(33.3333% + 30px);
}
.pointArea .cross:after {
    content: '';
    position: absolute;
    width: 60px;
    height: 60px;
    background-image: url(../image/icon_cross.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: 34px;
    right: -54px;
}
.pointArea .pointTtl {
    text-align: center;
    font-size: 22px;
    font-weight: bold;
    padding: 50px 0 30px 0;
    margin-bottom: 30px;
    position: relative;
}
.pointArea .pointTtl span {
    font-size: 14px;
    display: block;
}
.pointArea .pointTtl:before {
    content: '';
    position: absolute;
    width: 30px;
    height: 30px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: 0;
    left: 50%;
    margin-left: -15px;
}
.pointArea .pointTtl:after {
    content: '';
    width: 40px;
    height: 1px;
    background-color: #333;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -20px;
}
.subContentMenu .subContentList li {
    margin-bottom: 40px;
    box-sizing: border-box;
}
.subContentMenu .subContentList li.full {
    position: absolute;
    height: calc(100% - 40px);
    width: 374px;
}
.subContentMenu .subContentList li.full a {
    height: calc(100% - 40px);
    width: 374px;
    box-sizing: border-box;
}
.subContentMenu .subContentList li a {
    display: block;
    padding: 30px;
    transition: 0.3s;
}
.subContentMenu .subContentList li a:after {
    right: 30px;
    bottom: 30px;
    width: 20px;
    height: 20px;
}
.subContentMenu .subContentList li span:first-child {
    font-size: 23px;
}
.subContentMenu .subContentList li span:last-child {
    color: #333;
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
}
.subContentMenu .subContentList li:hover {
    background-color: #333;
    transition: 0.3s;
}
.subContentMenu .subContentList li:hover a {
    padding-left: 35px;
    transition: 0.3%;
}
.subContentMenu .subContentList li:hover a:after {
    background-image: url(../image/icon_arrow_right_white.png);
}
.subContentMenu .subContentList li:hover span {
    color: #fff !important;
    transition: 0.3s;
}
.irList {
    border-top: 1px solid #ddd;
}
.irList dt,.irList dd {
    border-bottom: 1px solid #ddd;
    float: left;
    padding: 10px 0;
}
.irList dt {
    width: 20%;
    font-weight: bold;
}
.irList dd {
    width: 80%;
}
.skillList li {
    font-size: 28px;
    padding-top: 50px;
}
.skillList li:before {
    width: 30px;
    height: 30px;
    top: 0;
    left: 50%;
    margin-left: -15px;
}
.skillList li.plus:after {
    width: 60px;
    height: 60px;
    top: 10px;
    right: calc(-4% - 30px);
}
.equal {
    padding-top: 90px;
    font-size: 42px;
    line-height: 1em;
    font-weight: bold;
}
.equal:before {
    width: 60px;
    height: 60px;
    top: 0;
    left: 50%;
    margin-left: -30px;
}
.list li {
    margin-bottom: 20px;
}
.olList li {
    margin-bottom: 20px;
}
.priceList li {
    width: 16.6666%;
    float: left;
    text-align: center;
    border-left: 1px solid #ddd;
    box-sizing: border-box;
    padding: 10px 0;
}
.priceList li:first-child {
    border-left: none;
}
.priceList li .lv {
    font-size: 24px;
    font-weight: bold;
}
.priceList li .lv span {
    font-size: 16px;
    display: block;
}
.priceList li .price {
    font-size: 24px;
    font-weight: bold;
    margin-top: 20px;
}
.priceList li .price:after {
    content: '/h〜';
    font-size: 16px;
    margin-left: 5px;
}
.voiceList > li {
    margin-bottom: 45px;
}
.commentList {
    border-bottom: 1px solid #ddd;
    padding-bottom: 40px;
    margin-bottom: 40px;
}
.commentList .logo {
    height: 180px;
}
.commentList .logo img {
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    display: table;
    margin: 0 auto;
}
.flowList .flowItem {
    margin-bottom: 70px;
}
.flowList .flowItem .arrow {
    position: absolute;
    left: 0;
    top: 0;
    background-color: #eeeeee;
    width: 120px;
    height: 100%;
    text-align: center;
    box-sizing: border-box;
    font-size: 24px;
    padding-top: 15px;
}
.flowList .flowItem .arrow:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -39.5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 40px 60px 0 60px;
    border-color: #eeeeee transparent transparent transparent;
}
.flowList .flowItem:last-child .arrow:after {
    border: none;
}
.flowList .flowItem .flowContent {
}
.flowList .flowItem .flowContent .img {
    position: absolute;
    left: 160px;
    top: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    width: 300px;
    height: 100%;
}
.flowList .flowItem .flowContent .text {
    box-sizing: border-box;
    padding-left: 500px;
    width: 100%;
}
.staffItem {
    margin-bottom: 45px;
}
.staffItem a {
    display: block;
}
.staffItem a .hoverImg {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: 0.3s;
}
.staffItem a:hover .hoverImg {
    opacity: 1;
    transition: 0.3s;
}
.staffSelectBox select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 200px;
    height: 40px;
    border-radius: 0;
    border: 1px solid #ddd;
    font-size: 16px;
    line-height: 40px;
    padding: 0 30px 0 10px;
    box-sizing: border-box;
}
.staffSelectBox .select {
    position: relative;
    margin: 0 10px 0 0;
}
.staffSelectBox .select:after {
    content: '';
    position: absolute;
    width: 12px;
    height: 12px;
    right: 10px;
    top: 50%;
    margin-top: -6px;
    background-image: url(../image/icon_down_black.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.staffSelectBox input[type=submit] {
    width: 40px;
    height: 40px;
    border-radius: 0;
    border: 1px solid #ddd;
    background-color: #fafafa;
    background-image: url(../image/icon_search_black.png);
    background-size: 20px 20px;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 5px;
}
.staffImgList li {
    float: left;
    width: 33.333%;
    line-height: 0;
}
.staffImgList li img {
    box-sizing: border-box;
    padding: 5px;
}
}

/*-----ttl-----*/
/*all device*/
/*sp*/
@media only screen and (max-width: 767px){
.titleArea .titleBox .enTtl {
    font-size:24px;
    line-height: 1.6em;
    padding-bottom: 8px;
    position: relative;
    margin-bottom: 10px;
}
.titleArea .titleBox .enTtl:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -15px;
    width: 30px;
    height: 1px;
    background-color: #fff;
}
.titleArea .titleBox .pageTtl {
    font-size: 15px;
    line-height: 1.6em;
}
.pageCopy {
    font-size: 18px;
    line-height: 1.8em;
}
.pageCopy .small {
    font-size: 14px;
    display: block;
    line-height: 1.2em;
}
.sectionTtl.qs {
    font-size: 22px;
    line-height: 1.6em;
}
.sectionTtl {
    font-size: 18px;
    line-height: 1.6em;
    margin-bottom: 30px;
}
.tileArea .tileBox .tile > a .tileTtl {
    display: inline-block;
    background-color: #333;
    color: #fff;
    font-weight: bold;
    line-height: 1.6em;
    position: relative;
    z-index: 1;
    font-size: 16px;
    padding: 5px 15px;
    top: -18px;
}
.tileArea .tileBox .tile > a .tileTtl.company {
    position: absolute;
    left: 20px;
    bottom: 20px;
    top: auto !important;
}
.caseTtl {
    font-size: 18px;
}
.caseTtl span {
    display: block;
    margin-bottom: 5px;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.titleArea .titleBox .enTtl {
    font-size: 42px;
    line-height: 1.6em;
    padding-bottom: 10px;
    position: relative;
    margin-bottom: 15px;
}
.titleArea .titleBox .enTtl:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -15px;
    width: 30px;
    height: 1px;
    background-color: #fff;
}
.titleArea .titleBox .pageTtl {
    font-size: 18px;
    line-height: 1.6em;
}
.pageCopy {
    font-size: 28px;
    line-height: 2em;
}
.pageCopy .small {
    font-size: 16px;
    display: block;
    line-height: 1.2em;
}
.sectionTtl.qs {
    font-size: 42px;
    line-height: 1.6em;
}
.sectionTtl {
    font-size: 36px;
    line-height: 1.6em;
    margin-bottom: 60px;
}
.tileArea .tileBox .tile > a .tileTtl {
    display: inline-block;
    background-color: #333;
    color: #fff;
    font-weight: bold;
    line-height: 1.6em;
    position: relative;
    z-index: 1;
}
.tileArea .tileBox .tile > a .tileTtl.company {
    position: absolute;
    left: 20px;
    bottom: 20px;
    top: auto !important;
}
.tileArea .tileBox .tile.tileOne > a .tileTtl {
    font-size: 28px;
    margin-bottom: 30px;
    margin-left: -60px;
    padding: 5px 15px;
}
.tileArea .tileBox .tile.tileFour > a .tileTtl,
.tileArea .tileBox .tile.tileThree > a .tileTtl,
.tileArea .tileBox .tile.tileTwo > a .tileTtl {
    font-size: 18px;
    padding: 5px 15px;
    position: absolute;
    max-width: calc(100% - 80px);
    box-sizing: border-box;
}
.tileArea .tileBox .tile.tileFour > a .tileTtl {
    top: 205px;
}
.tileArea .tileBox .tile.tileThree > a .tileTtl {
    top: 280px;
}
.caseTtl {
    font-size: 28px;
}
.caseTtl span {
    margin-right: 10px;
}
}

/*-----btn-----*/
/*all device*/
.boxBtn:after {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.boxBtn.arrowRightWhite:after {
    background-image: url(../image/icon_arrow_right_white.png);
}
.boxBtn.arrowRightBlack:after {
    background-image: url(../image/icon_arrow_right_black.png);
}
.boxBtn.arrowRightBlack:hover:after {
    background-image: url(../image/icon_arrow_right_white.png);
}
.boxBtn.arrowLeftBlack:after {
    background-image: url(../image/icon_arrow_left_black.png);
}
.boxBtn.arrowLeftBlack:hover:after {
    background-image: url(../image/icon_arrow_left_white.png);
}
.boxBtn.arrowDownBlack:after {
    background-image: url(../image/icon_arrow_down_black.png);
}
.boxBtn.arrowDownBlack:hover:after {
    background-image: url(../image/icon_arrow_down_white.png);
}
.boxBtn.windowWhite:after {
    background-image: url(../image/icon_window_white.png);
}
.boxBtn.windowBlack:after {
    background-image: url(../image/icon_window_black.png);
}
.boxBtn.windowBlack:hover:after {
    background-image: url(../image/icon_window_white.png);
}
/*sp*/
@media only screen and (max-width: 767px){
.boxBtn {
    display: table;
    width: 100%;
    height: 40px;
    line-height: 40px;
    box-sizing: border-box;
    padding: 0 8px;
    position: relative;
    transition: 0.3s;
}
.boxBtn.lineWhite {
    border: 1px solid #fff;
}
.boxBtn.lineBlack {
    border: 1px solid #333;
}
.boxBtn:after {
    content:'';
    width: 16px;
    height: 16px;
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -8px;
    transition: 0.3s;
}
.toggleBtnStyle {
    position: relative;
    font-size: 14px;
    box-sizing: border-box;
    padding: 15px;
    font-weight: bold;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background: rgb(255,255,255);
    background: -moz-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(224,224,224,1) 11%, rgba(255,255,255,1) 89%, rgba(214,214,214,1) 100%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%,rgba(224,224,224,1) 11%,rgba(255,255,255,1) 89%,rgba(214,214,214,1) 100%);
    background: linear-gradient(to bottom, rgba(255,255,255,1) 0%,rgba(224,224,224,1) 11%,rgba(255,255,255,1) 89%,rgba(214,214,214,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#d6d6d6',GradientType=0 );
}
.toggleBtnStyle:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background-image: url(../image/icon_plus_black.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    right: 15px;
    top: 50%;
    margin-top: -10px;
}
.toggleBtnStyle.active:after {
    background-image: url(../image/icon_minus_black.png);
}
.toggleContentsStyle {
    width: 95%;
    margin: 2.5% auto;
    padding: 2.5% 2.5% 5% 2.5%;
    box-sizing: border-box;
    background-color: #f1f1f1;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.boxBtn {
    display: table;
    margin: 0 auto;
    width: 340px;
    height: 50px;
    line-height: 50px;
    box-sizing: border-box;
    padding: 0 20px;
    position: relative;
    transition: 0.3s;
}
.boxBtn.lineWhite {
    border: 1px solid #fff;
}
.boxBtn.lineBlack {
    border: 1px solid #333;
}
.boxBtn.lineBlack:hover {
    color: #fff;
}
.boxBtn:after {
    content:'';
    width: 20px;
    height: 20px;
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -10px;
    transition: 0.3s;
}
.boxBtn:hover {
    background-color: #333;
    transition: 0.3s;
}
.boxBtn.lineWhite:hover {
    border: 1px solid #333;
    transition: 0.3s;
}
.boxBtn:hover {
    padding-left: 25px;
}
.toggleContentsStyle {
    display: block !important;
}
}

/*-----mainVisual-----*/
/*all device*/
.mainVisual {
    width: 100%;
    height: 100vh;
}
/*sp*/
@media only screen and (max-width: 767px){
.mainVisual .spSlider {
    z-index: -1;
    width: 100%;
    height: 100vh;
    background-color: #333;
}
.mainVisual .slide {
    width: 100%;
    height: 100vh;
    background-size: cover;
    background-position: center;
    z-index: -1;
}
.mainVisual .slide.slide1 {
    background-image: url(../image/bg_sp_slide1.jpg);
}
.mainVisual .slide.slide2 {
    background-image: url(../image/bg_sp_slide2.jpg);
}
.mainVisual .slide.slide3 {
    background-image: url(../image/bg_sp_slide3.jpg);
}
.mainVisual .slide.slide4 {
    background-image: url(../image/bg_sp_slide4.jpg);
}
.mainVisual .inner {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: -webkit-calc(100vh - 60px);
    height: calc(100vh - 60px);
    padding-top: 60px;
}
.mainVisual .inner .mainCopy {
    font-size: 8vw;
}
.mainVisual .inner .mainText {
    line-height: 1.6em;
}
.mainVisual .inner .top {
    width: 100%;
    height: 55%;
    border-bottom: 1px solid rgba(255,255,255,0.6);
    box-sizing: border-box;
    display: table;
}
.mainVisual .inner .bottom {
    height: 45%;
}
.mainVisual .inner .bottom .left,.mainVisual .inner .bottom .right {
    width: 50%;
    height: 100%;
    box-sizing: border-box;
    display: table;
}
.mainVisual .inner .bottom .left {
    float: left;
    border-right: 1px solid rgba(255,255,255,0.6);
}
.mainVisual .inner .bottom .right {
    float: right;
}
.mainVisual .inner .centering {
    display: table-cell;
    vertical-align: middle;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.mainVisual {
    min-height: 650px;
}
/*
.mainVisual .mvVideo {
    position: relative;
    min-width: 1240px;
    min-height: 650px;
    width: 100%;
    height: 100vh;
}*/
.mainVisual .mv {
    width: 100%;
    height: 100vh;
    min-height: 650px;
    z-index: -1;
    background-color: #333;
}
.mbYTP_wrapper iframe {
    width: 140vw !important;
    height: 110vw !important;
    margin-top: -15vw !important;
    margin-left: -10vw !important;
}
@media only screen and (max-width: 1640px), print{
.mbYTP_wrapper iframe {
    width: 1840px !important;
    height: 1035px !important;
    margin-top: 0px !important;
    margin-left: -185.5px !important;
}
}
.mainVisual .inner {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: -webkit-calc(100vh - 150px);
    height: calc(100vh - 150px);
    min-height: 550px;
    padding-top: 150px;
}
.mainVisual .inner .mainCopy {
    font-size: 48px;
}
.mainVisual .inner .mainText {
    line-height: 2em;
}
.mainVisual .inner .top {
    width: 100%;
    height: 50%;
    border-bottom: 1px solid rgba(255,255,255,0.6);
    box-sizing: border-box;
    display: table;
}
.mainVisual .inner .bottom {
    height: 50%;
}
.mainVisual .inner .bottom .left,.mainVisual .inner .bottom .right {
    width: 50%;
    height: 100%;
    box-sizing: border-box;
    display: table;
}
.mainVisual .inner .bottom .left {
    float: left;
    border-right: 1px solid rgba(255,255,255,0.6);
}
.mainVisual .inner .bottom .right {
    float: right;
}
.mainVisual .inner .centering {
    display: table-cell;
    vertical-align: middle;
}
}

/*-----skill_table-----*/
/*all device*/
table .bgGray {background: #555; color: #fff; font-weight: bold;}
table .bgLiteGray {background: #ddd; color: #333; font-weight: bold;}
table .bgWGray {background: #eee; color: #333; font-weight: bold;}

/*sp*/
@media only screen and (max-width: 767px){
.skip {overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
table.it {border-collapse:separate; border-spacing:3px; width: 450px; font-size: 14px; margin-bottom: 10px;}
table.skill {border-collapse:separate; border-spacing:3px; width: 600px; font-size: 14px; margin-bottom: 10px;}
table.shared {border-collapse:separate; border-spacing:1px; width: 1200px; font-size: 14px; margin-bottom: 10px;}
table.emp {border-collapse:collapse; font-size: 14px; width: 1100px; margin-bottom: 10px;}
table.match {border-collapse:separate; border-spacing:1px; width: 760px; font-size: 14px !important; margin-bottom: 10px;}
table.it th {width: 80px; text-align: center;}
table.skill th {width: 80px; text-align: center;}
table.match th {text-align: center; display: table-cell; vertical-align: middle;}
table.shared th {
    background: #555;
    color: #fff;
    text-align: center;
    font-weight: bold;
    display: table-cell;
    vertical-align: middle;
}
table.it .tit {border: 1px solid #ddd; padding: 0 15px; text-align: left;}
table.it .num {color: #ddd; width: 30px !important; border: 1px solid #ddd; box-sizing: border-box;}
table.skill .tit {border: 1px solid #ddd; padding: 0 15px; text-align: left;}
table.skill .num {color: #ddd; width: 30px !important; border: 1px solid #ddd; box-sizing: border-box;}
table.shared .tit {background: #555; color: #fff; font-weight: bold;display: table-cell; vertical-align: middle;}
table.emp .state {padding: 10px 0px; text-align: center; width: 200px; line-height: 1.5; border-right: 1px solid #555;}
.brace {width: 10px;}
table.emp .state span {font-size: 14px;}
table.emp .lead_num {text-align: center; width: 70px;}
table.emp .num {
    background: #fff;
    color: #eee;
    font-weight: bold;
    text-align: center;
    width: 30px;
    border: 1px solid #ddd;
    box-sizing: border-box;
}
table.emp td.grayBg {background: #eee; height: 20px; border-right: 1px solid #eee;}
table.emp td.grayBgNarrow {background: #eee; height: 7px; border-right: 1px solid #eee;}
table.emp td.spec {
    background: #ddd;
    height: 20px;
    text-align: left;
    padding-left: 20px;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
}
table.shared tr.grade > td {background: #555; color: #fff; font-weight: bold; width: 65px;}
table.shared tr.point > td {
    background: #eee;
    font-weight: bold;
    line-height: 1.4;
    display: table-cell;
    vertical-align: middle;
    padding: 10px 0;
}
table.match tr.level > td {
    background: #eee;
    font-weight: bold;
    width: 50px !important;
    display: table-cell;
    vertical-align: middle;
    line-height: 1.4;
}
table.match tr.level > th {width: 160px !important;}
table.match tr.level td.duties {
    background: #eee;
    font-weight: bold;
    width: 330px !important;
    text-align: left;
    padding: 10px;
    line-height: 1.4;
    height: auto;
}
table.match tr.sk_level > td {background: #555; color: #fff; font-weight: bold;}
}

/*pc*/
@media only screen and (min-width: 768px), print{
table.it {border-collapse:separate; border-spacing:3px; width: 100%; font-size: 16px;}
table.skill {border-collapse:separate; border-spacing:3px; width: 100%; font-size: 16px;}
table.shared {border-collapse:separate; border-spacing:1px; width: 100%; font-size: 16px;}
table.match {border-collapse:separate; border-spacing:1px; width: 100%; font-size: 16px;}
table.it th {width: 80px; text-align: center;}
table.skill th {width: 80px; text-align: center;}
table.match th {text-align: center; display: table-cell; vertical-align: middle;}
table.shared th {
    background: #555;
    color: #fff;
    text-align: center;
    font-weight: bold;
    display: table-cell;
    vertical-align: middle;
}
table.it .tit {border: 1px solid #ddd; padding: 0 15px; text-align: left;}
table.it .num {color: #ddd; width: 30px !important; border: 1px solid #ddd; box-sizing: border-box;}
table.skill .tit {border: 1px solid #ddd; padding: 0 15px; text-align: left;}
table.skill .num {color: #ddd; width: 30px !important; border: 1px solid #ddd; box-sizing: border-box;}
table.shared .tit {background: #555; color: #fff; font-weight: bold;}
table.emp {border-collapse:collapse; width: 100%; font-size: 16px;}
table.emp .state {padding: 10px 0px; text-align: center; width: 200px; line-height: 1.5; border-right: 1px solid #555;}
.brace {width: 10px;}
table.emp .state span {font-size: 14px;}
table.emp .lead_num {text-align: center; width: 70px;}
table.emp .num {
    background: #fff;
    color: #eee;
    font-weight: bold;
    text-align: center;
    width: 30px;
    border: 1px solid #ddd;
    box-sizing: border-box;
}
table.emp td.grayBg {background: #eee; height: 20px; border-right: 1px solid #eee;}
table.emp td.grayBgNarrow {background: #eee; height: 7px; border-right: 1px solid #eee;}
table.emp td.spec {
    background: #ddd;
    height: 20px;
    text-align: left;
    padding-left: 20px;
    font-weight: bold;
    border-bottom: 1px solid #ddd;
}
table.shared tr.grade > td {background: #555; color: #fff; font-weight: bold; width: 65px;}
table.shared tr.point > td {
    background: #eee;
    font-weight: bold;
    line-height: 1.4;
    display: table-cell;
    vertical-align: middle;
}
table.match tr.level > td {
    background: #eee;
    font-weight: bold;
    width: 50px !important;
    display: table-cell;
    vertical-align: middle;
    line-height: 1.4;
}
table.match tr.level > th {width: 120px !important;}
table.match tr.level td.duties {
    background: #eee;
    font-weight: bold;
    width: 330px !important;
    text-align: left;
    padding: 0 15px;
    line-height: 1.4;
    height: 80px;
}
table.match tr.sk_level > td {background: #555; color: #fff; font-weight: bold;}
}

/*-----contact-----*/
/*all device*/
.contactTelBox {
    display: table;
    margin: 0 auto;
}
.contactTelBox .tel,.contactTelBox .date {
    display: block;
}
.contactTelBox .tel {
    position: relative;
}
.contactTelBox .tel:before {
    content: '';
    position: absolute;
    background-image: url(../image/icon_phone_black.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    left: 0;
    top: 50%;
}
.formBox input[type=text],
.formBox input[type=email],
.formBox input[type=submit],
.formBox textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 16px;
}
.formBox input[type=text],.formBox input[type=email],.formBox textarea {
    border: 1px solid #ddd;
    background-color: #fff;
}
.formBox input[type=submit] {
    display: table;
    margin: 0 auto;
    box-shadow: 10px 10px 30px rgba(0,0,0,0.2);
    background-color: #43a047;
    border: none;
    color: #fff;
    font-weight: bold;
    background-image: url(../image/icon_arrow_right_white.png);
    background-repeat: no-repeat;
    cursor: pointer;
}
.contactService2020 {
    display:block;
    margin-bottom:30px;
}
.contactInterview2020 {
    display:none;
    margin-bottom:30px;
}
.contactPartner2020 {
    display:none;
    margin-bottom:30px;
}
.contactIR2020 {
    display:none;
    margin-bottom:30px;
}
.contactOther2020 {
    display:none;
    margin-bottom:30px;
}
.contactUGacademy2021 {
    display:none;
    margin-bottom:30px;
}


/*sp*/
@media only screen and (max-width: 767px){
.contactTelBox .tel,.contactTelBox .date {
    padding-left: 30px;
    color: #333;
}
.contactTelBox .tel:before {
    width: 24px;
    height: 24px;
    margin-top: -12px;
}
.formTtl {
    font-size: 16px;
    line-height: 1em;
    margin-bottom: 10px;
    position: relative;
    padding-left: 45px;
}
.formTtl:before {
    font-size: 12px;
    height: 18px;
    line-height: 18px;
    display: block;
    position: absolute;
    left: 0;
    top: -1px;
    color: #fff;
    border-radius: 3px;
    padding: 0 5px;
}
.formTtl.req:before {
    content: '必須';
    background-color: #f4511e;
}
.formTtl.any:before {
    content: '任意';
    background-color: #1565c0;
}
.formTtl .policy {
    position: absolute;
    top: 0;
    left: 70px;
    font-size: 14px;
}
.formBox {
    margin-bottom: 30px;
}
.formBox input[type=text],.formBox input[type=email] {
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: 0 10px;
    box-sizing: border-box;
}
.formBox textarea {
    width: 100%;
    height: 200px;
    padding: 10px;
    box-sizing: border-box;
}
.formBox input[type=submit] {
    transition: 0.3s;
    border-bottom: 10px solid #2e7d32;
    font-size: 18px;
    width: 100%;
    box-sizing: border-box;
    padding: 10px 10px 10px 20px;
    text-align: left;
    background-size: 20px 20px;
    background-position: center right 20px;
}
.formBox input[type=submit]:hover {
    box-shadow: 3px 3px 3px rgba(0,0,0,0.1);
    background-color: #4dbf52;
    transition: 0.3s;
}
.formBox .wpcf7-list-item label {
    display: block;
    margin-bottom: 5px;
}
.wpcf7-list-item {
    margin-left: 0 !important;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.contactTelBox .tel,.contactTelBox .date {
    padding-left: 40px;
}
.contactTelBox .tel:before {
    width: 32px;
    height: 32px;
    margin-top: -16px;
}
.formTtl {
    font-size: 16px;
    line-height: 1em;
    margin-bottom: 10px;
    position: relative;
    padding-left: 45px;
}
.formTtl:before {
    font-size: 12px;
    height: 18px;
    line-height: 18px;
    display: block;
    position: absolute;
    left: 0;
    top: -1px;
    color: #fff;
    border-radius: 3px;
    padding: 0 5px;
}
.formTtl.req:before {
    content: '必須';
    background-color: #f4511e;
}
.formTtl.any:before {
    content: '任意';
    background-color: #1565c0;
}
.formTtl .policy {
    position: absolute;
    top: 0;
    left: 70px;
}
.formBox {
    margin-bottom: 30px;
}
.formBox input[type=text],.formBox input[type=email] {
    width: 100%;
    height: 40px;
    line-height: 40px;
    padding: 0 10px;
    box-sizing: border-box;
}
.formBox textarea {
    width: 100%;
    height: 200px;
    padding: 10px;
    box-sizing: border-box;
}
.formBox input[type=submit] {
    transition: 0.3s;
    border-bottom: 10px solid #2e7d32;
    font-size: 18px;
    padding: 15px 120px 15px 20px;
    background-size: 20px 20px;
    background-position: center right 20px;
}
.formBox input[type=submit]:hover {
    box-shadow: 3px 3px 3px rgba(0,0,0,0.1);
    background-color: #4dbf52;
    transition: 0.3s;
}
.wpcf7-list-item.first {
    margin-left: 0 !important;
}
}

/*-----blog-----*/
/*all device*/
.wp-pagenavi {
    text-align: center;
}
.blogArea h2,.blogArea h3,.blogArea h4,.blogArea h5,.blogArea h6 {
    margin: 60px 0 20px;
}
.blogArea h1 {
    font-size: 28px;
    font-weight: bold;
    line-height: 1.6em;
    border-bottom: 1px solid #333;
    padding-bottom: 10px;
}
.blogArea h2 {
    font-size: 24px;
    font-weight: bold;
    border-top: 1px solid #333;
    border-bottom: 1px solid #333;
    padding: 10px 0;
}
.blogArea h3 {
    font-size: 22px;
    font-weight: bold;
    border-left: 5px solid #333;
    padding-left: 10px;
}
.blogArea h4 {
    font-size: 20px;
    font-weight: bold;
}
.blogArea h5 {
    font-size: 18px;
    font-weight: bold;
}
.blogArea h6 {
    font-size: 16px;
    font-weight: bold;
}
.blogArea p,.blogArea ul,.blogArea ol,.blogArea blockquote {
    margin: 20px 0;
    font-size: 16px;
}
.blogArea blockquote {
    background-color: #f1f1f1;
    padding: 10px 20px;
    box-sizing: border-box;
}
.blogArea img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: table;
    margin: 0 auto;
}
.blogArea ul li,.blogArea ol li {
    margin-left: 20px;
    margin-bottom: 10px;
}
.blogArea ul li:last-child,.blogArea ol li:last-child {
    margin-bottom: 0;
}
.blogArea ul li {
    list-style-type: disc;
}
.blogArea ol li {
    list-style-type: decimal;
}
.snsBtnArea li a {
    display: block;
    width: 100%;
    height: 60px;
    box-shadow: 10px 10px 30px rgba(0,0,0,0.2);
    transition: 0.3s;
    position: relative;
    line-height: 60px;
}
.snsBtnArea li a:hover {
    box-shadow: 3px 3px 3px rgba(0,0,0,0.1);
}
.snsBtnArea li.tw a {
    background-color: #55acee;
    color: #fff;
    border-bottom: 10px solid #3b78a6;
}
.snsBtnArea li.fb a {
    background-color: #305097;
    color: #fff;
    border-bottom: 10px solid #223869;
}
.snsBtnArea li.hatebu a {
    background-color: #00a4de;
    color: #fff;
    border-bottom: 10px solid #00729b;
}
.leftThumArea li {
    border-top: 1px solid #ddd;
}
.leftThumArea li:last-child {
    border-bottom: 1px solid #ddd;
}
.leftThumBox {
    padding: 10px 0;
    box-sizing: border-box;
    display: block;
}
.leftThumBox a,.leftThumBox a img{
    transition: 0.3s;
}
.leftThumBox a:hover,.leftThumBox a:hover img {
    transition: 0.3s;
    opacity: 0.8;
}
.leftThumBox .date {
    line-height: 1em;
}
.leftThumBox .title {
    line-height: 1.6em;
}
.rightArea h2 {
    background-color: #333;
    color: #fff;
    font-weight: bold;
    padding: 10px;
    font-size: 16px;
}
.leftThumBox.wpp img {
    width: 100%;
    height: auto;
}
.leftThumBox.wpp .title a {
    font-weight: bold;
    color: #333;
}
.widget .menu li a {
    display: block;
    border-bottom: 1px solid #ddd;
    padding: 10px 10px;
    font-size: 14px;
    font-weight: bold;
    color: #333;
    box-sizing: border-box;
}
.paging .next a,.paging .prev a {
    display: block;
    padding: 10px;
    border: 1px solid #eee;
    height: 100%;
    box-sizing: border-box;
    position: relative;
}
.paging .next a {
    padding-left: 40px;
}
.paging .prev a {
    padding-right: 40px;
}
.paging .next a:before,.paging .prev a:before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    top: 50%;
    margin-top: -10px;
}
.paging .next a:before {
    background-image: url(../image/icon_left_black.png);
    left: 10px;
}
.paging .prev a:before {
    background-image: url(../image/icon_right_black.png);
    right: 10px;
}
/*sp*/
@media only screen and (max-width: 767px){
.blogArea h2,.blogArea h3,.blogArea h4,.blogArea h5,.blogArea h6 {
    margin: 40px 0 15px;
}
.blogArea h1 {
    font-size: 22px;
    line-height: 1.6em;
    padding-bottom: 10px;
}
.blogArea h2 {
    font-size: 20px;
    padding: 10px 0;
}
.blogArea h3 {
    font-size: 18px;
    padding-left: 10px;
}
.blogArea h4 {
    font-size: 18px;
}
.blogArea h5 {
    font-size: 16px;
}
.blogArea h6 {
    font-size: 14px;
}
.blogArea p,.blogArea ul,.blogArea ol,.blogArea blockquote {
    margin: 20px 0;
    font-size: 14px;
    line-height: 1.6em;
}
.blogArea blockquote {
    padding: 0px 20px;
}
.blogArea ul li,.blogArea ol li {
    margin-left: 20px;
    margin-bottom: 10px;
}
.snsBtnArea li a .result_area {
    position: absolute;
    width: 100%;
    text-align: center;
    right: 0;
    height: 14px;
    line-height: 14px;
    top: 5px;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.widget .menu li a {
    transition: 0.3s;
}
.widget .menu li a:hover {
    transition: 0.3s;
    padding-left: 15px;
}
.snsBtnArea li a .result_area {
    position: absolute;
    right: 20px;
    height: 60px;
    line-height: 60px;
    top: 0;
}
.paging a {
    transition: 0.3s;
}
.paging a:hover {
    opacity: 0.7;
    transition: 0.3s;
}
}

/*-----blog-----*/
/*all device*/
.graphBox {
    position: relative;
    overflow: hidden;
}
.graphBox > img:first-child {
    position: relative;
}
.graphBox img {
    position: absolute;
    top: 0;
    right: 0;
}
.graphBox .maskX,.graphBox .maskY {
    position: absolute;
    overflow: hidden;
}
.graphBox .maskY {
    top: 100%;
    right: 0;
}
.graphBox .maskX {
    top: 0;
    right: 100%;
}
.graphBox .maskY img {
    top: -100%;
}
.graphBox .maskX img {
    right: -100%;
}
.graphBox img.circle {
    transition: 0.5s;
    transform: rotate(-20deg);
    -webkit-transform: rotate(-20deg);
    -ms-transform: rotate(-20deg);
    -moz-transform: rotate(-20deg);
    opacity: 0 !important;
}
.graphBox img.circle.active {
    transition: 0.5s;
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    opacity: 1 !important;
}
.graphText {
    font-weight: bold;
    letter-spacing: 0.1em;
}
.graphText .big {
    font-weight: bold;
}
.syszoArea {
    border-top: 1px solid #ddd;
    background: rgb(242,242,242);
    background: -moz-linear-gradient(top, rgba(242,242,242,1) 0%, rgba(249,249,251,1) 51%, rgba(211,211,211,1) 100%);
    background: -webkit-linear-gradient(top, rgba(242,242,242,1) 0%,rgba(249,249,251,1) 51%,rgba(211,211,211,1) 100%);
    background: linear-gradient(to bottom, rgba(242,242,242,1) 0%,rgba(249,249,251,1) 51%,rgba(211,211,211,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f2f2', endColorstr='#d3d3d3',GradientType=0 );
}
.graphText.textLast {
    position: relative;
}
.graphText.textLast:before {
    content: '';
    position: absolute;
    background-image: url(../image/graph_logo.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    top: 0;
    left: 50%;
}
/*sp*/
@media only screen and (max-width: 767px){
.graphText.text01 {
    font-size: 10vw;
    line-height: 1.4em;
    display: table;
    margin: 0 auto;
}
.graphText.text01 .big {
    font-size: 16vw;
}
.graphText.text02 {
    font-size: 6vw;
    line-height: 1.8em;
    display: table;
    margin: 0 auto;
}
.graphText.text02 .big {
    font-size: 10vw;
}
.graphText.text03 {
    font-size: 6vw;
    line-height: 1.8em;
    display: table;
    margin: 0 auto;
}
.graphText.text03 .big {
    font-size: 10vw;
}
.graphText.text04 {
    font-size: 7vw;
    line-height: 1.6em;
}
.graphText.text08 {
    font-size: 5vw;
    line-height: 1.6em;
}
.graphText.text09 {
    font-size: 6vw;
    line-height: 1.6em;
}
.graphText.textLast {
    font-size: 6vw;
    line-height: 1.8em;
    padding-top: 130px;
}
.graphText.textLast:before {
    width: 140px;
    height: 97px;
    margin-left: -70px;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.graphText.text01 {
    font-size: 48px;
    line-height: 1.4em;
    padding: 160px 0 0 0;
    display: table;
    margin: 0 auto;
}
.graphText.text01 .big {
    font-size: 84px;
}
.graphText.text02 {
    font-size: 32px;
    line-height: 2em;
    position: absolute;
    top: 0;
}
.graphText.text02 .big {
    font-size: 64px;
}
.graphArea.graph02 {
    width: 984px;
    margin: 0 0 0 auto;
    padding-top: 100px;
}
.graphText.text03 {
    font-size: 32px;
    line-height: 2em;
    padding: 150px 0 0 0;
    display: table;
    margin: 0 auto;
}
.graphText.text03 .big {
    font-size: 64px;
}
.graphText.text04 {
    font-size: 32px;
}
.graphText.text08 {
    font-size: 28px;
    line-height: 1.6em;
    margin-bottom: 60px;
}
.graphText.text09 {
    font-size: 32px;
    line-height: 1.6em;
}
.graphText.textLast {
    font-size: 28px;
    line-height: 1.8em;
    padding-top: 220px;
}
.graphText.textLast:before {
    width: 240px;
    height: 167px;
    margin-left: -120px;
}
}

.formError.inline .formErrorContent {
    font-weight: bold;
    transition: 0.3s;
}
.formError.inline {
    transition: 0.3s;
}
#policyCheck .formError.inline {
    top: 25px !important;
}
.formError {
    z-index: 1 !important;
}

/*policy modal / stepBox*/
.stepBox {
    display: table;
}
.stepBox .step {
    display: inline-block;
    position: relative;
    font-weight: bold;
    background-color: #ddd;
    color: #999;
    box-sizing: border-box;
}
.stepBox .step:before {
    font-family: 'Quicksand';
    position: absolute;
}
.stepBox .step.one:before {
    content: 'Step.1';
}
.stepBox .step.two:before {
    content: 'Step.2';
}
.stepBox .step.one:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent transparent transparent #ddd;
    position: absolute;
    right: -20px;
    top: 0;
    z-index: 1;
}
.stepBox .step.active {
    background-color: #333;
    color: #fff;
}
.stepBox .step.active:after {
    border-color: transparent transparent transparent #333;
}
/*sp*/
@media only screen and (max-width: 767px){
.inline_content.policy {
    background-color: #fafafa;
}
.fs-lightbox-close {
    text-indent:100%;
    white-space:nowrap;
    overflow:hidden;
}
.fs-lightbox-close:after {
    color: #333;
    text-indent:0%;
}
.stepBox {
    margin: 0 auto 30px;
    width: 100%;
    overflow: hidden;
}
.stepBox .step {
    font-size: 12px;
    height: 40px;
    line-height: 40px;
}
.stepBox .step:before {
    font-size: 12px;
    line-height: 12px;
    top: 50%;
    margin-top: -6px;
}
.stepBox .step.one {
    width: 45%;
    padding: 0 0 0 60px;
    float: left;
}
.stepBox .step.two {
    width: 55%;
    padding: 0 0 0 80px;
    float: right;
}
.stepBox .step.one:before {
    left: 10px;
}
.stepBox .step.two:before {
    left: 30px;
}
.stepBox .step.one:after {
    border-width: 20px 0 20px 20px;
    right: -20px;
}
}
/*pc*/
@media only screen and (min-width: 768px), print{
.inline_content.policy {
    width: 900px;
    height: 600px;
    overflow-y: scroll;
}
.stepBox {
    margin: 0 auto 40px;
    width: 60%;
    overflow: hidden;
}
.stepBox .step {
    font-size: 18px;
    height: 40px;
    line-height: 40px;
}
.stepBox .step:before {
    font-size: 18px;
    line-height: 18px;
    top: 50%;
    margin-top: -9px;
}
.stepBox .step.one {
    width: 45%;
    padding: 0 0 0 80px;
    float: left;
}
.stepBox .step.two {
    width: 55%;
    padding: 0 0 0 100px;
    float: right;
}
.stepBox .step.one:before {
    left: 10px;
}
.stepBox .step.two:before {
    left: 30px;
}
.stepBox .step.one:after {
    border-width: 20px 0 20px 20px;
    right: -20px;
}
}

/*commentArea*/
.commentArea .ugStaff,.commentArea .customerStaff {
    position: relative;
    display: table;
    font-weight: bold;
    margin-bottom: 30px;
}
.commentArea .ugStaff {
    float: right;
}
.commentArea .customerStaff {
    float: left;
}
.commentArea p:first-child {
    margin-top: 0;
}
.commentArea .ugComment,.commentArea .customerComment {
    background-color: #fff;
    position: relative;
    border: 1px solid #ddd;
    clear: both;
}
.commentArea .ugComment:after,.commentArea .customerComment:after,
.commentArea .ugComment:before,.commentArea .customerComment:before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
}
.commentArea .ugComment:after {
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #ddd;
    z-index: 0;
    right: -10px;
}
.commentArea .ugComment:before {
    border-width: 9px 0 9px 9px;
    border-color: transparent transparent transparent #fff;
    z-index: 1;
    right: -9px;
}
.commentArea .customerComment:after {
    border-width: 10px 10px 10px 0;
    border-color: transparent #ddd transparent transparent;
    z-index: 0;
    left: -10px;
}
.commentArea .customerComment:before {
    border-width: 9px 9px 9px 0;
    border-color: transparent #fff transparent transparent;
    z-index: 1;
    left: -9px;
}
.commentArea .ugComment:after {
    top: 15px;
}
.commentArea .ugComment:before {
    top: 16px;
}
.commentArea .customerComment:after {
    top: 15px;
}
.commentArea .customerComment:before {
    top: 16px;
}
.commentArea .ugStaff span,.commentArea .customerStaff span {
    font-size: 12px;
    display: block;
    width: 100%;
    text-align: center;
    line-height: 1em;
}
/*pc*/
@media only screen and (min-width: 768px), print{
.commentArea .ugStaff img,.commentArea .customerStaff img {
    width: 60px;
    height: 60px;
    border-radius: 30px;
}
.commentArea .ugComment {
    float: right;
    margin-right: 80px;
    margin-top: -110px;
    margin-bottom: 30px;
}
.commentArea .customerComment {
    float: left;
    margin-left: 80px;
    margin-top: -110px;
    margin-bottom: 30px;
}
.commentArea .ugComment,.commentArea .customerComment {
    border-radius: 10px;
    padding: 15px 20px;
}
}
/*sp*/
@media only screen and (max-width: 767px){
.commentArea .ugStaff img,.commentArea .customerStaff img {
    width: 40px;
    height: 40px;
    border-radius: 20px;
}
.commentArea .ugComment {
    float: right;
    margin-right: 60px;
    margin-top: -90px;
    margin-bottom: 30px;
}
.commentArea .customerComment {
    float: left;
    margin-left: 60px;
    margin-top: -90px;
    margin-bottom: 30px;
}
.commentArea .ugComment,.commentArea .customerComment {
    border-radius: 5px;
    padding: 5px 10px;
}
}

/*enStyle*/
.hideJp {
    display: none;
}
.page-en .hideJp ,.page-en-child .hideJp {
    display: inherit;
}
.page-en .breadcrumb,
.page-en .pageTtl,
.page-en .mainMenu .topMenu,
.page-en .mainMenu .en,
.page-en .contactMenu,
.page-en .footer .contactArea,
.page-en .footer .bannerArea,
.page-en .footer .footerMenuArea .logo,
.page-en .footer .footerMenuArea .footerMenuBox,
.page-en .topBtn,
.page-en-child .breadcrumb,
.page-en-child .pageTtl,
.page-en-child .mainMenu .topMenu,
.page-en-child .mainMenu .en,
.page-en-child .contactMenu,
.page-en-child .footer .contactArea,
.page-en-child .footer .bannerArea,
.page-en-child .footer .footerMenuArea .logo,
.page-en-child .footer .footerMenuArea .footerMenuBox,
.page-en-child .topBtn {
    display: none !important;
}
.page-en .enTtl,
.page-en .footerMenuArea,
.page-en-child .enTtl,
.page-en-child .footerMenuArea {
    padding: 0 !important;
    margin: 0 !important;
}
.page-en .enTtl:after,
.page-en-child .enTtl:after {
    background-color: transparent !important;
}
.page-en .copyYear,
.page-en .mainMenu,
.page-en-child .copyYear,
.page-en-child .mainMenu {
    padding-top: 0 !important;
    border-top: none;
    border-bottom: none;
}
.page-en .mainMenu:nth-child(2),
.page-en-child .mainMenu:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,0.6);
}
.page-en .subContentMenu .subContentList li span:last-child,
.page-en-child .subContentMenu .subContentList li span:last-child {
    margin-top: 0;
}
/*pc*/
@media only screen and (min-width: 768px), print{
.grobalMenu .mainMenu .enMenu > a {
    font-size: 16px;
    line-height: 100px;
    padding: 0 25px;
    color: #333;
    font-weight: bold;
    display: block;
    position: relative;
    transition: 0.3s;
}
.grobalMenu .mainMenu .enMenu:hover > a {
    background-color: #333;
    color: #fff;
    transition: 0.3s;
}
.page-en .graphText.text01,
.page-en-child .graphText.text01 {
    font-size: 38px;
}
}
/*sp*/
@media only screen and (max-width: 767px){
.mainMenu .enMenu > a,.mainMenu .enMenu .close {
    display: block;
    border-top: 1px solid rgba(255,255,255,0.6);
    font-weight: bold;
    font-size: 16px;
    padding: 20px 0 20px 10px;
}
.page-en .graphText.text01,
.page-en-child .graphText.text01 {
    font-size: 7vw;
}
}
/*contactStyle*/
.page-contact .topBtn,
.page-contact .footer .contactArea,
.page-contact .footer .bannerArea {
    display: none !important;
}

@media print{
#header {
    display: none !important;
}
}


/*---- UG Academy 2107 ----*/

/*= 共通 =*/
.grayArea {
    background-color: #F2F2F2;
}
/*pc*/
@media only screen and (min-width: 768px), print{
    .sectionTitle {
        font-size: 32px;
        font-weight: 600;
        text-align: center;
        position: relative;
        margin: 80px auto;
    }
    .sectionTitle:after {
        content: '';
        position: absolute;
        width: 60px;
        height: 3px;
        background-color: #B4B4B4;
        top: 48px;
        left: 50%;
        transform: translate(-50%);
        -webkit-transform: translate(-50%);
        -ms-transform: translate(-50%);
    }
    .sectionTitle__white {
        font-size: 32px;
        font-weight: 600;
        color: #FFF;
        text-align: center;
        position: relative;
        margin: 80px auto;
    }
    .sectionTitle__white:after {
        content: '';
        position: absolute;
        width: 60px;
        height: 3px;
        background-color: #FFF;
        top: 48px;
        left: 50%;
        transform: translate(-50%);
        -webkit-transform: translate(-50%);
        -ms-transform: translate(-50%);
    }
}
/*sp*/
@media only screen and (max-width: 767px){
    .sectionTitle {
        font-size: 28px;
        font-weight: 600;
        text-align: center;
        position: relative;
        margin: 40px auto;
    }
    .sectionTitle:after {
        content: '';
        position: absolute;
        width: 60px;
        height: 3px;
        background-color: #B4B4B4;
        top: 40px;
        left: 50%;
        transform: translate(-50%);
        -webkit-transform: translate(-50%);
        -ms-transform: translate(-50%);
    }
    .sectionTitle__white {
        font-size: 28px;
        font-weight: 600;
        color: #FFF;
        text-align: center;
        position: relative;
        margin: 40px auto;
    }
    .sectionTitle__white:after {
        content: '';
        position: absolute;
        width: 60px;
        height: 3px;
        background-color: #FFF;
        top: 40px;
        left: 50%;
        transform: translate(-50%);
        -webkit-transform: translate(-50%);
        -ms-transform: translate(-50%);
    }
    .autoImgSp {
        width: 100%;
        height: auto;
    }
}

/*= UGアカデミーとは =*/
/*pc*/
@media only screen and (min-width: 768px), print{
    .aboutUGA {
        display: flex;
        justify-content: space-between;
        margin-bottom: 80px;
    }
    .aboutUGA__leftBox {
        width: calc(50% - 40px);
    }
    .aboutUGA__rightBox {
        width: calc(50% - 40px);
        position: relative;
    }
    .aboutUGA__imgPosition {
        position: absolute;
        bottom: 0;
    }
    .aboutUGA__titleBlock {

    }
    .aboutUGA__titleEn {
        padding-left: calc(calc(100vw - 1240px)/2);
        color: #C7C7C7;
        z-index: 10;
        position: absolute;
        bottom: 80px;
    }
    .aboutUGA__titleSub {
        padding-left: calc(calc(100vw - 1240px)/2);
        font-size: 20px;
        font-weight: 600;
        color: #FFF;
        z-index: 10;
        position: absolute;
        bottom: 56px;
    }
    .aboutUGA__titleSubBg {
        padding-left: calc(calc(100vw - 1240px)/2);
        background-color: #4D4D4D;
        padding: 4px;
    }
    .aboutUGA__titleMain {  
        margin: 80px 0 40px;      
        font-size: 32px;
        z-index: 1;
        position: relative;
    }
    .aboutUGA__titleMainBg {
        padding-left: calc(calc(100vw - 1240px)/2);
        padding-top: 40px;
        padding-right: 40px;
        padding-bottom: 40px;
        background-color: #EBEBEB;
        font-weight: 600;
    }
    .aboutUGA__textBlock {
        margin: 40px 0;
    }
}
/*sp*/
@media only screen and (max-width: 767px){
    .aboutUGA {
        display: block;
    }
    .aboutUGA__leftBox {
        width: 100%;
    }
    .aboutUGA__rightBox {
        width: 100%;
        margin: 40px 0;
    }
    .aboutUGA__titleBlock {

    }
    .aboutUGA__titleEn {
        color: #C7C7C7;
        z-index: 10;
        position: absolute;
        top: -40px;
        padding-left: 16px;
    }
    .aboutUGA__titleSub {
        font-size: 16px;
        font-weight: 600;
        color: #FFF;
        z-index: 10;
        position: absolute;
        top: -10px;
    }
    .aboutUGA__titleSubBg {
        background-color: #4D4D4D;
        padding: 4px;
        margin-left: 16px;
    }
    .aboutUGA__titleMain {
        margin-top: 80px;
        font-size: 20px;
        z-index: 1;
        position: relative;
        padding: 20px 20px 20px 16px;
        background-color: #EBEBEB;
    }
    .aboutUGA__titleMainBg {
        font-weight: 600;
        line-height: 1.3em;
    }
    .aboutUGA__textBlock {
        margin: 40px 0;
    }
}

/*= コーポレートエンジニアとは =*/
/*pc*/
@media only screen and (min-width: 768px), print{
    .aboutCorpoEn {
        display: flex;
        justify-content: space-between;
        padding: 54px;
        border: 1px solid #B4B4B4;
    }
    .aboutCorpoEn__leftBox {
        width: calc(50% - 40px);
    }
    .aboutCorpoEn__rightBox {
        width: calc(50% - 40px);
    }
    .aboutCorpoEn__titleSub {
        font-weight: 600;
        position: relative;
    }
    .aboutCorpoEn__titleSub:after {
        content: '';
        position: absolute;
        width: 60px;
        height: 3px;
        background-color: #B4B4B4;
        top: 48px;
        left: 0;
    }
    .aboutCorpoEn__titleMain {
        margin-top: 24px;
        font-size: 32px;
        font-weight: 400;
        line-height: 1.3em;
    }
    .aboutCorpoEn__textBlock {
        margin: 60px 0;
    }
}
/*sp*/
@media only screen and (max-width: 767px){
    .aboutCorpoEn {
        display: block;
        padding: 4%;
        border: 1px solid #B4B4B4;
        box-sizing: border-box;
    }
    .aboutCorpoEn__leftBox {
        width: 100%;
    }
    .aboutCorpoEn__rightBox {
        width: 100%;
        margin: 40px 0;
    }
    .aboutCorpoEn__titleSub {
        font-weight: 600;
        position: relative;
    }
    .aboutCorpoEn__titleSub:after {
        content: '';
        position: absolute;
        width: 60px;
        height: 3px;
        background-color: #B4B4B4;
        top: 32px;
        left: 0;
    }
    .aboutCorpoEn__titleMain {
        margin-top: 24px;
        font-size: 24px;
        font-weight: 400;
        line-height: 1.3em;
    }
    .aboutCorpoEn__textBlock {
        margin: 40px 0;
    }
}

/*= 具体的な取り組み =*/

/*pc*/
@media only screen and (min-width: 768px), print{
    .action__titleBlock {

    }
    .action__titleEn {
        padding-left: calc(calc(100vw - 1240px)/2);
        color: #C7C7C7;
        z-index: 10;
        position: absolute;
        top: -80px;
    }
    .action__titleSub {
        padding-left: calc(calc(100vw - 1240px)/2);
        font-size: 20px;
        font-weight: 600;
        color: #FFF;
        z-index: 10;
        position: absolute;
        top: -34px;
    }
    .action__titleSubBg {
        padding-left: calc(calc(100vw - 1240px)/2);
        background-color: #4D4D4D;
        padding: 4px;
    }
    .action__titleMain {
        margin: 160px 0 40px; 
        font-size: 32px;
        line-height: 2.3em;
        z-index: 1;
        position: relative;
    }
    .action__titleMainBg {
        padding-left: calc(calc(100vw - 1240px)/2);
        padding-top: 40px;
        padding-right: 40px;
        padding-bottom: 40px;
        background-color: #FFF;
        font-weight: 600;
    }
    .action__skillLink {
        color: #333;
        font-weight: 600;
        padding-right: 30px;
        position: relative;
    }
    .action__skillLink:hover {
        transition: 0.3s;
        opacity: 0.6;
    }
    .action__skillLink:after {
        position: absolute;
        content: '';
        background-image: url(../image/ugacademy/icon_arrow.png);
        width: 20px;
        height: 20px;
        top: 0;
        right: 0;
    }
    .action__imageBlock {
        margin: 80px 0;
    }
    .action__image {
        display: block;
        margin: 0 auto;
    }
    .actionBox {
        display: flex;
        justify-content: space-between;
        margin-bottom: 80px;
    }
    .action__leftBox {
        width: calc(50% - 40px);
    }
    .action__rightBox {
        width: calc(50% - 40px);
        position: relative;
    }
    .action__imgPosition {
        position: absolute;
        bottom: 80px;
    }
    .action__textBlock {
        margin: 40px 0;
    }
    .actionList {

    }
    .actionList__inner {
        position: relative;
        margin: 0 0 8px 24px;
    }
    .actionList__inner:before {
        content: '';
        position: absolute;
        width: 16px;
        height: 16px;
        background-color: #DDD;
        margin-left: -24px;
        margin-top: 6px;
    }
}
.text__underline {
    border-bottom: 2px solid #333333;
    padding-bottom: 14px;
}
/*sp*/
@media only screen and (max-width: 767px){
    .action__titleBlock {

    }
    .action__titleEn {
        color: #C7C7C7;
        z-index: 10;
        position: absolute;
        top: -40px;
        padding-left: 16px;
    }
    .action__titleSub {
        font-size: 16px;
        font-weight: 600;
        color: #FFF;
        z-index: 10;
        position: absolute;
        top: -10px;
    }
    .action__titleSubBg {
        background-color: #4D4D4D;
        padding: 4px;
        margin-left: 16px;
    }
    .action__titleMain {
        margin-top: 100px;
        font-size: 20px;
        z-index: 1;
        position: relative;
        padding: 20px 20px 20px 16px;
        background-color: #FFF;
    }
    .action__titleMainBg {
        font-weight: 600;
        line-height: 1.5em;
    }
    .action__skillLink {
        color: #333;
        font-weight: 600;
        padding-right: 30px;
        position: relative;
    }
    .action__skillLink:hover {
        transition: 0.3s;
        opacity: 0.6;
    }
    .action__skillLink:after {
        position: absolute;
        content: '';
        background-image: url(../image/ugacademy/icon_arrow.png);
        width: 20px;
        height: 20px;
        top: 0;
        right: 0;
    }
    .action__imageBlock {
        margin: 40px 0;
    }
    .action__image {
        display: block;
        margin: 0 auto;
    }
    .actionBox {
        display: block;
    }
    .action__leftBox {
        width: 100%;
    }
    .action__rightBox {
        width: 100%;
        margin: 40px 0;
    }
    .action__textBlock {
        margin: 40px 0;
    }
}

/*= コース・プログラム例 =*/
/*pc*/
@media only screen and (min-width: 768px), print{
    .courseArea {
        background-image: url(../image/ugacademy/courseBg.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }
    .courseLead {
        color: #FFF;
        font-size: 32px;
        line-height: 1.3em;
        text-align: center;
        margin: 40px auto;
    }
    .course__imageBlock {
        margin: 80px 0;
    }
    .course__image {
        display: block;
        margin: 0 auto;
    }
    .courseMenu {
        display: flex;
        justify-content: space-between;
        margin: 40px 0;
    }
    .courseMenu__block {
        width: calc(100%/4 - 40px);
    }
    .courseMenu__mainTitle {
        text-align: center;
    }
    .courseMenu__mainTitleBg {
        background-color: #FFF;
        color: #333;
        font-size: 24px;
        font-weight: 600;
        padding: 4px;
    }
    .courseMenu__title {
        color: #FFF;
        font-size: 18px;
        font-weight: 600;
        margin: 14px 0 24px;
    }
    .courseMenu__detail {
        color: #FFF;
        line-height: 2em;
    }
}
/*sp*/
@media only screen and (max-width: 767px){
    .courseArea {
        background-image: url(../image/ugacademy/courseBg.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }
    .courseLead {
        color: #FFF;
        font-size: 24px;
        line-height: 1.3em;
        text-align: center;
        margin: 40px 2%;
    }
    .course__imageBlock {
        margin: 40px 2%;
    }
    .course__image {
        display: block;
        margin: 0 auto;
    }
    .courseMenu {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin: 40px 2%;
    }
    .courseMenu__block {
        width: calc(100%/2 - 16px);
        margin-bottom: 24px;
    }
    .courseMenu__mainTitle {
        text-align: center;
    }
    .courseMenu__mainTitleBg {
        text-align: center;
    }
    .courseMenu__mainTitleBg {
        background-color: #FFF;
        color: #333;
        font-size: 20px;
        font-weight: 600;
        padding: 4px;
    }
    .courseMenu__title {
        color: #FFF;
        font-size: 18px;
        font-weight: 600;
        margin: 8px 0 16px;
    }
    .courseMenu__detail {
        color: #FFF;
        line-height: 2em;
    }
}

/*= UGアカデミーの成果 =*/
.note {
    font-size: 14px;
    color: #00897B;
}
.note__link {
    font-size: 14px;
    color: #00897B;
    text-decoration: underline;
}
.note__link:hover {
    opacity: 0.6;
}
/*pc*/
@media only screen and (min-width: 768px), print{
    .achievementFig {
        display: flex;
        justify-content: space-between;
    }
    .achievementFig__block {
        width: calc(100%/2 - 40px);
        margin: 80px 0;
    }
    .achievementFig__titleEn {
        color: #C7C7C7;
        font-size: 24px;
        text-align: center;
    }
    .achievementFig__title {
        margin: 8px auto 40px;
        text-align: center;
    }
    .achievementFig__titleBg {
        padding: 4px;
        color: #FFF;
        font-size: 20px;
        background-color: #4D4D4D; 
    }
    .achievementVoice__title {
        margin: 40px auto 80px;
        text-align: center;
    }
    .achievementVoice__titleBg {
        padding: 4px;
        color: #FFF;
        font-size: 24px;
        background-color: #4D4D4D;
    }
    .achievementVoice {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .achievementVoice__block {
        width: calc(100%/3 - 32px);
        margin-bottom: 40px;
    }
    .achievementVoice__photo {
        width: 342px;
        height: 220px;
        position: relative;
        z-index: -10;
    }
    .achievementVoice__type {
        position: absolute;
        padding: 0 8px;
        color: #FFF;
        background-color: #4D4D4D;
        top: 0;
        right: 0;
    }
    .achievementVoice__typeTeacher {
        position: absolute;
        padding: 0 16px;
        color: #FFF;
        background-color: #4D4D4D;
        top: 0;
        right: 0;
    }
    .achievementVoice__type02 {
        position: absolute;
        padding: 0 8px;
        color: #FFF;
        background-color: #4D4D4D;
        top: 31px;
        right: 0;
    }
    .achievementVoice__textBlock {
        width: 342px;
        padding: 16px;
        background-color: #FFF;
        margin: -32px 0 0 24px;
    }
    .achievementVoice__name {
        margin: 0;
        font-weight: 400;
        font-size: 18px
    }
    .achievementVoice__caption {
        color: #999;
        margin: 0 0 24px;
        font-size: 14px;
    }
    .achievementVoice__text {
        line-height: 2em;
    }
}
/*sp*/
@media only screen and (max-width: 767px){
    .achievementFig {
        display: block;
    }
    .achievementFig__block {
        width: 100%;
        margin: 60px 0;
    }
    .achievementFig__titleEn {
        color: #C7C7C7;
        font-size: 20px;
        text-align: center;
    }
    .achievementFig__title {
        margin: 8px auto 24px;
        text-align: center;
    }
    .achievementFig__titleBg {
        padding: 4px;
        color: #FFF;
        font-size: 18px;
        background-color: #4D4D4D;
    }
    .achievementVoice__title {
        margin: 40px auto;
        text-align: center;
    }
    .achievementVoice__titleBg {
        padding: 4px;
        color: #FFF;
        font-size: 20px;
        background-color: #4D4D4D;
    }
    .achievementVoice {
        display: block;
    }
    .achievementVoice__block {
        width: 92%;
        margin-bottom: 40px;
    }
    .achievementVoice__photo {
        width: 92%;
        position: relative;
        z-index: -10;
    }
    .achievementVoice__type {
        position: absolute;
        padding: 0 8px;
        color: #FFF;
        background-color: #4D4D4D;
        top: 0;
        right: 0;
    }
    .achievementVoice__typeTeacher {
        position: absolute;
        padding: 0 16px;
        color: #FFF;
        background-color: #4D4D4D;
        top: 0;
        right: 0;
    }
    .achievementVoice__type02 {
        position: absolute;
        padding: 0 8px;
        color: #FFF;
        background-color: #4D4D4D;
        top: 31px;
        right: 0;
    }
    .achievementVoice__textBlock {
        width: 92%;
        padding: 16px;
        background-color: #FFF;
        margin: -8% 0 0 8%;
    }
    .achievementVoice__name {
        margin: 16px 0 24px;
        font-weight: 600;
        font-size: 18px
    }
    .achievementVoice__text {
        line-height: 2em;
    }
}

/*= 今後の展望 =*/
/*pc*/
@media only screen and (min-width: 768px), print{
    .futureArea {
        background-image: url(../image/ugacademy/futureBg.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }
    .future__titleEn {
        padding-left: calc(calc(100vw - 1240px)/2);
        color: #FFF;
        z-index: 10;
        position: absolute;
        top: -80px;
    }
    .future__titleSub {
        padding-left: calc(calc(100vw - 1240px)/2);
        font-size: 20px;
        font-weight: 600;
        color: #FFF;
        z-index: 10;
        position: absolute;
        top: -35px;
    }
    .future__titleSubBg {
        padding-left: calc(calc(100vw - 1240px)/2);
        background-color: #4D4D4D;
        padding: 4px;
    }
    .future__titleMain {
        margin: 80px 0 40px; 
        font-size: 32px;
        line-height: 2.3em;
        z-index: 1;
        position: relative;
    }
    .future__titleMainBg {
        padding-left: calc(calc(100vw - 1240px)/2);
        padding-top: 40px;
        padding-right: 40px;
        padding-bottom: 40px;
        background-color: #FFF;
        font-weight: 600;
    }
    .futureBox {
        display: flex;
        justify-content: space-between;
        margin-bottom: 80px;
    }
    .future__leftBox {
        width: calc(50% - 40px);
    }
    .future__rightBox {
        width: calc(50% - 40px);
    }
    .future__textBlock {
        margin: 40px 0;
        color: #FFF;
        line-height: 2em;
    }
}
/*sp*/
@media only screen and (max-width: 767px){
    .futureArea {
        background-image: url(../image/ugacademy/futureBg.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }
    .future__titleEn {
        color: #FFF;
        z-index: 10;
        position: absolute;
        top: -40px;
        padding-left: 16px;
    }
    .future__titleSub {
        font-size: 16px;
        font-weight: 600;
        color: #FFF;
        z-index: 10;
        position: absolute;
        top: -10px;
    }
    .future__titleSubBg {
        background-color: #4D4D4D;
        padding: 4px;
        margin-left: 16px;
    }
    .future__titleMain {
        margin-top: 80px;
        font-size: 20px;
        z-index: 1;
        position: relative;
        padding: 20px 20px 20px 16px;
        background-color: #FFF;
    }
    .future__titleMainBg {
        font-weight: 600;
        line-height: 1.5em;
    }
    .futureBox {
        display: block;
    }
    .future__leftBox {
        width: 100%;
    }
    .future__rightBox {
        width: 100%;
        margin: 40px 0;
    }
    .future__textBlock {
        margin: 40px 0;
        color: #FFF;
        line-height: 2em;
    }
}

/*= お問い合わせ =*/
/*pc*/
@media only screen and (min-width: 768px), print{
    .academyInquiry_text {
        font-size: 20px;
        font-weight: 600;
        margin: 0 auto 40px;
        text-align: center;
    }
    .academyInquiry_btn {
        margin: 0 auto;
        text-align: center;
    }
    .academyInquiry_link {
        background-color: #43a047;
        transition: 0.3s;
        width: 300px;
        height: 60px;
        position: relative;
        font-size: 18px;
        font-weight: bold;
        color: #fff;
        padding: 16px 48px;
        box-sizing: border-box;
    }
    .academyInquiry_link:after {
        background-color: #2e7d32;
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        bottom: -10px;
        left: 0;
        z-index: -1;
        box-shadow: 10px 10px 30px rgb(0 0 0 / 20%);
        transition: 0.3s;
    }
    .academyInquiry_link:hover {
        background-color: #4dbf52;
        transition: 0.3s;
    }
}
/*sp*/
@media only screen and (max-width: 767px){
    .academyInquiry_text {
        font-size: 16px;
        font-weight: 600;
        margin: 0 auto 40px;
        text-align: center;
    }
    .academyInquiry_btn {
        margin: 0 auto;
        text-align: center;
    }
    .academyInquiry_link {
        background-color: #43a047;
        transition: 0.3s;
        width: 300px;
        height: 60px;
        position: relative;
        font-size: 18px;
        font-weight: bold;
        color: #fff;
        padding: 16px 48px;
        box-sizing: border-box;
    }
    .academyInquiry_link:after {
        background-color: #2e7d32;
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        bottom: -10px;
        left: 0;
        z-index: -1;
        box-shadow: 10px 10px 30px rgb(0 0 0 / 20%);
        transition: 0.3s;
    }
    .academyInquiry_link:hover {
        background-color: #4dbf52;
        transition: 0.3s;
    }
}

/*= アニメーション =*/
.u-fadeInAnimation--left, .u-fadeInAnimation--bottom {
    animation-duration: 1s;
    animation-timing-function: ease-out;
    animation-delay: 0;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-fill-mode: forwards; 
}
.u-fadeInAnimation--left {
    animation-name: fadeIn-left;
    animation-duration: 1.6s; 
}
.u-fadeInAnimation--bottom {
    animation-name: fadeIn-bottom; }
@keyframes fadeIn-left {
    0% {
        opacity: 0;
        transform: translate3d(-30px, 0, 0); 
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0); 
    } 
}
@keyframes fadeIn-bottom {
    0% {
        opacity: 0;
        transform: translate3d(0, 20px, 0); 
    }
    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0); 
    } 
}

/*2021.12 フッタにロゴ追加*/
.listLogoArea {
    display: flex;
    width: 90%;
}
@media only screen and (min-width: 768px){
    .listLogoArea__itemL {
        width: 80px;
    }
    .listLogoArea__itemR {
        width: 50px;
        margin-left: 24px;
    }
}

