/*===================================================================
	Generic
===================================================================*/
html, body {
/*    height: 100%;
    overflow: hidden;*/
}

html{
	font-size:62.5%;
}
body{
	font-size:1.4rem;
}
/*===================================================================
	Common
===================================================================*/
.section-container{
    position: relative;
    width: 1200px;
    margin: 0 auto;
    padding: 60px 48px;
}

@media screen and (max-width: 639px){
	h1.page-title{font-size:32px !important;}
	.section-container{
        	padding: 60px 24px;
	}
}
    
@media screen and (max-width: 1199px){
    .section-container{
        width: 100%;
    }
}

.plain-text p{
    margin-bottom: 2em;
}

.icon-right-arrow:before{
    display: inline-block;
    margin-left: 6px;
}

/*===================================================================
	Header Setting
===================================================================*/
header, header.fixed,
body.child-page header{
    position: fixed;
    height: 60px;
    background: #ffffff;
    border-bottom: solid 1px #eee;
    width: 100%;
    min-width: 1200px;
    padding: 0 24px;
    z-index: 1000;
    transition-duration: 0.3s;
}

header .header-container{
    position: relative;
    width: 1152px;
    margin: 0 auto;
}

header h1{
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 24px;
}

header h1 a{
    display: block;
    width: 100%;
    min-width: 192px;
    height: 60px;
    background-image: url('../img/logo_c.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    text-indent: -9999px;
    transition-duration: 0s;
    transform-origin: 0 0;
}

header.fixed h1 a,
body.child-page header h1 a{
    background-image: url('../img/logo_c.svg');   
}

header.fixed h1 a,
body.child-page header h1 a{
    height: 60px;
    width: 192px;
}

@media screen and (max-width: 639px){
    header, header.fixed, body.child-page header{
        height: 60px;
        padding: 0;
    }

    header h1 a{
        width: 160px;
        height: 60px;
    }
}

@media screen and (max-width: 1199px){
    header, header.fixed, body.child-page header{
        min-width: 0;
    }

    header .header-container{
        width: 100%;
    }
}

/*-------------------------------------------------------------------
    nav
-------------------------------------------------------------------*/
header nav.head-nav{
}

header nav.head-nav .main-nav{
    width: 50%;
    margin: 0 auto;
    padding: 0;
}

header nav.head-nav .main-nav > ul{
    display: table;
    height: 60px;
    margin: 0 0 0 auto;
    border-spacing: 24px 0;
    transition-duration: 0.3s;
}

header.fixed nav.head-nav .main-nav > ul,
body.child-page header nav.head-nav .main-nav > ul{
    height: 60px;
}

header nav.head-nav .main-nav > ul > li{
    display: table-cell;
    padding: 2px 0;
    vertical-align: middle;
}

header nav.head-nav .main-nav ul li:first-child{
    padding-left: 0;
}

body.child-page header nav.head-nav ul li.active{
    border-bottom: solid 2px #023f97;
    padding-bottom: 0;
}

header nav.head-nav ul li a{
    display: block;
    height: 44px;
    line-height: 44px;
    white-space: nowrap;
    color:#fff;
    transition-duration: 0.3s;
}

header nav.head-nav .main-nav ul li a, header nav.head-nav .sub-nav ul li a{
    color:#023f97;
}

header.fixed nav.head-nav .main-nav ul li a,
header.fixed nav.head-nav .sub-nav ul li a,
body.child-page header nav.head-nav .main-nav ul li a,
body.child-page header nav.head-nav .sub-nav ul li a{
    color: #333;
}

body.child-page header nav.head-nav ul li.active a,
body.child-page header nav.head-nav ul li.active a{
    color: #023f97;
}

header nav.head-nav ul li a:hover{
    color: #0360e5;
    transform: scale(1.1, 1.1);
}
header.fixed nav.head-nav ul li a:hover,
body.child-page header nav.head-nav ul li a:hover{
    color: #0360e5;
}

header nav.head-nav .main-nav ul li:first-child{
    padding-left: 0;
}

header nav.head-nav .main-nav ul.local-nav{
    display: none;
}

header nav.head-nav .sub-nav{
    position: absolute;
    top: 0;
    right: 0;
    width: 25%;
}

header nav.head-nav .sub-nav ul{
    display: table;
    height: 60px;
    margin: 0 12px 0 auto;
    border-spacing: 12px 0;
    transition-duration: 0.3s;
}

header.fixed nav.head-nav .sub-nav ul,
body.child-page header nav.head-nav .sub-nav ul{
    height: 60px;
}

header nav.head-nav .sub-nav ul li{
    display: table-cell;
    vertical-align: middle;
}

header nav.head-nav .sub-nav ul li:first-child{
    padding-left: 0;
}  

header nav.head-nav .sub-nav ul li a{
    font-size: small;
}

header nav.head-nav .short-cut{
    position: fixed;
    bottom: -64px;
    right: 0;
    width: 100%;
    transform: translate3d(0, -76px, 0);
}

header nav.head-nav .short-cut ul{
    display: table;
    margin: 0 auto;
    padding: 0 24px 0 24px;
    background: #181b1d;
    border-radius:  6px;
}

header nav.head-nav .short-cut ul li{
    display: table-cell;
    height: 64px;
    padding: 0 12px;
    vertical-align: middle;
}

header nav.head-nav .short-cut ul li a{
    position: relative;
    height: auto;
    padding: 6px 24px 6px 62px;
    line-height: 1.2em;
    text-align: center;
    font-size: 114.285%;
}

header nav.head-nav .short-cut ul li a .en{
    display: block;
    font-size: 85.714%;
    color: #3c8cff;
    letter-spacing: 0.08em;
}

header nav.head-nav .short-cut ul li a .icon{
    position: absolute;
    top: 6px;
    left: 12px;
    font-size: 222%;
}


header nav.head-nav .short-cut ul li a:hover{
    color: #aecfff !important;
}

header nav.head-nav .short-cut ul li a:hover .en{
    color: #5b9fff;
}

header .menu-open-button{
    display: none;
}

header .menu-close-button{
    display: none;
}

header nav.head-nav .sub-nav ul li a{
	height: 32px;
	line-height: 32px;
}

@media screen and (max-width: 979px){
    header .menu-close-button{
        display: block;
    }

    header .menu-close-button a{
        display: block;
        width: 72px;
        height: 60px;
        font-size: 140%;
        color: #fff;
        line-height: 60px;
        text-align: center;
        transition-duration: 0.3s;
    }

    header .menu-close-button a:hover{
        color: #aecfff;
        transform: scale(1.2, 1.2);
    }

    header nav.head-nav{
        position: fixed;
        top: 0;
        right: -280px;
        width: 280px;
        height: 100%;
        overflow-y: auto;
        background: #181b1d;
        z-index: 2000;
        transition-duration: 0.3s;
    }
    
    header nav.head-nav ul{
        height: auto !important;   
    }

    header nav.head-nav ul li a{
        border-radius: 0;
        color: #fff !important;
    }
    
    header nav.head-nav ul li a:hover{
        transform: none;
        color: #aecfff !important;
    }
    
    body.child-page header nav.head-nav ul li.active{
        border: 0;
    }
    
    body.child-page header nav.head-nav ul li.active a{
        background-color: #42484b;
    }

    header nav.head-nav .main-nav{
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
    }

    header nav.head-nav .main-nav > ul{
        display: block;
        height: auto;
        margin: 0;
    }

    header nav.head-nav .main-nav > ul > li{
        display: block;
        padding: 0;
    }

    header nav.head-nav .main-nav ul.local-nav{
        display: block;   
    }

    header nav.head-nav .main-nav ul.local-nav li a{
        padding-left: 48px;
        font-size: 86%;
    }
    
    header nav.head-nav .main-nav ul.local-nav li.active a{
        background-color: #5b6469;        
    }
        
    header nav.head-nav .sub-nav{
        position: static;
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
    }

    header nav.head-nav .sub-nav ul{
        display: block;
        height: auto;
        margin: 0;
        border-bottom: solid 1px rgba(255, 255, 255, 0.3);
    }

   header nav.head-nav .sub-nav ul li{
        display: block;       
    }
    
    header nav.head-nav .sub-nav ul li:last-child{
        display: none;
    }

    header nav.head-nav .main-nav > ul > li > a,
    header nav.head-nav .sub-nav > ul > li > a{
        padding: 0 24px;
        border-top: solid 1px rgba(255, 255, 255, 0.3);
        font-size: medium;
    }

	header nav.head-nav .sub-nav ul li a{
		height:44px;
		line-height:44px;
	}


    header nav.head-nav .short-cut{
        position: static;
        margin-top: 24px;
        transform: translate3d(0, 0, 0);
    }

    header nav.head-nav .short-cut ul{
        display: block;
        padding: 0;
    }
    
    header nav.head-nav .short-cut ul li{
        display: block;
        height: auto;
        margin-bottom: 12px;
    }

    header nav.head-nav .short-cut ul li a{
        border: solid 1px  rgba(255, 255, 255, 0.3);
        border-radius: 4px;
        text-align: left;
        font-size: 100%;
    }

    header nav.head-nav .short-cut ul li a:hover{
        border: solid 1px rgba(174, 207, 255, 0.5);
    }

	header nav.head-nav .short-cut ul li a .en{
		font-size:66%;
	}


    header .menu-open-button{
        display: block;
        position: fixed;
        top: 8px;
        right: 38px;
        transition-duration: 0.3s;
    }

    header.fixed .menu-open-button,
    body.child-page header .menu-open-button{
        top: 8px;
    }

    header .menu-open-button a{
        display: block;
        width: 42px;
        height: 42px;
        border: solid 1px rgba(2, 63, 151, 0.5);
        border-radius: 4px;
        font-size: 180%;
        color: #023f97;
        line-height: 44px;
        text-align: center;
        transition-duration: 0.3s;
    }

    header.fixed .menu-open-button a,
    body.child-page header .menu-open-button a{
        border: solid 1px rgba(0, 0, 0, 0.3);
        color: #333;
    }

    
    header .menu-open-button a:hover{
        border: solid 1px rgba(3, 96, 229, 0.5);
	color: #0360e5;
        transform: scale(1.2, 1.2);
    }

    header.fixed .menu-open-button a:hover,
    body.child-page header .menu-open-button a:hover{
        border: solid 1px rgba(3, 96, 229, 0.5);
        color: #0360e5;
    }
}

@media screen and (max-width: 639px){
    header .menu-open-button{
        top: 8px;
        right: 14px;
    }
}

@media screen and (min-width: 980px) and (max-width: 1199px){
    header nav.head-nav .main-nav > ul {
        border-spacing: 2.0vw 0;
    }

    header nav.head-nav .sub-nav > ul{
        border-spacing: 1.0vw 0;
    }
}

/*===================================================================
	Top Page Setting
===================================================================*/
/*-------------------------------------------------------------------
    Section Common
-------------------------------------------------------------------*/
.top-page .section-title-container{
    display: table;
    margin-bottom: 60px;
}

.top-page .section-title-container > li{
    display: table-cell;
    vertical-align: middle;
}

.top-page .section-title-container > li > h2.section-title{
    font-size: 240%;
    font-weight: 500;
}

.top-page .section-title-container > .title-more-link{
    padding-left: 24px;
}

.top-page .section-title-container > .title-more-link a{
    display: block;
    padding: 0 18px;
    background-size: 18px 12px;
    background-position: right center;
    background-repeat: no-repeat;
    color: #333;
    transition-duration: 0.3s;
}

.top-page .section-title-container > .title-more-link a:hover{
    color: #0360e5;
    transform: scale(1.1, 1.1);
}

.top-page .section-container h3{
    display: block;
    border-top: solid 4px #bfbbb4;
    font-size: large;
    font-weight: bold;
}

.top-page .section-container h3 > p{
    display: inline-block;
    margin-top: -4px;
    padding: 12px 0;
    border-top: solid 4px #023f97;
    color: #023f97;
}

.top-page .section-container .consumer-marketing h3 > p{
    border-top: solid 4px #A0A91C;
    color: #A0A91C;
}
.top-page .section-container .retail-marketing h3 > p{
    border-top: solid 4px #00a0df;
    color: #00a0df;
}
.top-page .section-container .ai-solution h3 > p{
    border-top: solid 4px #9B65B1;
    color: #9B65B1;
}

@media screen and (max-width: 639px){
    .top-page .section-title-container{
        display: block;
    }
    
    .top-page .section-title-container > li{
        display: block;
    }

    .top-page .section-title-container > li > h2.section-title{
        font-size: 200%;
    }

    .top-page .section-title-container > .title-more-link{
        padding-left: 0;
    }

    .top-page .section-title-container > .title-more-link a{
        display: inline-block;
        padding: 0 30px 0 0;
    }
}

/*-------------------------------------------------------------------
    Title Section
-------------------------------------------------------------------*/
.top-page .title-section{
    width: 100%;
    min-width: 1200px;
    background-image: url('../img/top_title_bg1.jpg');
    background-size: cover;
    background-position: center calc(50% + 48px);
    background-repeat: no-repeat;
}

.top-page .title-section .section-container{
    /*position: static;*/
}

.top-page .title-section .catch-copy-block{
    margin: 80px 0 20px ;
}

.top-page .title-section .catch-copy-block img {
    width: 100%;
    min-width: 200px;
    max-width: 360px;
    display: block;
    margin: 0 auto 0 0;
}

.top-page .title-section .catch-copy-block h2.catch-copy{
    font-size: 360%;
    font-weight: 100;
    letter-spacing: 0.1em;
    color: #fff;
	line-height:1.4;
}

.top-page .title-section .catch-copy-block p.sub-catch-copy{
    margin: 30px 0;
    font-size: 150%;
    font-weight: 100;
    color: #fff;
    line-height: 2em;
}

.top-page .title-section .catch-copy-block h2.catch-copy span,
.top-page .title-section .catch-copy-block p.sub-catch-copy span{
    display: block;
}

.top-page .title-section .catch-copy-block a.more-link{
    display: inline-block;
    border: solid 1px rgba(255, 255, 255, 0.5);
    border-radius: 4px;
    padding: 12px 18px;
    background-size: 18px 12px;
    background-position: right center;
    background-repeat: no-repeat;
    font-size: small;
    color: #fff;
    transition-duration: 0.3s;
}

.top-page .title-section .catch-copy-block a.more-link:hover{
    transform: scale(1.1, 1.1);
    border: solid 1px rgba(239, 126, 164, 0.5);
    color: #ffc5d8;
}

.top-page .title-section .features-block{
    position: absolute;
    width: 50vw;
    min-width: 600px;
    height: 674px;
    top: 0;
    left: 50%;
    overflow-x: hidden;
    transform-origin: 0 0;
    z-index: 500;
}

.top-page .title-section .features-block ul li{
    position: absolute;
    display: block;
    background-image: url('../img/top_title_front1.jpg');
    background-position: center center;
    background-size: 600px 668px;
    background-repeat: no-repeat;
    border-radius: 150px;
    transition-timing-function: linear;
}

.top-page .title-section .features-block ul li a{
    display: block;
    width: 259px;
    height: 259px;
    background-color: #fff;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    border-radius: 150px;
    transition-duration: 0.3s;
}

.top-page .title-section .features-block ul li a .feature-info{
    display: table-cell;
    width: 259px;
    height: 259px;
    padding: 24px;
    background: rgba(142, 16, 59, 0.9);
    border: solid 1px #fff;
    border-radius: 150px;
    text-align: center;
    vertical-align: middle;
    font-size: large;
    color: #fff;
    opacity: 0;
    transition-duration: 0.3s;
}


.top-page .title-section .features-block ul li a:hover{
    transform: scale(1.05, 1.05);
}

.top-page .title-section .features-block ul li a:hover .feature-info{
    opacity: 1;
}
    
@media screen and (max-width: 639px){
    .top-page .title-section .catch-copy-block{
        margin: 24px 0 0 ;
    }

    .top-page .title-section .catch-copy-block h2.catch-copy{
        font-size: 7vw;
    }

    .top-page .title-section .catch-copy-block p.sub-catch-copy{
        font-size: 4vw;
    }
}
    
@media screen and (max-width: 979px){
    .top-page .title-section{
        min-width: 0;
	background-size:cover !important;
        min-height:242px;
    }

    .top-page .title-section .catch-copy-block{
        margin: 60px 0 0 ;
        text-align: center;
    }

.top-page .title-section .catch-copy-block img{
	height:25vw;
	min-height:80px;
	width:auto;
	min-width:0px;
}

    .top-page .title-section .catch-copy-block p.sub-catch-copy{
        display: block;
        margin: 12px 0 24px;
    }

    .top-page .title-section .catch-copy-block h2.catch-copy span,
    .top-page .title-section .catch-copy-block p.sub-catch-copy span{
        display: inline-block;
        margin: 0 0.25em;
    }

    .top-page .title-section .features-block{
        display: none;
    }    
}

@media (min-width: 980px){
    .top-page .title-section .features-block ul li:nth-child(1){
        left: 1px;
        top: 271px;
        width: 259px;
        height: 259px;
        background-position: 0 -271px;
    }

    .top-page .title-section .features-block ul li:nth-child(2){
        left: 272px;
        top: 448px;
        width: 216px;
        height: 216px;
        background-position: -271px -448px;
    }

    .top-page .title-section .features-block ul li:nth-child(3){
        left: 456px;
        top: 271px;
        width: 157px;
        height: 157px;
        background-position: -455px -271px;
    }

    .top-page .title-section .features-block ul li:nth-child(4){
        left: 356px;
        top: 98px;
        width: 131px;
        height: 131px;
        background-position: -355px -98px;
    }
}

@media screen and (min-width: 640px) and (max-width: 979px){
    .top-page .title-section .catch-copy-block h2.catch-copy{
        font-size: 4vw;
    }
}
    
@media screen and (min-width: 980px) and (max-width: 1199px){
    .top-page .title-section{
        min-width: 0;
    }

    .top-page .title-section .catch-copy-block{
        margin: 9.16vw 0 0 ;
    }

    .top-page .title-section .catch-copy-block h2.catch-copy{
        font-size: 4vw;
    }

    .top-page .title-section .catch-copy-block p.sub-catch-copy{
        margin: 2.5vw 0;
    }
}

/*-------------------------------------------------------------------
    Services Section
-------------------------------------------------------------------*/
.top-page .services-section{
	background-color:#ffffff;
}

.services-section .section-container{
    padding-right: 0;
}

.top-page .services-section ul.services-list{
    width: 100%;
    margin-bottom: -48px;
    zoom: 1;
}

.top-page .services-section ul.services-list:after{content:'';display:block;clear:both;}

.top-page .services-section  ul.services-list li.service-item{
    position: relative;
    width: calc(100% / 3);
    margin-bottom: 48px;
    padding-right: 48px;
    vertical-align: top;
    float: left;
    transition-duration: 0.3s;
}

.top-page .services-section  ul.services-list li.service-item a{
    display: block;
    border-radius: 0 0 4px 4px;
}

.top-page .services-section  ul.services-list li.service-item a{
    display: block;
    border-radius: 0 0 4px 4px;
}

.top-page .services-section  ul.services-list li.service-item:hover{
    transform: scale(1.05, 1.05);
}

.top-page .services-section  ul.services-list li.service-item img{
	width:100%;
}

.top-page .services-section  ul.services-list li.service-item a h3 p{
    transition-duration: 0.3s;    
}

    
.top-page .services-section  ul.services-list li.service-item .service-description{
    transition-duration: 0.3s;
    color: #333;
}


@media screen and (max-width: 799px){
    .top-page .services-section  ul.services-list li.service-item{
        width: 100%;
        padding-right: 24px;
    }
    .top-page .services-section  ul.services-list li.service-item img{
	display:none;
    }
}
    
    
/*-------------------------------------------------------------------
    News Section
-------------------------------------------------------------------*/
.top-page .news-section{
	background-color:#e0dbd3;
}

.top-page .news-section .section-container{
    overflow: hidden;
}

.top-page .news-section .section-title-container > li > h2.section-title{
    /*width: 91px;
    height: 27px;
    background-image: url('../img/top_h_news.png');*/
}

.news-section .section-container > ul.news-list-container{
    display: table;
    border-spacing: 48px 0;
    margin: 0 -48px -48px;
}

.top-page .news-section .list-block{
    display: table-cell;
    position: relative;
    width: 50%;
    padding-bottom: 96px;
}

.top-page .news-section .list-block ul{
    margin-top: -12px;
}

.top-page .news-section .list-block ul li a{
    display: table;
    padding: 12px 0 6px;
    border-spacing: 0;
    border-radius: 4px;
    transition-duration: 0.3s;
}

.top-page .news-section .list-block ul li a:hover{
    transform: scale(1.05, 1.05);
}

.top-page .news-section .list-block ul li a span{
    display: table-cell;
    padding-bottom: 6px;
}

.top-page .news-section .list-block ul li a .date{
    width: 7em;
    white-space: nowrap;
    color: #023f97;
    transition-duration: 0.3s;
}

.top-page .news-section .list-block ul li a:hover .date{
    color: #0360e5;
}

.top-page .news-section .list-block ul li a .title{
    color: #333;
    transition-duration: 0.3s;
}

.top-page .news-section .list-block ul li a:hover .title{
    color: #0360e5;
}

.top-page .news-section .list-block a.more-link{
    display: block;
    position: absolute;
    bottom: 48px;
    right: 0;
    width: 100%;
    padding:6px 18px;
    background-size: 18px 12px;
    background-position: right center;
    background-repeat: no-repeat;
    border: solid 1px rgba(0, 0, 0, 0.3);
    border-radius: 4px;
    font-size: small;
    color: #333;
    text-align: right;
    transition-duration: 0.3s;
}

.top-page .news-section .list-block a.more-link:hover{
    border: solid 1px rgba(3, 96, 229, 0.5);
    color: #0360e5;
    transform: scale(1.05, 1.05);
}

@media screen and (max-width: 980px){
    .top-page .news-section .list-block ul li a{
        display: block;
    }

    .top-page .news-section .list-block ul li a span{
        display: block;
    }
}

@media screen and (max-width: 640px){
    .news-section .section-container > ul{
        display: block;
        width: 100%;
        border-spacing: 0;
        margin-left: 0;
    }

    .news-section .section-container > ul.news-list-container{
        display: table;
        border-spacing: 0;
        margin: 0 0 -48px;
    }

    .top-page .news-section .list-block{
        display: block;
        width: 100%;
        padding-bottom: 108px;
    }

    .top-page .news-section .list-block a.more-link{
        line-height: 42px;
        padding: 0 30px 0 18px;
    }
}
    
/*-------------------------------------------------------------------
    Blog Section
-------------------------------------------------------------------*/
.top-page .blog-section{
	display:none;
	background-color:#ffffff;
}

.top-page .blog-section .section-container{
    padding-right: 0;
}

.top-page .blog-section .section-title-container > li > h2.section-title{
    /*width: 80px;
    height: 27px;
    background-image: url('../img/top_h_blog.png');*/
}

.top-page .blog-section ul.articles-list{
    margin-bottom: -48px;
    zoom: 1;
}

.top-page .blog-section ul.articles-list:after{content:'';display:block;clear:both;}

.top-page .blog-section ul.articles-list li{
    width: 25%;
    padding: 0 48px 48px 0;
    float: left;
}

.top-page .blog-section ul.articles-list li a{
    display: block;
    position: relative;
    padding-bottom: 12px;
    border-radius: 4px;
    transition-duration: 0.3s;
}

.top-page .blog-section ul.articles-list li a:hover{
    transform: scale(1.05, 1.05);
}

.top-page .blog-section ul.articles-list li a .thumbnail-image img{
    width: 100%;
	vertical-align:top;
}

.top-page .blog-section ul.articles-list li a .post-title{
    display: block;
    margin: 12px 0 6px;
    color: #333;
    transition-duration: 0.3s;
}

.top-page .blog-section ul.articles-list li a:hover .post-title{
    color: #e22263;
}

.top-page .blog-section ul.articles-list li a .date{
    display: block;
    color: #9e1241;
    transition-duration: 0.3s;
}

.top-page .blog-section ul.articles-list li a:hover .date{
    color: #e22263;
}

.top-page .blog-section ul.articles-list li.new a:after{
    content: 'New!';
    display: block;
    position: absolute;
    top: -8px;
    left: -8px;
    width: 40px;
    height: 40px;
    background: #333;
    font-size: x-small;
    color: #fff;
    line-height: 40px;
    text-align: center;
    border-radius: 30px;
}

.top-page .blog-section ul.articles-list li.pickup a:before,
.top-page .blog-section ul.articles-list li.news a:before,
.top-page .blog-section ul.articles-list li.research a:before,
.top-page .blog-section ul.articles-list li.sns a:before
{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    min-width: 66px;
    padding: 2px 6px;
    font-size: small;
    color: #fff;
    text-align: center;
    opacity: 0.9;
}

.top-page .blog-section ul.articles-list li.pickup a:before{
    content: 'ピックアップ';
    background-color: #c9153e;
}

.top-page .blog-section ul.articles-list li.research a:before{
    content: 'リサーチ';
    background-color: #e28717;
}

.top-page .blog-section ul.articles-list li.news a:before{
    content: 'ニュース';
    background-color: #56b432
}

.top-page .blog-section ul.articles-list li.sns a:before{
    content: 'SNS';
    background-color: #0f8a85
}

@media screen and (max-width: 639px){
    .top-page .blog-section ul.articles-list li{
        width: 100%;
        padding-right: 24px;
    }       
}

@media screen and (min-width: 640px) and (max-width: 979px){
    .top-page .blog-section ul.articles-list li{
        width: 50%;
    }
}

@media screen and (min-width: 980px) and (max-width: 1199px){
    .top-page .blog-section ul.articles-list li{
        width: 33.3%;    
    }
    
    .top-page .blog-section ul.articles-list li:last-child{
        display: none;
    }
}
    
/*-------------------------------------------------------------------
    Separator
-------------------------------------------------------------------*/
.top-page .separator{
    width: 100%;
    min-width: 1200px;
    height: 192px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.top-page .separator1{
    background-image: url('../img/separator1_bg.jpg');
}

.top-page .separator2{
    background-image: url('../img/separator1_bg.jpg');
}

@media screen and (max-width: 639px){
    .top-page .separator{
        min-width: 0;
        height: 32vw;
    }    
}

@media screen and (min-width: 640px) and (max-width: 1199px){
    .top-page .separator{
        min-width: 0;
        height: 16vw;
    }    
}

/*===================================================================
	Child Page Setting
===================================================================*/
/*-------------------------------------------------------------------
    Breadcrumb
-------------------------------------------------------------------*/
.breadcrumb{
    position: fixed;
    top: 60px;
    width: 100%;
    height: 44px;
    padding: 8px 48px;
    background: #9e1241;
    background: rgba(255, 255, 255, 0.9);
    border: none;
    border-radius: 0;
    font-size: small;
    color: rgba(255, 255, 255, 0.7);
    transition-duration: 0.3s;
    transition-property: background;
	overflow:hidden;
	white-space:nowrap;
	z-index:999;
}

.breadcrumb ul{
    width: 100%;
    max-width: 1104px;
    margin: 0 auto;
}


.breadcrumb li{
    display: inline-block;
    color: #023f97;
    line-height: 28px;
}

.breadcrumb li:after{
    content: '/';
    display: inline-block;
    margin-right: 8px;
    color: #aaa;
}

.breadcrumb li:last-child:after{
    content: '';
}
    
.breadcrumb a{
    display: inline-block;
    margin-right: 8px;
    border-radius: 4px;
    color: #333;
    transition-duration: 0.3s;
}

.breadcrumb a:hover{
    color: #0360e5;
    transform: scale(1.2, 1.2);
}

@media screen and (max-width: 639px){
    .breadcrumb{
        padding: 8px 24px;
    }
}


/*-------------------------------------------------------------------
    Page Body
-------------------------------------------------------------------*/
.page-body{
    width: 100%;
    max-width: 1200px;
    margin:0 auto;
    padding: 104px 24px 0;
}

body.two-column .page-body{
    display: table;
}

body.two-column .main-column{
    display: table-cell;
    width: 75%;
    padding: 0 24px 60px;
    vertical-align: top;
}

body.two-column .sub-column{
    display: table-cell;
    width: 25%;
    padding: 0 24px 60px;
    vertical-align: top;
}

@media screen and (max-width: 979px){
    body.two-column .main-column{
        width: 100%;
    }

    body.two-column .sub-column{
        display: none;
    }
}

@media screen and (max-width: 639px){
    body.two-column .main-column{
        padding: 0 0 60px;
    }
}

/*-------------------------------------------------------------------
    Page Title
-------------------------------------------------------------------*/
h1.page-title{
    width: 100%;
    font-size: 300%;
    font-weight: 100;
    line-height: 160px;
}

/*-------------------------------------------------------------------
    Local Nav
-------------------------------------------------------------------*/
nav.local-nav{
    /*position: fixed;*/
    margin: 4px 0;
    border-left: solid 1px #95a0a5;
}

nav.local-nav ul{
    padding: 156px 0;   
}

nav.local-nav ul li a{
    display: block;
    margin-left: -1px;
    padding: 6px 12px;
    border-radius: 0 4px 4px 0;
    color: #333;
    transition-duration: 0.3s;
    transform-origin: 0% 50%;
}

nav.local-nav ul li a:hover{
    color: #0360e5;
    transform: scale(1.1, 1.1);
}

nav.local-nav ul li.active a{
    background-color: #023f97;
    color: #fff;
}

nav.local-nav ul li.active a:hover{
    background-color: #0360e5;
}

/*===================================================================
	Child Page Setting
===================================================================*/
.child-page .top-image{
    margin-bottom: 48px;
}

/*===================================================================
	Footer Setting
===================================================================*/
footer{
    position: relative;
    width: 100%;
    background: #42484b;
}

footer .site-map-block{
    max-width: 1200px;
    margin: 0 auto;
    padding: 48px;
}

footer .site-map-block h2{
    color: #fff;
}

footer .site-map-block a{
    color: #91afbe;
}

footer .copyright-block{
	font-size:0.8rem;
	color:#fff;
	text-align:right;
	margin:0 24px 0 auto;
}

footer .footer-upper{
	background-color:#f3f3f3;
}
body.top-page footer .footer-upper{
	background-color:#fff;
}
footer .footer-lower{
	background-color:#42484b;
}

.footer-upper h3{
	font-size:200%;
	text-align:center;
	padding-bottom:20px;
}

footer .footer-container{
	width: 1152px;
	margin: 0 auto;
	padding:24px 0;
}

footer .footer-upper .footer-container{
	position:relative;
}

.footer-nav{
	position:relative;
}

.footer-main-nav {
    width: 50%;
    margin: 0 auto 0 0;
    padding: 0;
}

.footer-sub-nav {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
}


.footer-main-nav ul {
    height: 60px;
    display: table;
    margin: 0 auto 0 0;
    border-spacing: 24px 0;
}

.footer-main-nav ul li {
    display: table-cell;
    padding: 2px 0;
    vertical-align: middle;
}

.footer-main-nav ul li a {
    display: block;
    height: 44px;
    line-height: 44px;
    white-space: nowrap;
    color: #fff;
    transition-duration: 0.3s;
}

.footer-main-nav ul li a:hover {
    color: #aecfff;
    transform: scale(1.1, 1.1);
}

.footer-main-nav ul li a span.icon{
	margin-right:5px;
}

.footer-sub-nav ul {
    height: 30px;
    display: table;
    margin: 0 12px 0 auto;
    border-spacing: 12px 0;
}

.footer-sub-nav ul li {
    display: table-cell;
    vertical-align: middle;
}
.footer-sub-nav ul li a{
    display: block;
    height: 44px;
    line-height: 44px;
    white-space: nowrap;
    color: #fff;
    transition-duration: 0.3s;
}
.footer-sub-nav ul li a:hover{
    color: #aecfff;
    transform: scale(1.1, 1.1);
}

body.child-page{
	position:relative;
}

body.service .title-section, body.company .title-section{
	width:100%;
	height:440px;
	background-size:cover;
	background-position-x:50%;
	background-position-y: 0;
	background-repeat:no-repeat;
	background-attachment: fixed;
}


body.child-page.service .page-body, body.company.company-top .page-body{
	padding:0px 24px 60px;
}


body.child-page.service.one-column .main-column{
	padding:0px 24px;
}

body.company.one-column .main-column{
	padding:0px 24px;
}

body.news.one-column .main-column{
	padding:0px 24px;
}



body.child-page.ir footer .footer-upper{
	display:none;
}
body.child-page.recruit footer .footer-upper{
	display:none;
}
body.child-page.company footer .footer-upper{
	display:none;
}
body.child-page.vision footer .footer-upper{
	display:none;
}

body.child-page.none-page footer .footer-upper{
	display:none;
}


body.child-page #footerContainer{
	width:100%;
}

.form-link-container{
	width:100%;
	display:table;
	border-spacing:48px 0;
}

.form-link-item{
	display: table-cell;
	width: 100%;
	text-align:center;
	height:auto;
	line-height:1.2em;
}

.form-link-item a.form-link{
	padding: 0px;
	border: solid 1px rgba(55,174,139,0.5);
	background:#37ae8b;
	border-radius: 6px;
	color: #ffffff;
	text-align: center;
	width:35%;
	transition-duration: 0.3s;
 	margin: 5px auto;
	display:inline-block;
	height:60px;
	line-height:60px;
}
.form-link-item a.form-link:hover{
	background: initial;
	background: rgba(0,0,0,0);
	color: #37ae8b;
	transform: scale(1.05, 1.05);
}
.form-link-item a.form-link .form-link-box{
	display:table;
	border-spacing:12px 0;
	margin:0 auto;
}

.form-link-item a.form-link .form-link-box span{
	display:table-cell;
	vertical-align:middle;
	font-size:114.285%;
}
.form-link-item.left{
	text-align: right;
	width:50%;
}
.form-link-item.right{
	text-align: left;
	width:50%;
}

.form-link-item.left a.form-link, .form-link-item.right a.form-link {
    width: 70%;
}

.form-link-item a.form-link .form-link-box span.icon{
	font-size:200%;
}


.call-link{
	padding: 6px 18px;
	font-size: small;
	color: #333;
	text-align: center;
	width:100%;
	transition-duration: 0.3s;
 	margin: 5px auto;
	display:inline-block;
}

body.top-page .jpx-logo{
	display:block;
	position: absolute;
	right: 16px;
	bottom:10px;
	width: 70px;
	height: 70px;
	background-image: url(../img/logo_jpx.png);
	background-repeat:no-repeat;
	background-size:cover;
}


.jpx-logo{
	display:none;
}


footer .page-top-link{
    position: fixed;
    bottom: -53px;
    right: 12px;
    z-index: 1200;
}

footer .page-top-link a{
    display: block;
    width: 42px;
    height: 42px;
    background-color: #181b1d;
    border-radius: 6px;
}

footer .page-top-link a:hover{
    color: #ffc5d8;
}

footer .page-top-link a .icon-up-arrow{
    display: block;
    color: #fff;
    line-height: 42px;
    text-align: center;
    transition-duration: 0.3s;
}
    
footer .page-top-link a:hover .icon-up-arrow{
    color: #aecfff;
    transform: scale(1.3, 1.3);
}

@media screen and (max-width: 1199px) and (min-width: 980px){
.footer-main-nav ul {border-spacing: 2.0vw 0;}
.footer-sub-nav ul{border-spacing: 1.0vw 0;}
}
@media screen and (max-width: 1199px){
footer .footer-container{width:100%;padding:24px;}
.jpx-logo{right:40px;}
}

@media screen and (max-width: 979px){
	.form-link-container{display:block;}
	.form-link-item{display:block;width:100%;}
	.form-link-item.left{text-align:center;width:100%;margin:0 auto;}
	.form-link-item.right{text-align:center;width:100%;margin:0 auto;}
	footer .page-top-link{ z-index: 999;}
	.form-link-item.left a.form-link, .form-link-item.right a.form-link {width: 50%;}

}

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

	body.child-page.service.one-column .main-column{
		padding:0 12px;
	}

	body.company.one-column .main-column{
		padding:0;
	}

	body.news.one-column .main-column{
		padding:0;
	}

	footer .footer-upper .footer-container{padding:24px 24px 60px;}
	footer .footer-lower .footer-container{padding:24px;}
	.footer-upper h3{font-size:142.857%;}
	.form-link-item a.form-link{width:100%;}
	.form-link-item.left a.form-link, .form-link-item.right a.form-link {width: 100%;}
	.footer-main-nav{width:100%;}
	.footer-sub-nav{position:initial;width:100%;}
	.footer-sub-nav{position:auto;}
	.footer-sub-nav ul{border-spacing:24px 0;margin:0;}
	footer .copyright-block{text-align:center;margin:0;}
	footer .page-top-link{display:none;}
	.jpx-logo{right:16px;}


}




/*===================================================================
	CTA Setting
===================================================================*/

.cta-frame {
    width: 60%;
    margin: 72px auto 22px;
    padding: 30px 20px;
    background-color: #1c1c2b;
    border-radius: 8px;
    text-align: center;
}

.cta-frame > h4 {
    color: #ffffff;
    font-size:22px;
    background:none;
    padding:10px;
    margin-bottom:10px;
}

.cta-frame > a {
    color: #ffffff;
    font-size:22px;
    font-weight:bold;
    display:block;
    background-color:#b22222;
    padding:14px;
    border-radius:8px;
    width:60%;
    text-align:center;
    margin:0px auto;
    text-decoration:none;
    transition-property:all;
    transition:0.3s linear;
}

/*===================================================================
	nav(max-width) Setting
===================================================================*/
@media screen and (max-width: 979px){

header nav.head-nav .main-nav ul.local-nav {
    display: none;
}

header nav.head-nav .main-nav li.active ul.local-nav {
    display: block;
}

}

/*===================================================================
	News archives Setting
===================================================================*/

body.news .news-list{
    padding-bottom: 60px;
}


body.news .news-list h2{
    display: block;
    border-top: solid 4px #bfbbb4;
    font-size: large;
    font-weight: bold;
}

body.news .news-list h2 > p{
    display: inline-block;
    margin-top: -4px;
    padding: 12px 0;
    border-top: solid 4px #023f97;
    color: #023f97;
}

.news-list > ul.news-list-container{
    display: table;
    border-spacing: 48px 0;
    margin: 0 -48px -48px;
}

body.news .list-block{
    display: table-cell;
    position: relative;
    width: 50%;
    padding-bottom: 96px;
}

body.news .list-block ul{
    margin-top: -12px;
}

body.news .list-block ul li a{
    display: table;
    padding: 12px 0 6px;
    border-spacing: 0;
    border-radius: 4px;
    transition-duration: 0.3s;
}

body.news .list-block ul li a:hover{
    transform: scale(1.05, 1.05);
}

body.news .list-block ul li a span{
    display: table-cell;
    padding-bottom: 6px;
}

body.news .list-block ul li a .date{
    width: 7em;
    white-space: nowrap;
    color: #023f97;
    transition-duration: 0.3s;
}

body.news .list-block ul li a:hover .date{
    color: #0360e5;
}

body.news .list-block ul li a .title{
    color: #333;
    transition-duration: 0.3s;
}

body.news .list-block ul li a:hover .title{
    color: #0360e5;
}

body.news .list-block a.more-link{
    display: block;
    position: absolute;
    bottom: 48px;
    right: 0;
    width: 100%;
    padding:6px 18px;
    background-size: 18px 12px;
    background-position: right center;
    background-repeat: no-repeat;
    border: solid 1px rgba(0, 0, 0, 0.3);
    border-radius: 4px;
    font-size: small;
    color: #333;
    text-align: right;
    transition-duration: 0.3s;
}

body.news .list-block a.more-link:hover{
    border: solid 1px rgba(3, 96, 229, 0.5);
    color: #0360e5;
    transform: scale(1.05, 1.05);
}

@media screen and (max-width: 980px){
    body.news .list-block ul li a{
        display: block;
    }

    body.news .list-block ul li a span{
        display: block;
    }
}

@media screen and (max-width: 640px){
    .news-list > ul{
        display: block;
        width: 100%;
        border-spacing: 0;
        margin-left: 0;
    }

    .news-list > ul.news-list-container{
        display: table;
        border-spacing: 0;
        margin: 0 0 -48px;
    }

    body.news .list-block{
        display: block;
        width: 100%;
        padding-bottom: 108px;
        margin-bottom: 60px;
    }

    body.news .list-block a.more-link{
        line-height: 42px;
        padding: 0 30px 0 18px;
    }
}


body.news li.news-archives-list{
	margin-top:-12px;
}
body.news li.news-archives-list a{
	display:table;
	padding:12px 0px 6px;
	border-spacing:0;
	border-radius:4px;
	transition-duration:0.3s;
}

body.news li.news-archives-list span{
	display:table-cell;
	padding-bottom:6px;
}
body.news li.news-archives-list .date{
	width:7em;
	white-space:nowrap;
	color: #023f97;
	transition-duration:0.3s;
}
body.news li.news-archives-list .title{
	color:#333;
	transition-duration:0.3s;
}

body.news li.news-archives-list a:hover{
	transform:scale(1.05, 1.05);
}

body.news li.news-archives-list a:hover .date{
	color: #0360e5;
}

body.news li.news-archives-list a:hover .title{
	color: #0360e5;
}


body.news article{margin-bottom:66px;}
body.news .post-infomation{margin-bottom:66px;padding-bottom:20px;border-bottom:solid 1px #95a0a5;}
body.news h1.post-title{width:100%;font-size:200%;font-weight:bold;padding:30px 0px 10px;line-height:150%;}

body.news .page-body article h2{font-weight:bold;margin-bottom:2em;}
body.news .page-body article h3{font-weight:bold;}

body.news .breadcrumb li{vertical-align:text-top;}
body.news li.breadcrumb-carrent{
	text-overflow:ellipsis;
	overflow:hidden;
	white-space:nowrap;
	width:50%;
}

.share-button-blcok {
    width: 100%;
}

body.news .share-button-block .inner-block {
    width: 50%;
    margin-bottom: 48px;
    vertical-align: top;
    float: left;
}

body.news .share-button-block .inner-block.left{
	    padding-right: 48px;

}
body.news .share-button-block .inner-block.right{
	    padding-left: 48px;

}

body.news .share-button-block .inner-block a {
    text-align: center;
    width: 100%;
    border-radius: 8px;
    color: #fff;
    font-size: 114.285%;
    padding: 15px;
    display: inline-block;
	transition-duration:0.3s;
}

body.news .share-button-block .inner-block a.fb-share-button{
    background-color:#3B5999;
    border:solid 1px #3B5999;
}
body.news .share-button-block .inner-block a.tw-share-button{
    background-color:#55acee;
    border:solid 1px #55acee;
}

body.news .share-button-block .inner-block a:hover{
	background-color:#fff;
	transform:scale(1.05, 1.05);
}


body.news .share-button-block .inner-block a.fb-share-button:hover{
    color:#3B5999;
}
body.news .share-button-block .inner-block a.tw-share-button:hover{
    color:#55acee;

}



body.news .share-button-block .inner-block a .icon{
	padding-right:10px;
}


@media screen and (max-width: 639px){
	body.news .news-category-list .news-category-title-container > li{
		display:block;
	}
	body.news .news-category-list .news-category-title-container > li.title-more-link{
		display:block;
		padding-left:0px;
	}
	body.news .news-category-list .news-category-title-container > li.title-more-link a{
		display:inline-block;
		padding:0 30px 0 0;
	}

	body.news h1.post-title{font-size:120%;padding:20px 0 10px;}

	body.news .news-category-list .news-category-title-container{}
	body.news .news-category-list h2{font-size: 142.857%;font-weight: bold;}
	body.news .post-infomation{margin-bottom:40px;}

	body.news .share-button-block .inner-block {width:100%;margin-bottom:24px;}
	body.news .share-button-block .inner-block.left{padding-right: 0;}
	body.news .share-button-block .inner-block.right{padding-left: 0;}

}

@media screen and (max-width: 980px){
	body.news li.news-archives-list a{display:block;}
	body.news li.news-archives-list span{display:block;}
}





/*===================================================================
	Contact form Setting
===================================================================*/

body.child-page.contact.one-column .main-column{
	padding:0 24px 60px;
}

body.contact h1.page-title{
	line-height:80px;
	margin-bottom:20px;
}

body.contact p.catch-copy{
	font-size: 175%;
	margin-bottom: 5px;
	color: #ea695b;
}
body.contact p.introduction {
	font-size: 114.28%;
}

body.contact p .tel-number{
	font-weight:bold;
	font-size:105%;
}

body.contact .tel-number-block{text-align:center; margin:20px 0;}
body.contact .tel-number-block .tel-number{font-size:160%; margin-left:-20px;}
body.contact .tel-number-block .reception-time{font-size:85.714%;}


/*固定ページ 問い合わせフォーム設定*/

.form-list {
	width:100%;
	margin-bottom:20px;
}

.form-list dl{
	text-align: left;
	width:100%;
}

.form-list dl.trial{
	min-height:290px;
}

.form-list dl dt{
	width: 100%;
	vertical-align: top;
	padding-top:4px;
	font-weight: bold;
	font-size:114.28%;
	margin-bottom:5px;
}

.form-list dl dd{
	width: 100%;
	margin-bottom:20px;
}

.form-list dl dd input[type="text"]{
	width: 100%;
}
.form-list dl dd input[type="email"]{
	width: 100%;
}

.form-list dl dd input[type="tel"]{
	width: 100%;
}

.form-list dl dd textarea{
	width: 100%;
	resize:none;
}

.form-submit{
	text-align:center;
}

.form-submit input[type="submit"]{
	width: 80%;
	border-radius:8px;
	border: solid 1px #4BACC6;
	background-color: #4BACC6;
	padding: 15px;
 	font-size: 120%;
	font-weight:bold;
	color: #ffffff;
	transition-property:all;
	transition:0.3s linear;
}
.form-submit input[type="submit"]:hover{
	background-color: initial;
	background-color: rgba(0,0,0,0);
	color: #4BACC6;
}
div.wpcf7-response-output{
	margin: 2em auto 1em;
	text-align: center;
}
div.wpcf7 img.ajax-loader{
	display: none;
}

.form-list dl dt span.required{
	font-size: 80%;
	font-weight: normal;
	vertical-align: middle;
	margin-left: 10px;
	background: #ea695b;
	color: #ffffff;
	padding: 2px 4px;
	border-radius: 4px;
}

.form-list dl dt span.optional{
	font-size: 80%;
	font-weight: normal;
	vertical-align: middle;
	margin-left: 10px;
	background: #4B5060;
	color: #ffffff;
	padding: 2px 4px;
	border-radius: 4px;
}

body.contact .form-tab{padding:5px 10px;color:#333;border-top-left-radius:6px;border-top-right-radius:6px;transition-duration:0.3s;display:inline-block;margin-right:5px;font-size:150%;}
body.contact .form-tab:hover{color:#e22263;}
body.contact .form-tab.active:hover{color:#333;}
body.contact .form-tab-area:after{content:"";display:block;clear:both;}
body.contact .form-tab-area > ul > li{float:left;}


body.contact .form-section{
	display:none;
	padding:30px;
	background-color:#ffffff;
	transition-duration:0.3s;
	border-radius:4px;
}

body.contact .form-tab.general-tab.active, body.contact .form-section.general.active{
	background-color: #e0dbd3;
}
body.contact .form-tab.request-tab.active, body.contact .form-section.request.active{
	background-color: #e0dbd3;
}

body.contact .form-tab.ir-tab.active, body.contact .form-section.ir.active{
	background-color: #e0dbd3;
}
	body.contact .form-tab.active{font-weight:bold;}
body.contact .form-section.active{
	display:block;
}

body.contact .form-section .form-section-container{
	margin:0 auto;
	width:70%;
}

body.contact .select-block {
	width: 50%;
	float: left;
}
body.contact .description-block {
	width: 50%;
	float: left;
}

body.contact span.wpcf7-list-item {
	display: block;
}

body.contact .form-list dl:after{
	clear: both;
	content: "";
	display: block;
}

body.contact .service-description{
	display:none;
	margin:10px 0px;
	text-align:center;
}
body.contact .service-description.active{
	display:block;
}

body.contact .service-description img{
	width:80%;
}

body.contact .service-description .tool-name{
	font-size:100%;
	font-weight:bold;
}

body.contact .service-description .catchcopy{
	font-size:85.714%;
	display:inline-block;
	line-height:150%;
	text-align:left;
}

body.contact .wpcf7-response-output{
	margin: 2em auto 1em;
}

body.contact .wpcf7-mail-sent-ok, body.recruit .wpcf7-mail-sent-ok{
	border-color:#4ee222;
	border-radius:4px;
}

body.contact .wpcf7-mail-sent-ng, body.recruit .wpcf7-mail-sent-ng{
	border-color:#e22222;
	border-radius:4px;
}

body.contact .wpcf7-spam-blocked, body.recruit .wpcf7-spam-blocked{
	border-color:#e29322;
	border-radius:4px;
}

body.contact .wpcf7-validation-errors, body.recruit .wpcf7-validation-errors{
	border-color:#e2ce22;
	border-radius:4px;
}

@media only screen and (max-width: 979px) {

	body.contact .form-section .form-section-container{
		width:90%;
	}
}



/*media Queries スマートフォンサイズ
----------------------------------------------------*/
@media only screen and (max-width: 579px) {


	.form-list dl dt{
		display:block;
		width: 100%;
		padding-bottom: 4px;

	}

	.form-list dl dd{
		display:block;
		width: 96%;

	}
	body.contact .form-section{padding:30px 0px;}

	body.contact .form-section .form-section-container{
		width:100%;
	}

	body.contact .select-block{
		width:100%;
	}
	body.contact .description-block{
		width:0px;
		display:none !important;
	}

	body.contact .form-tab{padding:0;}
	body.contact .form-tab.active, body.contact .form-section.active{background-color:#ffffff !important;}
	body.contact .form-tab.active{color:#9e1241;}
	body.contact .form-tab-area{margin-bottom:20px;}
	body.contact .form-tab-area > ul > li{float:none;}
	body.contact .wpcf7-response-output{
		margin: 2em auto 1em 2px;
		width:96%;
	}


}/*スマートフォンサイズここまで*/

@media screen and (max-width: 639px){
	body.child-page.contact.one-column .main-column{
		padding:0 0 60px;
	}
}

/*media Queries PCサイズ
----------------------------------------------------*/
@media only screen and (min-width: 879px) {
table#form-table>tbody>tr>th{
	width: 25%;

}

table#form-table>tbody>tr>td{
	width: 75%;

}
table#form-table>tbody>tr>td input[type="text"]{
	width: 66%;
}
table#form-table>tbody>tr>td input[type="email"]{
	width: 66%;
}

table#form-table>tbody>tr>td input[type="tel"]{
	width: 66%;
}

table#form-table>tbody>tr>td textarea{
	width: 66%;
}

table#form-table>tbody>tr>td textarea{
	width: 66%;
}

table#form-table>tbody>tr>td label{
	margin-right:20px;
}

.form-submit{
	text-align:center;
}

.form-submit input[type="submit"]{
	width: 50%;
}

}
/*-- PCサイズここまで --*/

/* 完了画面 */
body.contact .modal-contact-message{
	z-index: 1015;
	display: none;
	position: fixed;
	top: 100px;
	left: 100px;
	width: 70%;
	max-width:524px;
	height: auto;
	background-color: #ffffff;
	border-radius: 8px;
	box-shadow: 0px 10px 20px #333;
}
body.contact .message-area {
	margin: 0 auto;
	padding: 48px 0;
	font-size: 150%;
	width: 80%;
	color: #ea695b;
}
body.contact .message-area span{
    display: block;
}
body.contact .modal-close{
	position: absolute;
	width: 24px;
	height: 24px;
	border-radius: 18px;
	background: #ea695b;
	top: -12px;
	right: -12px;
	background-image: url('../img/contact_modal_close.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 70%;
}
body.contact .modal-overlay{
	z-index:1010;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(0,0,0,0.7);
}
@media screen and (max-width:639px){
body.contact .modal-contact-message{
	width:80%;
	top:40px;
	height:auto;
	border-radius:8px;
}
body.contact .message-area {
	font-size:114.28%;
	padding:24px 0;
}
}



/*===================================================================
	Service Child Page Setting
===================================================================*/
h1.page-title.service-child-page-title{line-height:320px;color:#ffffff;}

.consumer-marketing h1.page-title.service-child-page-title{background-repeat:no-repeat;background-position:center left;background-size:84px;padding-left:84px;background-image:url(../img/service_title_icon01.png);}
.retail-marketing h1.page-title.service-child-page-title{background-repeat:no-repeat;background-position:center left;background-size:84px;padding-left:84px;background-image:url(../img/service_title_icon02.png);}
.ai-solution h1.page-title.service-child-page-title{background-repeat:no-repeat;background-position:center left;background-size:84px;padding-left:84px;background-image:url(../img/service_title_icon03.png);}

body.service.service-top{background-color:#e0dbd3;}
body.service .breadcrumb.service-child-page{position:static;margin-bottom:40px;background-color:inherit;}
body.child-page.service header.service-child-page nav.head-nav .main-nav ul li a, body.child-page.service header.service-child-page nav.head-nav .sub-nav ul li a{color:#ffffff;}
body.child-page.service header.service-child-page nav.head-nav ul li.active{border-bottom:solid 2px #ffffff;}
body.child-page.service header.service-child-page{background:rgba(0,0,0,0);border-bottom:solid 1px rgba(255,255,255,0.3);}
body.child-page.service header.service-child-page h1 a{background-image:url('../img/logo_l.svg');}
body.service .title-section .title-section-mask{background-color:rgba(0,0,0,0.4);height:inherit;}


body.service.service-top .title-section{background-image:url('../img/service_title_bg1.jpg');}
body.service .services-title-container#consumer-marketing{background-image:url('../img/service_title_bg2.jpg');}
body.service .services-title-container#retail-marketing{background-image:url('../img/service_title_bg3.jpg');}
body.service .services-title-container#ai-solution{background-image:url('../img/service_title_bg4.jpg');}

body.service .title-section.consumer-marketing{background-image:url('../img/service_title_bg2.jpg');}
body.service .title-section.retail-marketing{background-image:url('../img/service_title_bg3.jpg');}
body.service .title-section.ai-solution{background-image:url('../img/service_title_bg4.jpg');}

body.service .title-section.insight-intelligence{background-image:url('../img/service_ii_bg01.jpg');}
body.service .title-section.social-monitor{background-image:url('../img/service_tool_title02.png');}

body.service .services-section{
	background:#e7e7e7;
	width:100%;
	margin:0 0 66px;
}

body.service .services-section-container{
	background:#ffffff;
	margin:0 0 40px;
	border-radius:4px;
}

body.service .services-title-container{
	width:100%;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}
body.service .services-title-container-mask{
	width:100%;
	padding:20px;
	display:table;
	background-color:rgba(0,0,0,0.4);
}


body.service .services-title-container#consumer-marketing{
	border-top:solid 5px #A0A91C;
}
body.service .services-title-container#retail-marketing{
	border-top:solid 5px #00a0df;
}
body.service .services-title-container#ai-solution{
	border-top:solid 5px #9B65B1;
}


body.service .services-title-container:after{
	content:"";
	display:block;
	clear:both;
}

body.service .services-title-container h2{
	font-size:200%;
	color:#ffffff;
	line-height:100px;
	display:table-cell;
	vertical-align:middle;
	transition-duration:0.3s;
}
body.service .services-title-container .services-more-link-block{
	display:table-cell;
	vertical-align:middle;
}
body.service .services-description-container{
	width:100%;
	padding:20px;
}

body.service .services-description-container:after{
	content:"";
	display:block;
	clear:both;
}


body.service .services-description-container h3{
	font-size:150%;
	font-weight:bold;
	padding-bottom:20px;
}

body.service .services-title-container .services-more-link{
	border:solid 1px rgba(255,255,255,0.3);
	color:#ffffff;
}

body.service .services-title-container:hover .services-more-link{
	border: solid 1px rgba(174, 207, 255, 0.5);
	color: #aecfff;
}

body.service .services-title-container:hover h2{
	color: #aecfff;
}

body.service .services-more-link{
	padding:5px 10px;
	border:solid 1px rgba(0,0,0,0.3);
	color:#333;
	border-radius:4px;
	float:right;
	transition-duration:0.3s;
	display:inline-block;
}

body.service .services-more-link:hover{
	border: solid 1px rgba(3, 96, 229, 0.5);
	color: #0360e5;
	transform:scale(1.05,1.05);	
}

body.service .services-description-container img{
	display:block;
	width:60%;
	margin:24px auto 66px;
}
body.service .services-description-container ul.service-solution:after{
	content:"";
	display:block;
	clear:both;
}

body.service .services-description-container ul.service-solution li{
	width:50%;
	margin-bottom:48px;
	float:left;
	text-align:center;
}
body.service .services-description-container ul.service-solution li img{
	width:60%;
	margin:24px auto;
}

body.service .services-description-container ul.service-solution li a{
	color:#333;
	transition-duration:0.3s;
	display:inline-block;
}
body.service .services-description-container ul.service-solution li a:hover{
	color: #0360e5;
	transform:scale(1.05,1.05);
}

body.service .services-description-container .social-analytics-usage{width:100%;margin-bottom:48px;}
body.service .services-description-container .social-analytics-usage::after{display:block;clear:both;content:"";}
body.service .services-description-container .inner-block{
	width: 100%;
	vertical-align: top;
	float: left;
}
body.service .services-description-container .inner-block.half{width: 50%;}
body.service .services-description-container .inner-block.half.right{padding-left:24px;}
body.service .services-description-container .inner-block.half.left{padding-right:24px;}

body.service .services-description-container .social-analytics-usage img{
	width: 40%;
	margin: 0 auto 10px;
	display: block;
}
body.service .services-description-container .social-analytics-usage h4{
	font-size: 133%;
	font-weight: bold;
	text-align: center;
}
body.service .services-description-container .social-analytics-usage ul{
	list-style-type: disc;
	padding-left: 2em;
}

body.service .services-description-container ul.service-solution li img#retail-marketing-image{
	width:100%;
	margin-left:-42px;
}

body.service .services-description-container img#ai-solution-image{
	width:80%;
}


@media screen and (max-width: 639px){
	body.service .services-description-container .inner-block.half{width: 100%; margin-bottom:48px;}
	body.service .services-description-container .inner-block.half.right{padding-left:0px;}
	body.service .services-description-container .inner-block.half.left{padding-right:0px;}
	body.service .services-description-container .inner-block.half.sub:last-child{margin-bottom:0px;}

	body.service .services-description-container ul.service-solution li img#retail-marketing-image{
		margin-left:0px;
	}

	body.service .services-description-container img#ai-solution-image{
		width:100%;
	}
}


body.service .services-description-container .services-list{
	padding-bottom:20px;
}

body.service .services-description-container .services-list h3{
	padding-bottom:0px;
}

body.service .services-description-container .services-list ul li a{
	color:#333;
	transition-duration:0.3s;
}

body.service .services-description-container .services-list ul li a:hover{
	color:#e22263;
}

body.service .service-detail-section{width:100%;margin-bottom:120px;}
body.service .service-detail-section-container h2{font-size:250%;line-height:150%;margin-bottom:66px;}
body.service .service-detail-section-container h3{font-size:200%;font-weight:bold;margin-bottom:60px;}


body.service .service-detail-section-container .social-analytics-usage img{
	width: 40%;
	margin: 0 auto 10px;
	display: block;
}
body.service .service-detail-section-container .social-analytics-usage h4{
	font-size: 133%;
	font-weight: bold;
	text-align: center;
}
body.service .service-detail-section-container .social-analytics-usage ul{
	list-style-type: disc;
	padding-left: 2em;
}


body.service .service-detail-section#analytical-tool h3, body.service .service-detail-section#research h3{
	font-size:100%;
	width:100%;
	height:40px;
}

body.service .service-detail-section#analytical-tool h3:after, body.service .service-detail-section#research h3:after{
	display:block;
	content:"";
	clear:both;
}
body.service .service-detail-section#analytical-tool h3 p, body.service .service-detail-section#research h3 p{
	float:left;
	color:#ffffff;
	border:solid 2px #181b1d;
	border-radius:20px;
	background-color:#181b1d;
	padding:5px;
	width:20%;
	margin-bottom:0px;
	text-align:center;
	font-weight:normal;
}
body.service .service-detail-section#analytical-tool h3 .service-caption-border, body.service .service-detail-section#research h3 .service-caption-border{
	float:left;
	border-top:solid 2px #181b1d;
	width:80%;
	margin-top:20px;
	padding-top:20px;
}


body.service .service-detail-section-container h4{font-size:200%;font-weight:bold;line-height:150%;padding-bottom:10px;}
body.service .service-detail-section-container ul.service-solution li h4{font-size:133%;font-weight:bold;}
body.service .service-detail-section-container .description.description-lead p{font-size:133%;}
body.service .service-detail-section-container .description img{display:block;width:80%;margin:0px auto 40px;}
body.service .service-detail-section-container .service-introduction{margin-bottom:120px;}
body.service .service-detail-section-container .service-introduction-inner:after{content:"";clear:both;display:block;}
body.service .service-detail-section-container .service-image, body.service .service-detail-section-container .service-profile{
	width:50%;
	margin-bottom:24px;
	vertical-align:top;
	float:left;
}

body.service .service-detail-section-container .service-price{
	width:50%;
	margin-bottom:48px;
	vertical-align:top;
	float:left;
}

body.service .service-price.left{
	padding-right:48px;
}
body.service .service-price.right{
	padding-left:48px;
}


body.service .service-detail-section-container .service-price .service-price-inner{
	text-align:center;
	padding:20px;
	border-radius:16px;
	background-color:#f3f3f3;
}

body.service .service-detail-section-container .service-price .price-type {font-size:200%;}
body.service .service-detail-section-container .service-price .price-number {font-size:300%;line-height:150%;}

body.service .service-detail-section-container .service-image.left{margin-left:-4.5%;margin-right:4.5%;float:left;}
body.service .service-detail-section-container .service-image.right{margin-left:4.5%;margin-right:-4.5%;float:right;}

body.service .service-detail-section-container .service-image img{margin:0;width:100%;}

body.service .service-detail-section-container .service-profile h4 .small-title{font-size:66%;display:block;}
body.service .service-introduction .service-profile .case-tag{color:#fff;background:#333;border-radius:20px;padding:2px 15px;display:inline-block;margin-bottom:10px;}

body.service .service-introduction .attention{display:block;padding-bottom:30px;font-size:133%;line-height:150%;}
body.service .service-introduction dl{margin-bottom:20px;width:100%;}
body.service .service-introduction dl dt{padding-bottom:10px;}
body.service .service-introduction dl dt span.suggestion{border:solid 1px #000000;border-radius:20px;padding:2px 10px;display:inline-block;text-align:center;font-size:small;}

body.service .service-introduction dl dd{padding-bottom:10px;list-style-type:disc;font-size:small;}
body.service .service-introduction dl dd ul{padding-left:3rem;}
body.service .service-introduction dl dd ul li{list-style-type:disc;}
body.service .service-introduction .action-area {text-align:center;margin:0 auto;}
body.service .service-introduction .action-area .services-more-link{float:initial;margin-right:5px;margin-bottom:5px;}
body.service .service-introduction .action-area .services-more-link{float:auto;}

body.service .service-introduction.consumer-marketing .action-area .services-more-link{color:#fff;background-color:#A0A91C;border:1px solid #A0A91C;}
body.service .service-introduction.consumer-marketing .action-area .services-more-link:hover{color:#A0A91C;background-color:#fff;}

body.service .service-introduction.retail-marketing .action-area .services-more-link{color:#fff;background-color:#00a0df;border:1px solid #00a0df;}
body.service .service-introduction.retail-marketing .action-area .services-more-link:hover{color:#00a0df;background-color:#fff;}

body.service .service-detail-section#analytical-tool,body.service .service-detail-section#research,body.service .service-detail-section#promotion{
	margin-top:-160px;
	padding-top:160px;
	margin-bottom:-60px;
}


body.service .service-detail-section-container ul.service-solution:after{
	content:"";
	display:block;
	clear:both;
}

body.service .service-detail-section-container ul.service-solution >li{
	width:30%;
	margin-right:3%;
	margin-bottom:48px;
	float:left;
}

body.service .service-detail-section-container ul.service-solution > li > ul{
	padding-left: 3rem;
}


body.service .service-detail-section-container ul.service-solution > li > ul > li{
	width:100%;
	list-style-type: disc;
	margin-bottom:10px;
}


body.service .service-detail-section-container ul.service-solution li img{
	margin:0px auto;
}

body.service .service-detail-section-container ul.service-feature:after{
	content:"";
	display:block;
	clear:both;
}

body.service .service-detail-section-container ul.service-feature li{
	width:30%;
	margin-right:3%;
	margin-bottom:48px;
	float:left;
}
body.service .service-detail-section-container ul.service-feature li img{
	margin:0px auto;
}


/*===================================================================
	Service Tools Child Page Setting
===================================================================*/
body.service .title-section.tools p.catch-copy {
    color: #ffffff;
}

body.service .title-section.tools .catch-copy-block {
    float: left;
    width: 60%;
    height: 100%;
    padding-top: 80px;
}

body.service .title-section.tools .catch-image-block {
    float: left;
    width: 40%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: bottom;
}

body.service .title-section.tools .section-container:after {
    content: "";
    clear: both;
    display: block;
}

body.service .title-section.tools .section-container {height: 440px;}

body.service .title-section.tools h1.page-title{
	font-size:400%;
	line-height:200%;
}

body.service .title-section.tools p.catch-copy span {
    display: block;
    font-size: 150%;
}

body.service .title-section.tools.insight-intelligence .catch-image-block {
    background-image:url('../img/service_ii02.png');
}
body.service .title-section.tools.social-monitor .catch-image-block {
    background-image:url('../img/service_sm01.png');
}
body.service .title-section.tools.tv-insight .catch-image-block {
    background-image:url('../img/service_ti01.png');
}






/*===================================================================
	Service Tools Child Page Setting (For Sub Header etc)
===================================================================*/

body.service .service-introduction .attention ul{padding-left:3rem;}
body.service .service-introduction .attention ul li{list-style-type:disc;}

body.child-page.service header.service-child-page.sub-header{position:static;background:#fff;border-bottom:solid 1px #eee;}
header.sub-header nav.head-nav .sub-nav ul{border-spacing:0;}
body.child-page.service header.service-child-page.sub-header nav.head-nav .main-nav ul li a, body.child-page.service header.service-child-page.sub-header nav.head-nav .sub-nav ul li a{color:#333}
body.child-page.service header.service-child-page.sub-header nav.head-nav .main-nav ul li.active a{color: #023f97;}
body.child-page.service header.service-child-page.sub-header nav.head-nav .main-nav ul li a:hover{color: #0360e5;}
body.child-page header.service-child-page.sub-header nav.head-nav .sub-nav ul li.contact a{background-color:rgb(99,198,75);color: #fff;}
body.service.tool-child .title-section.tools .catch-copy-block{padding-top: 38px;}
body.service.tool-child .title-section, body.service.tool-child .title-section.tools .section-container{height:250px;}
body.child-page header.service-child-page.main-header {background:rgba(0,0,0,0);}
body.child-page header.main-header {background:rgba(255,255,255,0.6);}
body.child-page header.sub-header {position: fixed; top: 0; z-index: 1050;}
body.child-page.service header.service-child-page.sub-header nav.head-nav ul li.active{border-bottom: solid 2px #023f97;}
body.service.tool-child .title-section.tools h1.page-title{font-size:300%;margin:0;}

body.child-page header.service-child-page.sub-header .menu-open-button{position:static;top:300px;float: right;padding: 9px 14px;}
body.child-page.service header.service-child-page.sub-header .menu-open-button a{color:#333;border: solid 1px rgba(0, 0, 0, 0.3);}

header.sub-header nav.head-nav .main-nav{margin:0 auto 0 0;}
header.sub-header nav.head-nav .main-nav > ul{margin:0 auto 0 0;}

@media screen and (min-width: 550px) and (max-width: 979px){
header.sub-header nav.head-nav .sub-nav{width:50%;}
}

@media screen and (max-width: 549px){
header.sub-header nav.head-nav .sub-nav{display:none;}
}

@media screen and (max-width: 549px){
body.service.tool-child .title-section.tools h1.page-title{line-height:200%;}
}

@media screen and (max-width: 639px){
	body.service.tool-child .title-section .section-container{padding:60px 24px 60px;}
	body.child-page header.main-header {display:block !important;background:rgba(255,255,255,1.0)}
	body.child-page header.sub-header {display:none;}

}

@media screen and (max-width: 979px){
header.sub-header nav.head-nav .short-cut{display:none;}
}

body.service .service-detail-section:after{clear:both;content:"";display:block;}


/*===================================================================
	Service Tools Child Page Setting(11/24 New)
===================================================================*/

body.service.new-tools-format .service-detail-section-container .service-price .service-price-inner {
	background-color: #fff;
	border: 2px solid #4bacc6;
	text-align: left;
	border-radius: 8px;
	padding:0;
}

body.service.new-tools-format .service-detail-section-container .service-price-inner h4{
    color:#fff;
    margin-bottom:20px;
	padding:20px;
	background:#4bacc6;
}
.service-price-inner .form-link-item {
    width: 100%;
    margin: 0 auto;
	padding:0 20px 20px;
    display: block;
}
.service-price-inner .form-link-item .form-link{
    width: 100%;
    background: #f89a20;
	border:none;
}
.service-price-inner .form-link-item .form-link:hover {
    background:#fff;
    color: #f89a20;
    transform: scale(1.05, 1.05);
    border:solid 1px rgba(248,154,32,0.5);
}
.service-price-inner dl.menu{width:100%;padding:0 20px 20px;}
.service-price-inner dl.menu:after{clear:both;display:block;content:"";}

body.service .service-detail-section-container .service-price .service-price-inner dl.menu dt.price-type {
    width: 100%;
    font-size: 100%;
    text-align: center;
    padding-bottom: 0;
    background-color: #efefef;
}

body.service .service-detail-section-container .service-price .service-price-inner dl.menu dd.price-number{
    width:100%;
    font-size: 300%;
    text-align:center;
    padding-bottom:20px;
}


/*既存に指定・記載されているので注意*/
body.service .service-price.left{padding-right:24px;}
body.service .service-price.right{padding-left:24px;}

/*活用シーン箇所*/
ul.service-solution-usage:after{
    clear:both;
    display:block;
    content:"";
}
ul.service-solution-usage li a {
    background-image: url(/wp-content/themes/datasection2016/img/service_ii_test_image.png);
    background-position: center bottom;
    background-size: 50%;
    background-repeat: no-repeat;
    display:block;
    height: 300px;
    color: #333;
    transition-duration: 0.3s;
}
ul.service-solution-usage li a:hover {
    color:#e22263;
    transform: scale(1.05,1.05);
}

ul.service-solution-usage li:first-child, ul.service-solution-usage li:nth-child(5){
    padding-left: 0px;
    width: calc(25% - 36px);
}

ul.service-solution-usage li {
    width: calc((25% - 36px) + 48px);
    padding-left: 48px;
    float: left;
    margin-bottom: 48px;
}

.usage-tag{padding-bottom:10px}
.usage-tag span {
    font-size: 80%;
    color: #fff;
    background: #f89a20;
    padding: 3px 7px;
    margin-right: 5px;
    border-radius: 10px;
}

body.service .service-detail-section-container ul.service-solution-usage li h4{
    font-size: 133%;
}


/*料金プラン*/
ul.menu.option-service {
    padding: 0 20px 20px;
}


/*===================================================================
	Service Tools Child Page Setting(Screen Size Config)
===================================================================*/
@media screen and (max-width:979px){
	body.child-page.service header.service-child-page .menu-open-button a{border:solid 1px rgba(255,255,255,0.5);color:#fff;}
	body.child-page.service header.service-child-page nav.head-nav ul li.active{border:0;}
	body.service .title-section, body.service .title-section-mask{
		min-width: 0;
		height: auto !important;
		min-height:30vw;
		background-size: 250%;
	}
	body.service h1.page-title{
		line-height: 30vw;
	}
	body.service .title-section.tools h1.page-title{
		line-height: 133%;
	}
}

@media screen and (max-width: 639px){
	body.child-page.service .page-body{padding:0 12px 54px;}
	body.service .services-title-container-mask{display:block;}
	body.service .services-title-container h2{display:block;font-size:150%;text-align:center;}
	body.service .services-title-container .services-more-link-block{display:block;}
	body.service .services-title-container a{display:block;}
	body.service .services-more-link{float:none;text-align:center;margin:0 auto;width:100%;}
	body.service .services-description-container h3{font-size:120%;}
	body.service .services-description-container img{width:100%;}
	body.service .service-detail-section-container .service-image img{margin:0 auto;width:70%;}
	body.service .service-detail-section-container .service-introduction{margin-bottom:60px;}

	body.service .services-description-container ul.service-solution li{width:100%;float:none;}


body.service .service-detail-section-container .description.description-lead p{font-size:100%;}



body.service .service-detail-section#analytical-tool h3, body.service .service-detail-section#research h3{
	font-size:85.714%;
}

body.service .service-detail-section#analytical-tool h3 p, body.service .service-detail-section#research h3 p{
	width:40%;
}
body.service .service-detail-section#analytical-tool h3 .service-caption-border, body.service .service-detail-section#research h3 .service-caption-border{
	width:60%;
}



	body.service .service-detail-section-container .service-image,
	body.service .service-detail-section-container .service-profile{
		width:100%;
		margin-right:0px !important;
		margin-left:0px !important;
		margin-bottom:12px;
		float:none !important;
	}

}

@media screen and (max-width: 639px){
	body.service .title-section .section-container{padding:120px 24px 60px;}
	body.service h1.page-title{font-size:32px;line-height:200%;}
	.consumer-marketing h1.page-title.service-child-page-title{background-size:64px;padding-left:74px;}
	.retail-marketing h1.page-title.service-child-page-title{background-size:64px;padding-left:74px;}
	.ai-solution h1.page-title.service-child-page-title{background-size:64px;padding-left:74px;}

	body.service .title-section.tools .section-container{height:auto !important;}
	body.service .title-section.tools .catch-copy-block{padding-top:0px;width:100%;}
	body.service .title-section.tools p.catch-copy span{font-size:100%;}
	body.service .title-section.tools .catch-image-block{display:none;}

	body.service .service-detail-section{margin-bottom:66px;}
	body.service .service-detail-section-container h2{font-size:133%;margin-bottom:20px;font-weight:bold;}
	body.service .service-detail-section-container h3{font-size:133%;margin-bottom:20px;font-weight:bold;}
	body.service .service-detail-section-container h4{font-size:110%;line-height:150%;padding-bottom:5px;}
	body.service .service-detail-section-container ul.service-solution li h4{font-size:110%;line-height:150%;padding-bottom:5px;}
	body.service .service-detail-section-container .service-price h4{font-size:200%;}
	body.service .service-introduction .attention{font-size:100%;}
	body.service .service-introduction dl{margin-bottom:10px;}
	body.service .service-introduction dl dd{line-height:150%;}

	body.service .service-detail-section-container ul.service-solution li{float:none;margin-bottom:24px;width:100%;}
	body.service .service-detail-section-container ul.service-feature li{float:none;margin-bottom:24px;width:100%;}
	body.service .service-detail-section-container ul.service-solution > li > ul > li{margin-bottom:0px;}

	body.service .service-price.left{
		padding-right:12px;
	}
	body.service .service-price.right{
		padding-left:12px;
	}

	body.service .service-detail-section-container .service-price .price-type {font-size:110%;font-weight:bold;}
	body.service .service-detail-section-container .service-price .price-number {font-size:133%;font-weight:bold;line-height:150%;}
}


@media screen and (max-width:499px){
	body.service .title-section, body.service .title-section-mask{
		background-size: 420%;
	}
}


/*===================================================================
	Service Tools Child Page Setting(Request Form Button)
===================================================================*/
body.service .title-section.tools .form-link-item{
	display: block;
	width: 70%;
	min-width:375px;
	text-align:center;
	height:auto;
	line-height:1.2em;
	margin-top:37px
}

body.service .title-section.tools .form-link-item a.form-link{
	padding: 0px;
	border: solid 1px rgba(99,198,75,0.5);
	background:#63c64b;
	border-radius: 6px;
	color: #ffffff;
	text-align: center;
	width: 100%;
	transition-duration: 0.3s;
	margin: 5px auto;
	display:inline-block;
	height:60px;
	line-height:60px;
}

body.service .title-section.tools .form-link-item a.form-link:hover{
	background: initial;
	background: rgba(255,255,255,1.0);
	color: #63c64b;
	transform: scale(1.05, 1.05);
}
body.service .title-section.tools  .form-link-item a.form-link .form-link-box{
	display:table;
	border-spacing:12px 0;
	margin:0 auto;
}

body.service .title-section.tools .form-link-item a.form-link .form-link-box span{
	display:table-cell;
	vertical-align:middle;
	font-size:114.285%;
}

body.service .title-section.tools .form-link-item a.form-link .form-link-box span.icon{
	font-size:200%;
}


body.service .title-section.tools .catch-copy-block{
	padding-top: 20px;
}

@media screen and (max-width: 979px){
	body.service .title-section.tools .section-container{
		height:380px;	
	}

	body.service .title-section.tools .catch-copy-block{
		width:100%;	
	}

	body.service .title-section.tools .catch-image-block{
		display:none;
	}
	body.service .title-section.tools .form-link-item{margin: 20px auto 0;}

	body.service .title-section.tools .form-link-item{
		width:70%;
	}
}


@media screen and (min-width: 640px) and (max-width: 979px){
	body.service .title-section.tools h1.page-title{width:70%;min-width: 460px;margin:auto;}
	body.service .title-section.tools p.catch-copy{width:70%;min-width: 460px;margin:auto;}
}

@media screen and (min-width: 400px) and (max-width: 639px){
	body.service .title-section.tools h1.page-title{width:70%;min-width: 375px;margin:auto;}
	body.service .title-section.tools p.catch-copy{width:70%;min-width: 375px;margin:auto;}
}

@media screen and (max-width: 459px){
	body.service .title-section.tools .form-link-item{
		width:100%;
		min-width:0px;
	}
	body.service .title-section.tools .form-link-item a.form-link .form-link-box span{
		font-size:100%;
	}
}

@media screen and (max-width: 379px){
	body.service .title-section.tools .form-link-item a.form-link .form-link-box span{line-height: normal;}
}












/*===================================================================
	Service Tools Child Page Setting(Screen Size Config)
===================================================================*/
@media screen and (max-width:979px){
	body.child-page.service header.service-child-page .menu-open-button a{border:solid 1px rgba(255,255,255,0.5);color:#fff;}
	body.child-page.service header.service-child-page nav.head-nav ul li.active{border:0;}
	body.service .title-section, body.service .title-section-mask{
		min-width: 0;
		height: auto !important;
		min-height:30vw;
		background-size: 250%;
	}
	body.service h1.page-title{
		line-height: 30vw;
	}
	body.service .title-section.tools h1.page-title{
		line-height: 133%;
	}
}

@media screen and (max-width: 639px){
	body.child-page.service .page-body{padding:0 12px 54px;}
	body.service .services-title-container-mask{display:block;}
	body.service .services-title-container h2{display:block;font-size:150%;text-align:center;}
	body.service .services-title-container .services-more-link-block{display:block;}
	body.service .services-title-container a{display:block;}
	body.service .services-more-link{float:none;text-align:center;margin:0 auto;width:100%;}
	body.service .services-description-container h3{font-size:120%;}
	body.service .services-description-container img{width:100%;}
	body.service .service-detail-section-container .service-image img{margin:0 auto;width:70%;}
	body.service .service-detail-section-container .service-introduction{margin-bottom:60px;}

	body.service .services-description-container ul.service-solution li{width:100%;float:none;}


body.service .service-detail-section-container .description.description-lead p{font-size:100%;}



body.service .service-detail-section#analytical-tool h3, body.service .service-detail-section#research h3{
	font-size:85.714%;
}

body.service .service-detail-section#analytical-tool h3 p, body.service .service-detail-section#research h3 p{
	width:40%;
}
body.service .service-detail-section#analytical-tool h3 .service-caption-border, body.service .service-detail-section#research h3 .service-caption-border{
	width:60%;
}



	body.service .service-detail-section-container .service-image,
	body.service .service-detail-section-container .service-profile{
		width:100%;
		margin-right:0px !important;
		margin-left:0px !important;
		margin-bottom:12px;
		float:none !important;
	}

}

@media screen and (max-width: 639px){
	body.service .title-section .section-container{padding:120px 24px 60px;}
	body.service h1.page-title{font-size:32px;line-height:200%;}
	.consumer-marketing h1.page-title.service-child-page-title{background-size:64px;padding-left:74px;}
	.reputational-risk-measures h1.page-title.service-child-page-title{background-size:64px;padding-left:74px;}
	.image-analysis h1.page-title.service-child-page-title{background-size:64px;padding-left:74px;}
	.solution-development h1.page-title.service-child-page-title{background-size:64px;padding-left:74px;}

	body.service .title-section.tools .section-container{height:auto !important;}
	body.service .title-section.tools .catch-copy-block{padding-top:0px;width:100%;}
	body.service .title-section.tools p.catch-copy span{font-size:100%;}
	body.service .title-section.tools .catch-image-block{display:none;}

	body.service .service-detail-section{margin-bottom:66px;}
	body.service .service-detail-section-container h2{font-size:133%;margin-bottom:20px;font-weight:bold;}
	body.service .service-detail-section-container h3{font-size:133%;margin-bottom:20px;font-weight:bold;}
	body.service .service-detail-section-container h4{font-size:110%;line-height:150%;padding-bottom:5px;}
	body.service .service-detail-section-container ul.service-solution li h4{font-size:110%;line-height:150%;padding-bottom:5px;}
	body.service .service-detail-section-container .service-price h4{font-size:200%;}
	body.service .service-introduction .attention{font-size:100%;}
	body.service .service-introduction dl{margin-bottom:10px;}
	body.service .service-introduction dl dd{line-height:150%;}

	body.service .service-detail-section-container ul.service-solution li{float:none;margin-bottom:24px;width:100%;}
	body.service .service-detail-section-container ul.service-feature li{float:none;margin-bottom:24px;width:100%;}
	body.service .service-detail-section-container ul.service-solution > li > ul > li{margin-bottom:0px;}

	body.service .service-price.left{
		padding-right:12px;
	}
	body.service .service-price.right{
		padding-left:12px;
	}

	body.service .service-detail-section-container .service-price .price-type {font-size:110%;font-weight:bold;}
	body.service .service-detail-section-container .service-price .price-number {font-size:133%;font-weight:bold;line-height:150%;}
}

@media screen and (max-width:499px){
	body.service .title-section, body.service .title-section-mask{
		background-size: 420%;
	}
}

@media only screen and (min-width: 640px){
	body.service .service-introduction.image-analysis .action-area .services-more-link{
		width:300px;
	}
}

/*===================================================================
	Service Tools Child Page Setting(Request Form Button)
===================================================================*/
body.service .title-section.tools .form-link-item{
	display: block;
	width: 70%;
	min-width:375px;
	text-align:center;
	height:auto;
	line-height:1.2em;
	margin-top:37px
}

body.service .title-section.tools .form-link-item a.form-link{
	padding: 0px;
	border: solid 1px rgba(99,198,75,0.5);
	background:#63c64b;
	border-radius: 6px;
	color: #ffffff;
	text-align: center;
	width: 100%;
	transition-duration: 0.3s;
	margin: 5px auto;
	display:inline-block;
	height:60px;
	line-height:60px;
}

body.service .title-section.tools .form-link-item a.form-link:hover{
	background: initial;
	background: rgba(255,255,255,1.0);
	color: #63c64b;
	transform: scale(1.05, 1.05);
}
body.service .title-section.tools  .form-link-item a.form-link .form-link-box{
	display:table;
	border-spacing:12px 0;
	margin:0 auto;
}

body.service .title-section.tools .form-link-item a.form-link .form-link-box span{
	display:table-cell;
	vertical-align:middle;
	font-size:114.285%;
}

body.service .title-section.tools .form-link-item a.form-link .form-link-box span.icon{
	font-size:200%;
}


body.service .title-section.tools .catch-copy-block{
	padding-top: 20px;
}

@media screen and (max-width: 979px){
	body.service .title-section.tools .section-container{
		height:380px;	
	}

	body.service .title-section.tools .catch-copy-block{
		width:100%;	
	}

	body.service .title-section.tools .catch-image-block{
		display:none;
	}
	body.service .title-section.tools .form-link-item{margin: 20px auto 0;}

	body.service .title-section.tools .form-link-item{
		width:70%;
	}
}


@media screen and (min-width: 640px) and (max-width: 979px){
	body.service .title-section.tools h1.page-title{width:70%;min-width: 460px;margin:auto;}
	body.service .title-section.tools p.catch-copy{width:70%;min-width: 460px;margin:auto;}
}

@media screen and (min-width: 400px) and (max-width: 639px){
	body.service .title-section.tools h1.page-title{width:70%;min-width: 375px;margin:auto;}
	body.service .title-section.tools p.catch-copy{width:70%;min-width: 375px;margin:auto;}
}

@media screen and (max-width: 459px){
	body.service .title-section.tools .form-link-item{
		width:100%;
		min-width:0px;
	}
	body.service .title-section.tools .form-link-item a.form-link .form-link-box span{
		font-size:100%;
	}
}

@media screen and (max-width: 379px){
	body.service .title-section.tools .form-link-item a.form-link .form-link-box span{line-height: normal;}
}


/*===================================================================
	Company Child Page Setting
===================================================================*/

body.company header.company-top-header nav.head-nav .main-nav ul li a, body.company header.company-top-header nav.head-nav .sub-nav ul li a{color:#ffffff;}
body.company header.company-top-header nav.head-nav ul li.active{border-bottom:solid 2px #ffffff;}
body.company header.company-top-header{background:rgba(0,0,0,0);border-bottom:solid 1px rgba(255,255,255,0.3);}
body.company header.company-top-header h1 a{background-image:url('../img/logo_l.svg');}

body.company .title-section.company{background-image:url('../img/company_title_bg1.jpg');}
body.company .title-section .title-section-mask{background-color:rgba(0,0,0,0.4);height:inherit;}
body.company h1.page-title.company-top-page-title{line-height:320px;color:#ffffff;}


body.company .breadcrumb.company-top-page{position:static;margin-bottom:40px;background-color:inherit;}

body.company .company-vision-image{margin-bottom:24px;margin-right:24px;width:25%;float:left;}
body.company .company-page-list-section{margin-bottom:66px;}
body.company .company-page-list-section h2{font-size:200%;}
body.company .company-page-list{width:100%;margin:20px 0px;display:table;}
body.company .company-page-list:after{clear:both;display:block;content:"";}
body.company .company-page-list a{width:50%;margin-bottom:20px;padding-right:48px;vertical-align:top;float:left;display:table-cell;}
body.company .company-page-list a .company-page-link {
    text-align: center;
    width: 100%;
    border-radius: 8px;
    border: solid 1px #023f97;
    font-size: 125%;
    font-weight: bold;
    color: #023f97;
    transition-property: all;
    transition: 0.3s linear;
    padding: 20px;
}
body.company .company-page-list a .company-page-link:hover {
    color: #ffffff;
    background-color: #023f97;
}

body.company dl.company-about a{transition-duration: 0.3s;}
body.company dl.company-about a:hover{color: #0360e5;}
body.company dl.company-about:after{content:"";clear:both;display:block;}
body.company dl.company-about > dt, dl.company-about > dd{padding:0px 0px 20px;}
body.company dl.company-about > dt{width:20%;float:left;}
body.company dl.company-about > dd{width:80%;float:left;}
body.company dl.company-about > dd > ul{padding:0px 0px 10px;}
body.company dl.company-about > dd > ul > li.annotation{font-size:85.714%;}
body.company dl.company-about > dd > ul > li:after{content:"";clear:both;display:block;}
body.company dl.company-about > dd > ul > li > dt{width:30%;float:left;}
body.company dl.company-about > dd > ul > li > dd{width:70%;float:left;}

body.company dl.company-about > dd > ul > li a.service-contact-link{
    border: 1px solid rgb(55,174,139);
    border-radius:4px;
    background-color: rgb(55,174,139);
    color:#ffffff;
    text-align:center;
    padding:2px 10px 2px 0px;
    transition-duration: 0.3s;
    font-size:85.714%;
    margin-left:20px;
}

body.company dl.company-about > dd > ul > li a.service-contact-link:hover{
    background-color:#ffffff;
    color: rgb(55,174,139);
}

body.company dl.company-about > dd > ul > li .service-br{
	display:none;
}

body.company dl.company-about > dd > ul > li.company-name{font-weight:bold;}

body.company dl.company-history:after{content:"";clear:both;display:block;}
body.company dl.company-history > dt, dl.company-history > dd{padding:0px 0px 20px;}
body.company dl.company-history > dt{width:20%;float:left;}
body.company dl.company-history > dd{width:80%;float:left;}

body.company ul.company-officer > li{width:100%;padding:0px 0px 66px;display:table;margin-top: -160px;padding-top: 160px;}
body.company ul.company-officer .officer-image{width:180px;display:table-cell;vertical-align: top;}
body.company ul.company-officer .officer-image img{width:140px;}
body.company ul.company-officer .officer-profile{display:table-cell;vertical-align: top;}
body.company ul.company-officer .officer-profile p{margin:0px;}
body.company .officer-name{font-size:200%;}
body.company .officer-position{font-size:130%;padding-bottom:20px;}

body.company .main-column.access{position:relative;}
body.company .company-access-selector{width:140px;position:absolute;right:24px;top:74px;}
body.company .company-access-selector a{transition-duration: 0.3s;color:#333;padding:5px;display:inline-block;}
body.company .company-access-selector a:hover{color: #0360e5;transform: scale(1.1, 1.1);}
body.company .company-access-selector a.active{color: #023f97;border-bottom: solid 2px #023f97;}

body.company .company-access.japanese-version{display:block;}
body.company .company-access.english-version{display:none;}
body.company .company-access ul > li{padding:0px 0px 66px;}
body.company .company-access ul > li > p{margin: 0px;}
body.company .access-companyname{padding-bottom:20px;}
body.company .access-telnumber{padding-bottom:20px;}

body.company ol.privacy-policy-list{padding-left:18px;}
body.company ol.privacy-policy-list li{list-style-type:decimal;padding:0 0 12px 6px;}
body.company ol.privacy-policy-list li>ul{padding-left:18px;}
body.company ol.privacy-policy-list li>ul li{list-style-type:none;padding:0 0 6px 0px;}
body.company ol.privacy-policy-list span#contact {display: block;padding: 6px 0 0 24px;}
body.company ol.privacy-policy-list span#tel-number {display: block;padding: 0 0 6px 24px;}

@media screen and (max-width: 979px){
	body.company header.company-top-header .menu-open-button a{border:solid 1px rgba(255,255,255,0.5);color:#fff;}
	body.company header.company-top-header nav.head-nav ul li.active{border:0;}
	body.company .title-section.company{min-width:0;height:auto !important;min-height:30vw;background-size: 200%;}
	body.company h1.page-title.company-top-page-title{line-height:30vw;}
}

@media screen and (max-width: 639px){
	body.company .title-section .section-container{padding:120px 24px 60px;}
	body.company .company-vision-image{margin-bottom:24px;margin-right:24px;width:50%;}
	body.company .company-page-list a{width:100%;margin-bottom:24px;padding-right:0px;}
	body.company .company-page-list a .company-page-link{padding:10px;}
	body.company dl.company-about > dt{width:100%;font-weight:bold;padding:0px 0px 0px;}
	body.company dl.company-about > dd{width:100%;padding:0px 0px 21px;}
	body.company dl.company-about > dd > ul > li > dt{width:50%;}
	body.company dl.company-about > dd > ul > li > dd{width:50%;}
	body.company dl.company-history > dt{width:100%;font-weight:bold;padding:0px 0px 0px;}
	body.company dl.company-history > dd{width:100%;padding:0px 0px 21px;}
	body.company .officer-name{margin-bottom:0;}
	body.company ul.company-officer .officer-image{width:100%;display:block;}
	body.company ul.company-officer .officer-profile{width:100%;display:block;}
	body.company .access-companyname{font-size:130%;padding-bottom:30px;}
	body.company .company-access ul > li > iframe{width:100%;height:200px;}
	body.company .company-access ul > li > img{width:100%;height:100%;}
	body.company .company-access-selector{right:0px;top:65px;}
}
@media screen and (max-width: 499px){
	body.company .title-section.company{background-size: 300%;}
	body.company dl.company-about > dd > ul > li .service-br{
		display:inline;
	}
	body.company dl.company-about > dd > ul > li a.service-contact-link{
	    margin-left:0px;
	}
}


/*===================================================================
	Recruit Child Page Setting
===================================================================*/
body.recruit header.recruit-top-header nav.head-nav .main-nav ul li a, body.recruit header.recruit-top-header nav.head-nav .sub-nav ul li a{color:#ffffff;}
body.recruit header.recruit-top-header nav.head-nav ul li.active{border-bottom:solid 2px #ffffff;}
body.recruit header.recruit-top-header{background:rgba(0,0,0,0);border-bottom:solid 1px rgba(255,255,255,0.3);}
body.recruit header.recruit-top-header h1 a{background-image:url('../img/logo_l.svg');}

body.recruit section.staff-section, body.recruit section.ideal-section {
    background-color: #f3f3f3;
}

body.recruit .section-container{
    padding-right:0;
}
body.recruit p.description span{
    display: block;
    margin-bottom: 20px;
}

body.recruit section .inner-block{
	width:100%;
	margin-bottom:48px;
	padding-right:48px;
	vertical-align:top;
	float:left;
}
    
body.recruit section .inner-block.half{
    width:50%;
}
    
.datasection-business-image{
    width: 100%;
}
    
.child-page.recruit .title-section .catch-copy-block h2.catch-copy {
	height: 320px;
	padding-top:60px;
	color:#fff;
	font-size:300%;
	font-weight:100;
}

.child-page.recruit .title-section .catch-copy-block h2.catch-copy span, .child-page.recruit .title-section .catch-copy-block p.sub-catch-copy span{
	display:block;
}
body.recruit h3.section-title {
    color: #5bb430;
	font-size: 300%;
	font-weight: bold;
	margin-bottom:40px;
    padding-left:76px;
    background-position: top left;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-size: contain;
    height: 60px;
}
body.recruit .aboutus-section h3.section-title {
    background-image: url("../img/recruit_section01.png");
}
 body.recruit .staff-section h3.section-title {
    background-image: url("../img/recruit_section02.png");
}
 body.recruit .office-section h3.section-title {
    background-image: url("../img/recruit_section03.png");
}
 body.recruit .ideal-section h3.section-title {
    background-image: url("../img/recruit_section04.png");
}
    
body.recruit h4 {
	font-size: 200%;
	margin-bottom:20px;
}

.staff-recruit-format{
	display: block;
	position: absolute;
	bottom: 0;
	right: 0px;
	width: 0;
	height: 0;
	border-top: 30px solid rgba(0,0,0,0);
	border-left: 30px solid rgba(0,0,0,0);
}
.staff-recruit-format.new-graduate{
	border-right: 30px solid #9FCA41;
	border-bottom: 30px solid #9FCA41;
}
.staff-recruit-format.career{
	border-right: 30px solid #5F82C4;
	border-bottom: 30px solid #5F82C4;
}
.staff-recruit-format p{
	transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	font-size: 10px;
	color: #fff;
	position: absolute;
	text-align: center;
	bottom: -10px;
	right: -35px;
	line-height: 0px;
    width:50px;
}

.modal-staff .staff-recruit-format{
	top:0;
	left:0;
	bottom: initial;
	bottom: auto;
	right: initial;
	right: auto;
	border-right: 30px solid rgba(0,0,0,0);
	border-bottom: 30px solid rgba(0,0,0,0);
}
.modal-staff .staff-recruit-format.new-graduate{
	border-top: 30px solid #9FCA41;
	border-left: 30px solid #9FCA41;
}
.modal-staff .staff-recruit-format.career{
	border-top: 30px solid #5F82C4;
	border-left: 30px solid #5F82C4;
}

.modal-staff .staff-recruit-format p{
	top: -10px;
	left: -35px;
	bottom: initial;
	bottom: auto;
	right: initial;
	right: auto;
}

body.recruit section.title-section{
	background-image: url("../img/recruit_title_bg1.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

body.recruit section.title-section .title-section-mask{
	background-color: rgba(0,0,0,0.4);
	height: inherit;
}

body.recruit a .entry-link {
    text-align: center;
    width: 100%;
    border-radius: 8px;
    border: solid 1px #fea354;
    font-size: 130%;
    font-weight: bold;
    color: #fea354;
    transition-property: all;
    transition: 0.3s linear;
    margin: 0 auto 40px;
    padding: 20px;
}
    
body.recruit a .entry-link:hover {
    color: #ffffff;
}
    
body.recruit a .entry-link.new-graduate {
    border: solid 1px #9FCA41;
    background-color: #9FCA41;
    color: #ffffff;
}
    
body.recruit a .entry-link:hover.new-graduate {
    background-color: initial;
    background-color: rgba(0,0,0,0);
    color: #9FCA41;
}   
body.recruit a .entry-link.career {
    border: solid 1px #5F82C4;
    background-color: #5F82C4;
    color: #ffffff;
}
    
body.recruit a .entry-link.career:hover {
    background-color: initial;
    background-color: rgba(0,0,0,0);
    color: #5F82C4;
}  
    
body.recruit .modal-overlay{
    z-index: 1010;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background-color: rgba(0,0,0,0.7);
}
    
body.recruit .modal-staff{
    z-index: 1015;
    display: none;
    position: fixed;
    top:100px;
    left:100px;
    width:850px;
    height: 500px;
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0px 10px 20px #333;
}

body.recruit .modal-staff-mask{
	height:inherit;
	display:block;
	position:relative;
}

    
body.recruit .modal-staff .portrait {
    width: 350px;
    height: 100%;
    position: absolute;
    right:0;
    background-repeat: no-repeat;
    background-position: center left;
    background-size: cover;
}
body.recruit .modal-staff.modal-staff-1 .portrait {
    background-image: url(../img/recruit_interview01.jpg);
	left:0;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

body.recruit .modal-staff.modal-staff-2 .portrait {
    background-image: url(../img/recruit_interview02.jpg);
	background-position:center right;
	right:0;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}
body.recruit .modal-staff.modal-staff-3 .portrait {
    background-image: url(../img/recruit_interview03.jpg);
	left:0;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}
body.recruit .modal-staff.modal-staff-4 .portrait {
    background-image: url(../img/recruit_interview04.jpg);
	background-position:center right;
	right:0;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}
body.recruit .modal-staff.modal-staff-5 .portrait {
    background-image: url(../img/recruit_interview05.jpg);
	left:0;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}
body.recruit .modal-staff.modal-staff-6 .portrait {
    background-image: url(../img/recruit_interview06.jpg);
	background-position:center right;
	right:0;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
}


body.recruit .modal-staff .interview {
    height: 100%;
	overflow-y:auto;
	position:absolute;
}

body.recruit .modal-staff.modal-staff-1 .interview, body.recruit .modal-staff.modal-staff-3 .interview, body.recruit .modal-staff.modal-staff-5 .interview {
	width: 500px;
	padding:20px 60px;
	right:0;
}

body.recruit .modal-staff.modal-staff-2 .interview, body.recruit .modal-staff.modal-staff-4 .interview, body.recruit .modal-staff.modal-staff-6 .interview {
	width: 100%;
	padding:20px 410px 20px 60px;
	left:0;
}

body.recruit .modal-staff .interview .answer{
	line-height:140%;
}

body.recruit .modal-staff .interview .answer.schedule {

}

body.recruit .modal-staff .profile{
	color: #333;
	position: absolute;
	right:0;
	left:0;
    	bottom: 0;
	margin:20px;
    	padding: 10px;
	background-color:rgba(255,255,255,0.7);
}
    

body.recruit .modal-staff .position span {
    display: block;
}
    
body.recruit .modal-staff .name {
    font-size: 200%;
    margin-bottom: 10px;
}

body.recruit .modal-staff .recruit-format {
    font-size: 200%;
    margin-bottom: 10px;
}

body.recruit .modal-close{
    position: absolute;
    width: 36px;
    height: 36px;
    border-radius: 18px;
    background: #333;
    top: -18px;
    right: -18px;
    background-image: url(../img/recruit_modal_close.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 70%;
}

body.recruit .interview-item{
    margin-bottom: 24px;
}
    
body.recruit .question {
    font-size: 120%;
    font-weight: bold;
}

    
/*社員画像群*/    
/*画像は4x3のグリッドに収まるよう配置・・・*/   
    
body.recruit .staff-images{
    position:relative;
    width: 100%;
    height: 570px;
}
body.recruit .staff-images .staff-item{
        position: absolute;
        background-repeat: no-repeat;
        background-size: cover;
        height: 180px;
        margin-right: 10px;
        margin-bottom: 10px;
        transition-duration: 0.3s;
        color:#000000;
}


body.recruit .staff-images .staff-item#part1{
        top: 0px;
        left: 0px;
        width:calc(((100% - 110px)/4) + 20px );
        height: 370px;
        border-top-left-radius: 8px;
 	background-image: url(../img/recruit_interview01.jpg);
        background-position: top left;

}    
    
body.recruit .staff-images .staff-item#part2{
        top: 0px;
        left: calc(((100% - 110px)/4) + 30px );
        width:calc(((100% - 110px)/2) + 50px );
	background-image: url(../img/recruit_interview02.jpg);
        background-position: top right;
        background-position: center -50px;
}
body.recruit .staff-images .staff-item#part3{
        top: 190px;
        left:calc(((100% - 110px)/4) + 30px );
        width:calc(((100% - 110px)/2) + 50px );
	background-image: url(../img/recruit_interview03.jpg);
        background-position: top left;
        background-position: center -50px;
}
body.recruit .staff-images .staff-item#part4{
        top: 380px;
        left:calc(((100% - 110px)/2) + 60px );
        width:calc(((100% - 110px)/2) + 50px );
        border-bottom-right-radius: 8px;
	background-image: url(../img/recruit_interview04.jpg);
        background-position: top right;
        background-position: center -50px;
}
body.recruit .staff-images .staff-item#part5{
        top: 380px;
        left: 0px;
        width:calc(((100% - 110px)/2) + 50px );
        border-bottom-left-radius: 8px;
	background-image: url(../img/recruit_interview05.jpg);
        background-position: top left;
        background-position: center -50px;
}
body.recruit .staff-images .staff-item#part6{

        top: 0px;
        left:calc(((100% - 110px) * 3 / 4) + 90px );
        width:calc(((100% - 110px)/4) + 20px );
        height: 370px;
        border-top-right-radius: 8px;
	background-image: url(../img/recruit_interview06.jpg);
        background-position: top right;
}

body.recruit .staff-images .staff-item-mask{
	width:100%;
	height:100%;
        background-color: rgba(0, 0, 0,0);
        transition-duration: 0.3s;
}

body.recruit .staff-images .staff-item-mask:hover{
        background-color: rgba(0, 0, 0,0.4);
}

body.recruit .staff-images .staff-item-mask:hover .staff-sentence{
        background-color: initial;
        background-color: rgba(0,0,0,0);
	color:#fff;
}

body.recruit .staff-images .staff-item#part1 .staff-item-mask{
        border-top-left-radius: 8px;
}
body.recruit .staff-images .staff-item#part4 .staff-item-mask{
        border-bottom-right-radius: 8px;
}
body.recruit .staff-images .staff-item#part5 .staff-item-mask{
        border-bottom-left-radius: 8px;
}
body.recruit .staff-images .staff-item#part6 .staff-item-mask{

        border-top-right-radius: 8px;
}

.staff-item .staff-sentence{
        margin:10px;
	padding:10px;
	background-color:rgba(255,255,255,0.7);
        position: absolute;
        top:0px;
	bottom:0px;
        left: 0px;
        transition-duration: 0.3s;
}
.staff-item .staff-copy{
        font-size: 120%;
        line-height: 150%;
        margin-bottom: 10px;
}
.staff-item .staff-position{
        font-size: 100%;
}
.staff-item .staff-portrait{
        background-repeat: no-repeat;
        height: 180px;
}
    
.staff-item#part1 .staff-sentence{
        top:190px;
        left: 0px;
}

.staff-item#part2 .staff-sentence{
        top:0px;
        left: 0px;
	width:calc(50% - 25px);
}
.staff-item#part3 .staff-sentence{
        top:0px;
        left:initial;
        left:auto;
	right:0px;
	width:calc(50% - 25px);
}
.staff-item#part4 .staff-sentence{

        top:0px;
        left: 0px;
	width:calc(50% - 25px);
}  
.staff-item#part5 .staff-sentence{
        top:0px;
        left:initial;
        left:auto;
	right:0px;
	width:calc(50% - 25px);
} 
.staff-item#part6 .staff-sentence{
        top:190px;
        left: 0px;
}

body.recruit .office-images{
    position:relative;
    width: 100%;
    height: 750px;
}

body.recruit .office-images .image-item{
        position: absolute;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        height: 180px;
        margin-right: 10px;
        margin-bottom: 10px;
        transition-duration: 0.3s;
}
    
body.recruit .office-images .image-item#part1{
        background-image: url(../img/recruit_office01.jpg);
        top: 0px;
        left: 0px;
        width:33%;
        border-top-left-radius: 8px;
}
body.recruit .office-images .image-item#part2{
        background-image: url(../img/recruit_office02.jpg);
        top: 0px;
        left: calc(33% + 10px);
        width:calc(66% + 10px);
        border-top-right-radius: 8px;
}
body.recruit .office-images .image-item#part3{
        background-image: url(../img/recruit_office03.jpg);
        top: 190px;
        left: 0px;
        width:calc(66% + 10px);
        
}
body.recruit .office-images .image-item#part4{
        background-image: url(../img/recruit_office04.jpg);
        top: 190px;
        left: calc(66% + 20px);
        width:33%;
        height: 370px;
	margin-right:0px;
}
body.recruit .office-images .image-item#part5{
        background-image: url(../img/recruit_office05.jpg);
        top: 380px;
        left: 0px;
        width:33%;
        height: 370px;
        border-bottom-left-radius: 8px;
}
body.recruit .office-images .image-item#part6{
        background-image: url(../img/recruit_office06.jpg);
        top: 380px;
        left: calc(33% + 10px);
        width:33%;
	margin-right:0px;
}
body.recruit .office-images .image-item#part7{
        background-image: url(../img/recruit_office07.jpg);
        top: 570px;
        left: calc(33% + 10px);
        width:calc(66% + 10px);
        border-bottom-right-radius: 8px;
}
body.recruit .section-container:after{
	clear:both;
	display:block;
	content:"";
}

@media screen and (max-width:979px){
	body.recruit section.title-section{
		min-width: 0;
		height: auto !important;
		min-height:30vw;
	}
	body.recruit header.recruit-top-header .menu-open-button a{border:solid 1px rgba(255,255,255,0.5);color:#fff;}
	body.recruit header.recruit-top-header nav.head-nav ul li.active{border:0;}
}

@media screen and (max-width:949px){
	.staff-item .staff-copy{font-size:110%;}
	.staff-item .staff-position{font-size:85.714%;}
	body.recruit .staff-images .staff-item#part2{
	        background-position: center;
	}
	body.recruit .staff-images .staff-item#part3{
	        background-position: center;
	}
	body.recruit .staff-images .staff-item#part4{
	        background-position: center;
	}
	body.recruit .staff-images .staff-item#part5{
	        background-position: center;
	}
}

@media screen and (max-width: 949px){
	body.recruit .modal-staff{width:600px;}
	body.recruit .modal-staff.modal-staff-1 .interview, body.recruit .modal-staff.modal-staff-3 .interview, body.recruit .modal-staff.modal-staff-5 .interview{
		width:350px;
		padding:20px 40px;
	}
	body.recruit .modal-staff.modal-staff-2 .interview, body.recruit .modal-staff.modal-staff-4 .interview, body.recruit .modal-staff.modal-staff-6 .interview{
		padding:20px 290px 20px 40px;
	}
	body.recruit .modal-staff .portrait{width:250px;}
}


@media screen and (max-width: 849px){
	body.recruit .staff-images{height:initial;}
	body.recruit .staff-images{height:auto;}
	body.recruit .staff-images .staff-item{position:relative;top:0 !important;left:0 !important;width:100% !important;height:185px !important;border-radius:0px !important;background-position:top !important;}
	body.recruit .staff-images .staff-item-mask{border-radius:0px !important;}
	.staff-item .staff-sentence{top:0 !important;bottom:0 !important; left:0; width:calc(50% - 25px) !important;}
	.staff-item .staff-copy{font-size:120%;}
	.staff-item .staff-position{font-size:100%;}
	.staff-item#part1 .staff-sentence{left:inherit;right:0;}
	.staff-item#part3 .staff-sentence{left:inherit;right:0;}
	.staff-item#part5 .staff-sentence{left:inherit;right:0;}
	.staff-item#part1 .staff-sentence{left:inherit;right:0;}
	.staff-item#part3 .staff-sentence{left:inherit;right:0;}
	.staff-item#part5 .staff-sentence{left:inherit;right:0;}
}



@media screen and (max-width: 639px){
	.child-page.recruit .title-section .catch-copy-block h2.catch-copy{height:200%;font-size:200%;}

	body.recruit .section-container{padding-top:30px;padding-bottom:30px;}
	body.recruit section .inner-block{padding-right:24px;}
	body.recruit section .inner-block.half{width:100%;}
	body.recruit h3.section-title{height:36px;}
	body.recruit h4{font-size:128.574%;font-weight:bold;margin-bottom:10px;}

	.staff-item .staff-copy{font-size:100%;}
	.staff-item .staff-position{font-size:85.714%;}

	body.recruit .office-images{height:initial;}
	body.recruit .office-images{height:auto;}
	body.recruit .office-images .image-item{position:relative;top:0 !important;left:0 !important;width:100% !important;height:185px !important;border-radius:0px !important;}
	body.recruit .office-images .image-item#part2{background-position:left;}
	body.recruit a .entry-link {font-size:100%;margin-bottom:0;}

}


@media screen and (max-width: 639px){
	body.recruit .modal-staff{width:80%;top:40px;height:initial;border-radius:0px;}
	body.recruit .modal-staff{height:auto;}
	body.recruit .modal-staff .profile{padding:8px 20px;height:initial;margin:10px;}
	body.recruit .modal-staff .profile{height:auto;}
	body.recruit .modal-staff .portrait{position:relative;width:100%;height:200px;border-radius:0px !important;margin:0px;}
	body.recruit .modal-staff .name{font-size:150%;margin-bottom:0;}
	body.recruit .modal-staff .interview{position:initial;width:100% !important;padding:20px 20px !important;height:300px;overflow-y:scroll;background-color:#fff;}
	body.recruit .modal-staff .interview{position:auto;}

	body.recruit .modal-staff.modal-staff-1 .portrait{background-position:bottom left;}
	body.recruit .modal-staff.modal-staff-2 .portrait{background-position:bottom right;}
	body.recruit .modal-staff.modal-staff-3 .portrait{background-position:bottom left;}
	body.recruit .modal-staff.modal-staff-4 .portrait{background-position:bottom right;}
	body.recruit .modal-staff.modal-staff-5 .portrait{background-position:bottom left;}
	body.recruit .modal-staff.modal-staff-6 .portrait{background-position:bottom right;}
}

@media screen and (max-width: 374px){
	.staff-item .staff-copy{font-size:85.714%;}
	.staff-item .staff-position{font-size:71.428%;}
}

@media screen and (min-width:640px){
body.recruit-details-page .main-column {padding:0 24px 0;}
}


/*===================================================================
	Recruit New Graduate 2018 Section Setting
===================================================================*/

body.recruit .news-section h3.section-title{background-image:url(../img/recruit_section00.png);}
body.recruit section.news-section{background-color:#eaf0c4;}

body.recruit section.news-section p{
    padding-bottom:20px;
}
body.recruit section.news-section p.annotation{
    padding-top:10px;
    padding-bottom:0px;
	font-size:85.714%;
}

body.recruit section.news-section ul li{
    display: table;
    padding: 6px 0px 0px;
    border-spacing: 0;
    border-radius: 4px;
	font-size:125%;
}


body.recruit section.news-section ul li span {
    display:table-cell;
    color:#333;
    transition-property: all;
    transition: 0.3s linear;
}

body.recruit section.news-section ul li span.date {
    width:8em;
    white-space:nowrap;
    color:#9e1241;
}



body.recruit section.news-section ul li:hover span, body.recruit section.news-section ul li:hover span.date {
    color:#e22263;
}



body.recruit section.news-section .new-graduate-2018-entry-block:after {
	clear:both;
	content:"";
	display:block;
}

body.recruit section.news-section .new-graduate-2018-entry-link-item {
	width:50%;
	float:left;
}

body.recruit section.news-section .new-graduate-2018-entry-link-item.left {
    padding-right:24px;
}

body.recruit section.news-section .new-graduate-2018-entry-link-item.right {
    padding-left:24px;
}

body.recruit section.news-section .new-graduate-2018-entry-link {
	width: 100%;
    text-align: center;
    padding: 10px;
    border-radius: 8px;
    color: #fff;
    transition-property: all;
    transition: 0.3s linear;
}
body.recruit section.news-section .new-graduate-2018-entry-link.left {
    background-color: #0da5b2;
    border: 1px solid #0da5b2;

}
body.recruit section.news-section .new-graduate-2018-entry-link.right {
    background-color: #9fca41;
    border: 1px solid #9fca41;
}
body.recruit section.news-section .new-graduate-2018-entry-link.left:hover {
	color:#0da5b2;
	background-color:rgba(0,0,0,0);
}

body.recruit section.news-section .new-graduate-2018-entry-link.right:hover {
	color:#9fca41;
	background-color:rgba(0,0,0,0);
}

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

body.recruit section.news-section ul li{
	font-size:110%;
}

body.recruit section.news-section .new-graduate-2018-entry-link-item {
	width: 100%;
}
body.recruit section.news-section .new-graduate-2018-entry-link-item.left, body.recruit section.news-section .new-graduate-2018-entry-link-item.right {
	padding:0px;
	margin:10px 0px;
}

}

@media screen and (min-width: 640px){

body.recruit section.news-section .inner-block.half{margin-bottom:0px;}

}


/*===================================================================
	Recruit Details Child Page Setting
===================================================================*/

body.recruit.recruit-details-page .page-body{
	padding-bottom:108px;
}
body.recruit.recruit-details-page #footerContainer{
	position:absolute;
	bottom:0;
}

body.recruit.two-column h1.page-title{
	line-height:150%;
	padding-top:59px;
	padding-bottom:59px;

}

body.recruit.two-column nav.local-nav ul{padding:180px 0px;}

body.recruit .recruit-details-list-section{margin-bottom:66px;}
body.recruit .recruit-details-list-section h2{font-size:200%;}
body.recruit .recruit-details-list{width:100%;margin:20px 0px;display:table;}
body.recruit .recruit-details-list:after{clear:both;display:block;content:"";}
body.recruit .recruit-details-list a{width:50%;margin-bottom:20px;padding-right:48px;vertical-align:top;float:left;display:table-cell;}
body.recruit .recruit-details-list.new-graduate a .recruit-details-link {
    text-align: center;
    width: 100%;
    border-radius: 8px;
    border: solid 1px #9FCA41;
    font-size: 125%;
    font-weight: bold;
    color: #9FCA41;
    transition-property: all;
    transition: 0.3s linear;
    padding: 20px;
}
body.recruit .recruit-details-list.new-graduate a .recruit-details-link:hover {
    color: #ffffff;
    background-color: #9FCA41;
}


body.recruit .recruit-details-list.career a .recruit-details-link {
    text-align: center;
    width: 100%;
    border-radius: 8px;
    border: solid 1px #5F82C4;
    font-size: 125%;
    font-weight: bold;
    color: #5F82C4;
    transition-property: all;
    transition: 0.3s linear;
    padding: 20px;
}
body.recruit .recruit-details-list.career a .recruit-details-link:hover {
    color: #ffffff;
    background-color: #5F82C4;
}

@media screen and (max-width: 749px){
	body.recruit .recruit-details-list a{width:100%;margin-bottom:24px;padding-right:0px;}
	body.recruit.recruit-details-page .page-body{padding-bottom:170px;}
	body.recruit .recruit-details-list.new-graduate a .recruit-details-link {padding: 10px;}
	body.recruit .recruit-details-list.career a .recruit-details-link {padding: 10px;}
}
@media screen and (max-width: 639px){
	body.recruit .recruit-details-list-section h2{font-size:133%;font-weight:bold;}
}


/*===================================================================
	Recruit Requirements Child Page Setting
===================================================================*/

body.recruit .requirement-section{margin-bottom:66px;}
body.recruit h2{font-size:200%; margin-bottom:20px}
body.recruit dl.requirements-list{width:100%;margin-bottom:66px;}
body.recruit dl.requirements-list:after{clear:both;display:block;content:"";}
body.recruit dl.requirements-list dt{width:30%; float:left; padding:0px 0px 20px;}
body.recruit dl.requirements-list dd{width:70%; float:left; padding:0px 0px 20px;}

body.recruit dl.requirements-list ul>li{line-height:150%;margin-bottom:5px;}

body.recruit dl.requirements-list ul>li>ul{padding-left:18px;}

body.recruit .recruit-entry-form.career{padding:30px;border:1px solid #5F82C4;border-radius:8px;}

body.recruit .recruit-entry-form.career .form-submit input[type="submit"]{
	border:solid 1px #5F82C4;
	background-color:#5F82C4;
	color:#ffffff;
}
body.recruit .recruit-entry-form.career .form-submit input[type="submit"]:hover{
	background-color:#ffffff;
	color:#5F82C4;
}

body.recruit .recruit-entry-form.new-graduate{padding:30px;border:1px solid #9FCA41;border-radius:8px;}

body.recruit .recruit-entry-form.new-graduate .form-submit input[type="submit"]{
	border:solid 1px #9FCA41;
	background-color:#9FCA41;
	color:#ffffff;
}
body.recruit .recruit-entry-form.new-graduate .form-submit input[type="submit"]:hover{
	background-color:#ffffff;
	color:#9FCA41;
}

@media screen and (max-width: 639px){
	body.recruit .requirement-section h2{font-size:133%;font-weight:bold;}
	body.recruit .recruit-entry-form h2{font-size:133%;font-weight:bold;}
	body.recruit dl.requirements-list > dt{width:100%;font-weight:bold;padding:0px 0px 0px;}
	body.recruit dl.requirements-list > dd{width:100%;padding:0px 0px 21px;}
}


/*===================================================================
	Recruit Github Page Setting
===================================================================*/

body.recruit .recruit-github-block{width:100%;}
body.recruit .recruit-github-block:after{display:block;content:"";clear:both;}
body.recruit .recruit-github-block .inner-block.half{width:50%;float:left;margin-bottom:66px;}
body.recruit .recruit-github-block .inner-block.half .description{margin-bottom:48px;}
body.recruit .recruit-github-block .inner-block.half.left{padding-right:48px;}
body.recruit .recruit-github-block .inner-block.half.right{padding-left:48px;}

body.recruit .wanted-engineer-job-list h3{font-weight:bold;}
body.recruit .wanted-engineer-job-list ul{margin-bottom:20px;}
body.recruit .wanted-engineer-job-list ul li{line-height:200%;}

body.recruit .recruit-entry-form.github{
    padding: 30px;
    border: 1px solid #24292e;
    border-radius: 8px;
}

body.recruit .recruit-entry-form.github .form-submit input[type="submit"]{
    border: solid 1px #4BACC6;
    background-color: #4BACC6;
    color: #ffffff;
}

body.recruit .recruit-entry-form.github .form-submit input[type="submit"]:hover{
    background-color: #ffffff;
    color: #4BACC6;
}

@media screen and (max-width: 979px){
body.recruit .recruit-github-block .inner-block.half{width:100%;}
body.recruit .recruit-github-block .inner-block.half.left{padding-right:0px;}
body.recruit .recruit-github-block .inner-block.half.right{padding-left:0px;}
}

body.recruit .recruit-details-list.new-graduate a .recruit-details-link.github, body.recruit .recruit-details-list.career a .recruit-details-link.github {
    border: solid 1px #24292e;
    color: #24292e;
}
body.recruit .recruit-details-list.new-graduate a .recruit-details-link.github:hover, body.recruit .recruit-details-list.career a .recruit-details-link.github:hover {
    background-color: #24292e;
    color: #ffffff;
}


/*===================================================================
	404 Page Setting
===================================================================*/

body.none-page .page-body{
	padding:104px 48px 108px;
}
body.none-page #footerContainer{
	position:absolute;
	bottom:0;
}
@media screen and (max-width: 639px){
	body.none-page .page-body{
		padding:104px 24px 170px;
	}
}
/*===================================================================
	Gnavi Contact Link
===================================================================*/

header nav.head-nav .sub-nav ul li.contact a{
    background-color: rgb(55,174,139);
    padding: 0px 12px;
    color: #fff;
    border-radius: 24px;
    font-weight:bold;
}

header.fixed nav.head-nav .sub-nav ul li.contact a, body.child-page header nav.head-nav .sub-nav ul li.contact a  {
    background-color: rgb(55,174,139);
    padding: 0px 12px;
    color: #fff;
    border-radius: 24px;
    font-weight:bold;
}

body.child-page header.service-child-page nav.head-nav .sub-nav ul li.contact a,
body.child-page header.recruit-top-header nav.head-nav .sub-nav ul li.contact a,
body.child-page header.company-top-header nav.head-nav .sub-nav ul li.contact a{
    background-color: rgba(255,2555,255,1);
    padding: 0px 12px;
    color: #1c1c1c;
    border-radius: 24px;
    font-weight:bold;
}


/*-------------------------------------------------------------------
    Other Service List
-------------------------------------------------------------------*/

.other-service-section{
	width:100%;
	background:#e0dbd3;
	margin-top:-60px;
}

.other-service-section .section-container{
	padding:48px 48px;
}

.other-service-section ul.other-service-list{
    width: 100%;
    margin-bottom: -48px;
    zoom: 1;
}

.other-service-section ul.other-service-list:after{content:'';display:block;clear:both;}

.other-service-section ul.other-service-list li.service-item{
    position: relative;
    margin-bottom: 48px;
    padding-right: 24px;
    padding-left: 24px;
    vertical-align: top;
    float: left;
}
.other-service-section ul.other-service-list li.service-item:first-child{
    padding-left: 0px;
}
.other-service-section ul.other-service-list li.service-item:last-child{
    padding-right: 0px;
}


.other-service-section ul.other-service-list li.service-item a{
    display: block;
    border-radius: 0 0 4px 4px;
    transition-duration: 0.3s;
    padding-left:50px;
}

.other-service-section ul.other-service-list li.service-item a{
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 44px;
}

.other-service-section ul.other-service-list li.service-item h3{
    display: block;
    margin-bottom: 0px;
    font-size: 120%;
    font-weight: bold;
}

.other-service-section ul.other-service-list li.service-item h3 > p{
    display: inline-block;
    margin-top: -4px;
    margin-bottom: 0px;
    padding: 12px 0;
    vertical-align:text-top;
}


.other-service-section ul.other-service-list li.service-item.consumer-marketing h3 > p{
    color: #A0A91C;
}
.other-service-section ul.other-service-list li.service-item.retail-marketing h3 > p{
    color: #00a0df;
}
.other-service-section ul.other-service-list li.service-item.ai-solution h3 > p{
    color: #9B65B1;
}


.other-service-section ul.other-service-list li.service-item.consumer-marketing a{
    background-image: url(../img/top_service_icon01.png);
}
.other-service-section ul.other-service-list li.service-item.retail-marketing a{
    background-image: url(../img/top_service_icon02.png);
}
.other-service-section ul.other-service-list li.service-item.ai-solution a{
    background-image: url(../img/top_service_icon03.png);
}

.other-service-section ul.other-service-list li.service-item a:hover{
    transform: scale(1.05, 1.05);
}

.other-service-section ul.other-service-list li.service-item a h3 p{
    transition-duration: 0.3s;    
}

    
.other-service-section ul.other-service-list li.service-item .service-description{
    transition-duration: 0.3s;
    color: #333;
}

.other-service-section ul.other-service-list.three-items li.service-item{
	width:33%;
}
.other-service-section ul.other-service-list.three-items li.service-item a{
	background-size:50%;

}

.other-service-section ul.other-service-list li.service-item.current-page a {
    opacity: 0.4;
}

.other-service-section ul.other-service-list li.service-item.current-page a:hover {
    transform: scale(1,1);
}

.other-service-section ul.other-service-list li.service-item.current-page h3 > p {
    color: #888;
}


@media screen and (max-width: 1199px){
    .other-service-section ul.other-service-list li.service-item a{
        height: auto;
    }
}



@media screen and (min-width: 640px) and (max-width: 1199px){
    .other-service-section .section-container{
	padding:24px 48px;
    }
    .other-service-section ul.other-service-list li.service-item, .service-detail-section ul.another-service-list.three-items li.service-item{
        width: 50%;
        box-sizing: border-box;
    }
    .other-service-section ul.other-service-list li.service-item:nth-child(2n), .service-detail-section ul.another-service-list.three-items li.service-item:nth-child(2n){
	padding-right: 0px;
	padding-left: 24px;
    }
    .other-service-section ul.other-service-list li.service-item:nth-child(2n+1), .service-detail-section ul.another-service-list.three-items li.service-item:nth-child(2n+1){
	padding-right: 24px;
	padding-left: 0px;
    }
    .other-service-sectionn ul.other-service-list li.service-item a, .service-detail-section ul.another-service-list.three-items li.service-item a{
        height: 140px;
    }
}

@media screen and (max-width: 699px){
    .other-service-section ul.other-service-list li.service-item, .service-detail-section ul.another-service-list.three-items li.service-item{
        width: 100%;
        padding: 0px;
	margin-bottom:24px;
    }
    .other-service-section .section-container{
	padding:24px 24px 48px;
    }
    .other-service-section ul.other-service-list li.service-item h3{
	font-size: 100%;
    }
    .other-service-section ul.other-service-list li.service-item:nth-child(2n), .service-detail-section ul.another-service-list.three-items li.service-item:nth-child(2n){
	padding-right: 0px;
	padding-left: 0px;
    }
    .other-service-section ul.other-service-list li.service-item:nth-child(2n+1), .service-detail-section ul.another-service-list.three-items li.service-item:nth-child(2n+1){
	padding-right: 0px;
	padding-left: 0px;
    }
}

/*===================================================================
	News Page Related Page and Contact Area
===================================================================*/
/* Related Page Area Setting */
.recommended-articles-block{
	margin-bottom:-26px;
}
body.news .page-body article .recommended-articles-block h2{
	margin-bottom:0px;
}
.recommended-articles-block ul.articles-list{
	width:100%;

}
.recommended-articles-block ul.articles-list:after{
	content:'';
	display:block;
	clear:both;
}
.recommended-articles-block ul.articles-list li{
	width:calc((33.333% - 32px) + 48px);
	float:left;
	padding-left: 48px;
}
.recommended-articles-block ul.articles-list li:first-child {
	width:calc(33.333% - 32px);
	padding-left: 0;
}
.recommended-articles-block ul.articles-list li a{
	display:block;
	position:relative;
	padding-bottom:12px;
	transition-duration:0.3s;
}
.recommended-articles-block ul.articles-list li a:hover{
	transform:scale(1.05,1.05);
}
.recommended-articles-block ul.articles-list li a:before{
	position:absolute;
	top:0;
	left:0;
	min-width:66px;
	padding:2px 6px;
	font-size:80%;
	font-weight:bold;
	color:#333;
	text-align:center;
	background-color:rgba(255,255,255,0.8);
	border-bottom-right-radius:8px;
}
.recommended-articles-block ul.articles-list li.service a:before{content:"サービス";display:block;}
.recommended-articles-block ul.articles-list li a .thumbnail-image img{width:100%; vertical-align:top;}
.recommended-articles-block ul.articles-list li a .article-title{display:block;margin:12px 0 6px; color:#333; transition-duration:0.3s;}
.recommended-articles-block ul.articles-list li a .article-title .service-title{font-weight:bold;}
.recommended-articles-block ul.articles-list li a:hover .article-title{color:#e22263;}

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

.recommended-articles-block ul.articles-list li, .recommended-articles-block ul.articles-list li:first-child {
	width:100%;
	float:none;
	padding-left: 0px;
}
.recommended-articles-block ul.articles-list li a:after{content:'';display:block;clear:both;}
.recommended-articles-block ul.articles-list li a span{float:left;}
.recommended-articles-block ul.articles-list li a .thumbnail-image{width:40%; vertical-align:top;}
.recommended-articles-block ul.articles-list li a .article-title{width:60%;padding-left:20px;margin:0;}
}

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

.recommended-articles-block ul.articles-list li a .article-title {line-height:130%;font-size:86%;}

}

.recommended-articles-block ul.articles-title-list{
	width:100%;
}
.recommended-articles-block ul.articles-title-list li{
	margin-bottom:0.5em;
}

.recommended-articles-block ul.articles-title-list li a .article-title{
    display:block;
	transition-duration:0.3s;
}
.recommended-articles-block ul.articles-title-list li a:hover .article-title{
	color:#0360e5;
}



/* Contact Area Setting */

body.child-page.news footer .footer-upper{display:none;}



.news-form-link-blcok {
    width: 100%;
}

body.news .news-form-link-block .inner-block {
    width: 50%;
    margin-bottom: 48px;
    vertical-align: top;
    float: left;
}

body.news .news-form-link-block .inner-block.left{
	    padding-right: 12px;
	    padding-left: 24px;

}
body.news .news-form-link-block .inner-block.right{
	    padding-right: 24px;
	    padding-left: 12px;

}

body.news .news-form-link-block .inner-block a {
    text-align: center;
    width: 100%;
    border-radius: 8px;
    color: #fff;
    display: inline-block;
	transition-duration:0.3s;
	background:#63c64b;
    border: solid 1px rgba(99,198,75,0.5);
	height:60px;
	line-height:60px;
}


body.news .news-form-link-block .inner-block a:hover{
	background-color:rgba(0,0,0,0);
	color:#63c64b;
	transform:scale(1.05, 1.05);
}

body.news .news-form-link-block .inner-block a .form-link-box {
    display:table;
    border-spacing:12px 0;
    margin:0 auto;
}
body.news .news-form-link-block .inner-block a .form-link-box span {
    display:table-cell;
    vertical-align:middle;
    font-size: 114.285%;
}
body.news .news-form-link-block .inner-block a .form-link-box span.icon {
	font-size:200%;
}

@media screen and (max-width: 979px){
	body.news .news-form-link-block .inner-block {width:50%;margin:0 auto 12px; float:none;}
	body.news .news-form-link-block .inner-block.left{padding-right: 0;padding-left: 0;}
	body.news .news-form-link-block .inner-block.right{padding-right: 0;padding-left: 0;}
}
@media screen and (max-width: 799px){
	body.news .news-form-link-block .inner-block {width:70%;}
}

@media screen and (max-width: 639px){
	body.news .news-form-link-block .inner-block {width:100%;}
}


body.news .news-contact-form {margin-top:80px; margin-bottom:-26px; padding:30px; border:1px solid #95a0a5; border-radius:8px;}
body.news .news-contact-form h2{font-size:150%; font-weight:bold; margin-bottom:20px;}

body.news .tel-number-block{text-align:center;margin:20px 0;}
body.news .tel-number-block .tel-number{font-size:160%;margin-left:-20px;}
body.news .tel-number-block .reception-time{font-size:85.714%;}


body.news .modal-contact-message{
	z-index: 1015;
	display: none;
	position: fixed;
	top: 100px;
	left: 100px;
	width: 70%;
	max-width:524px;
	height: auto;
	background-color: #ffffff;
	border-radius: 8px;
	box-shadow: 0px 10px 20px #333;
}
body.news .message-area {
	margin: 0 auto;
	padding: 48px 0;
	font-size: 150%;
	width: 80%;
	color: #ea695b;
}
body.news .message-area span{
    display: block;
}
body.news .modal-close{
	position: absolute;
	width: 24px;
	height: 24px;
	border-radius: 18px;
	background: #ea695b;
	top: -12px;
	right: -12px;
	background-image: url(/wp-content/themes/datasection2016/img/recruit_modal_close.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 70%;
}
body.news .modal-overlay{
	z-index:1010;
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
	background-color:rgba(0,0,0,0.7);
}
@media screen and (max-width:639px){
body.news .modal-contact-message{
	width:80%;
	top:40px;
	height:auto;
	border-radius:8px;
}
body.news .message-area {
	font-size:114.28%;
	padding:24px 0;
}
}




/*===================================================================
	Guidebook Download Page
===================================================================*/

body.contact .introduction-2column-area{width:100%;margin-bottom:40px;}
body.contact .introduction-2column-area:after{clear:both;display:block;content:"";}
body.contact .introduction-2column-area .introduction.guidebook{width:70%;float:left;margin-top:20px;}
body.contact .introduction-2column-area img{width:30%;float:left;}
body.contact .introduction-2column-area .introduction.guidebook ul{list-style-type:disc;padding-left:20px;font-weight:bold;}

@media only screen and (max-width:729px){
body.contact .introduction-2column-area img{width:60%;float:none;margin:0 auto;display:block;}
body.contact .introduction-2column-area .introduction.guidebook{width:100%;float:none;margin-top:0px;}
}

@media only screen and (max-width:579px){
body.contact .introduction-2column-area img{width:80%;}
body.contact h1.guidebook-download{line-height:150%;}
}


/*===================================================================
	Top Page Pickup
===================================================================*/
.top-page .pickup-section{
	background-color:#f3f3f3;
}
.top-page .pickup-section .pickup-block{
	position:relative;
}


.top-page .pickup-section .pickup-block:after{
	clear:both;
	content:"";
	display:block;
}
.top-page .pickup-section .pickup-block .pickup-image{
	width:30%;
	position:absolute;
}
.top-page .pickup-section .pickup-block .pickup-image img{
	width:100%;
}
.top-page .pickup-section .pickup-block .pickup-contents{
	width: calc(50% - 24px);
	text-align: center;
	padding: 24px;
	float: left;
	background-color: #ffffff;
	border-radius: 6px;
}

.top-page .pickup-section .pickup-block .pickup-contents.left{
	margin-right:24px;
}
.top-page .pickup-section .pickup-block .pickup-contents.right{
	margin-left:24px;
}

.top-page .pickup-section .pickup-block .pickup-contents #pickup-service{
	padding-left:33%;
	position:static;
}
.top-page .pickup-section .pickup-block .pickup-contents #pickup-button{
	padding-left:33%;
	position:static;
}

.top-page .pickup-section .pickup-block .pickup-contents .pickup-heading{
	font-size:133%;
	font-weight:bold;
	margin-bottom:12px;
}
.top-page .pickup-section .pickup-block .pickup-contents .pickup-title{
	font-size:133%;
}
.top-page .pickup-section .pickup-block .pickup-contents .pickup-title .br{
	display:none;
}
.top-page .pickup-section .pickup-block .pickup-contents .pickup-title a{
	border-bottom:1px solid #0084C6;
}
.top-page .pickup-section .pickup-block .pickup-contents .pickup-title .service-title{
	font-size:128.89%;
}

.top-page .pickup-section .pickup-block .pickup-contents ul{
	list-style-type:disc;
	padding-left:20px;
	margin-bottom:15px;
}
.top-page .pickup-section a.service-contact-link{
	border: 1px solid rgb(99,198,75);
	border-radius: 4px;
	background-color: rgb(99,198,75);
	color: #ffffff;
	text-align: center;
	padding: 6px;
	transition-duration: 0.3s;
	display:block;
	width:90%;
	font-size:133%;
	margin:0 auto;
}
.top-page .pickup-section a.service-contact-link:hover{
	background-color: #f3f3f3;
	color: rgb(99,198,75);
}

.top-page .pickup-section .pickup-contents.left a.service-contact-link.button{
	border: 1px solid #A0A91C;
	background-color: #A0A91C;
}
.top-page .pickup-section .pickup-contents.left a.service-contact-link.button:hover{
	background-color: #ffffff;
	color: #A0A91C;
}
.top-page .pickup-section .pickup-contents.right a.service-contact-link.button{
	border: 1px solid #9B65B1;
	background-color: #9B65B1;
}
.top-page .pickup-section .pickup-contents.right a.service-contact-link.button:hover{
	background-color: #ffffff;
	color: #9B65B1;
}

.top-page .pickup-section a.service-contact-link.text-link{
	border: none;
	border-radius: 0px;
	background-color: rgba(0,0,0,0);
	color: #0084C6;
	text-align: center;
	padding: 6px;
	transition-duration: 0.3s;
	display:block;
	font-size:100%;
	margin:0 auto;
}
.top-page .pickup-section a.service-contact-link.text-link:hover{
	background-color: rgba(0,0,0,0);
	color: #0084C6;
}

@media only screen and (max-width: 939px){
	.top-page .pickup-section a.service-contact-link{
			font-size:100%;
		}
}
@media only screen and (max-width: 639px){
	.top-page .pickup-section .pickup-block .pickup-contents.left,
	.top-page .pickup-section .pickup-block .pickup-contents.right{
		margin:0 0 20px ;
		width:100%;
	}
}


@media only screen and (max-width: 579px){
	.top-page .pickup-section .pickup-block .pickup-contents .pickup-heading{
		font-size:90%;
	}
	.top-page .pickup-section .pickup-block .pickup-contents .pickup-title{
		font-size:90%;
		line-height:166%;
	}
	.top-page .pickup-section .pickup-block .pickup-contents .pickup-title .service-title{
		font-size:170%;
	}
	.top-page .pickup-section .pickup-block .pickup-contents .pickup-title .br{
		display:inline;
	}
	.top-page .pickup-section a.service-contact-link{
		min-width:0px;
		width:100%;
	}
	.top-page .pickup-section .pickup-block .pickup-contents #pickup-button{
		padding-left:0;
		padding-top:30px;
	}

	body.contact h1.page-title.trial-request{
		width: 100%;
		padding:0;
	}
	.top-page .pickup-section .pickup-block .pickup-contents ul{
		display:none;
	}
}
@media only screen and (max-width: 469px){
	.top-page .pickup-section .pickup-block .pickup-contents .pickup-title .br{
		display:inline;
	}
}


/*===================================================================
	Trial Request Form
===================================================================*/
body.contact h1.page-title.trial-request{
	font-size:214.28%;
	margin: 0 auto 20px;
	width: calc(70% - 42px);
}

body.contact .form-section.request.active.trial{
	background-color:#fff;
	padding-top:0;
}

.form-section.trial .form-list dl dt{width:30%;float:left;}
.form-section.trial .form-list dl dd{width:70%;float:left;}
.form-section.trial .form-list dl dt span.required{
	background: #fff;
	color:#0780e6;
	border:#0780e6 solid 1px;
}
@media only screen and (max-width: 979px){
	body.contact h1.page-title.trial-request{
		width: calc(80% - 42px);
	}
}
@media only screen and (max-width: 869px){
.form-section.trial .form-list dl dt,.form-section.trial .form-list dl dd{
width:100%;float:none;
}
}
@media only screen and (max-width: 729px){
	body.contact h1.page-title.trial-request{
		width: calc(90% - 42px);
	}
}
@media only screen and (max-width: 579px){
	body.contact h1.page-title.trial-request{
		width: 100%;
		padding:0;
	}
}
.form-section.trial ul.trial-form-link-list{list-style-type:disc;padding-left:20px;}
.form-section.trial ul.trial-form-link-list a{font-size:110%;transition-duration: 0.3s;}
.form-section.trial ul.trial-form-link-list a:hover{color: #0360e5;}




/*===================================================================
	Insight Intelligence Page
===================================================================*/

body.service.new-tools-format .title-section.tools .form-link-item{
	min-width: 464px;
}

body.service .title-section.tools.insight-intelligence .form-link-item a.form-link.ii .form-link-box span{
	font-size:100%;
}

body.service .title-section.tools.insight-intelligence .form-link-item a.form-link{
	font-size: 157.14%;
	background-color: #cf1c6d;
	border: 1px solid #cf1c6d;
	border-radius: 30px;
}
body.service .title-section.tools.insight-intelligence .form-link-item a.form-link:hover{
	background-color: #fff;
	color:#cf1c6d;
}

body.new-tools-format header.sub-header nav.head-nav .sub-nav ul{
	margin: 0 24px 0 auto;
}

body.service section.service-detail-section.ii:last-child{
	padding-bottom:60px;
}

body.child-page header.service-child-page.sub-header nav.head-nav .sub-nav ul li.contact.ii-trial a{
	background-color:#cf1c6d;
}

header.fixed nav.head-nav .sub-nav ul li.contact.ii-trial a,body.child-page header nav.head-nav .sub-nav ul li.contact.ii-trial a {
	background: #cf1c6d;
}

body.service .service-detail-section.ii p{
	margin-bottom:0;
}

body.service .service-detail-section.ii .service-detail-section-container{
	padding:30px 48px 48px;
}


body.service .service-detail-section.ii .service-detail-section-container h2, body.service .service-detail-section.ii .service-detail-section-container h3{
	margin-bottom:30px;
}
body.service .service-detail-section.ii .service-detail-section-container h3 .emphasis{
	color:#cf1c6d;
}

body.service .service-detail-section-container .service-feature-block,
body.service .service-detail-section-container .service-usage-block,
body.service .service-detail-section-container .service-price-block,
body.service .service-detail-section-container .service-contact-block,
body.service .service-detail-section-container .service-guidebook-block{
	margin-bottom:30px;
}


body.service .service-detail-section-container .service-function-detail-block,
body.service .service-detail-section-container .service-faq-detail-block{
	margin-bottom:48px;
}


body.service .service-detail-section-container .service-feature-block:last-child,
body.service .service-detail-section-container .service-usage-block:last-child,
body.service .service-detail-section-container .service-price-block:last-child,
body.service .service-detail-section-container .service-contact-block:last-child,
body.service .service-detail-section-container .service-guidebook-block:last-child,
body.service .service-detail-section-container .service-faq-detail-block:last-child{
	margin-bottom:0px;
}


body.service .service-price.left.detail {
    width: 33%;
}
body.service .service-price.right.detail{
    width: 67%;
}

ul.menu.option-service:after {
    clear: both;
    display: block;
    content: "";
}

.service-price.detail .form-link-item a.form-link {
    height: 90px;
    line-height: 45px;
}
body.service .service-detail-section-container .inner-block{
    	width: 100%;
	vertical-align:top;
	float:left;
}

body.service .service-detail-section.ii{
	margin-bottom:0px;
}


body.service .service-detail-section.ii.odd{
	background-color:#ffffff;
}

body.service .service-detail-section.ii.even{
	background-color:#e5f3f7;
}

body.service .service-detail-section.ii.ii-usage{
	background-image: url(../img/service_ii_bg02.jpg);
	color:#ffffff;
	background-size: cover;
	background-position-x: 50%;
	background-position-y: 0;
	background-repeat: no-repeat;
	background-attachment: fixed;
}

body.service .service-detail-section.ii.ii-usage .ii-usage-mask{
	background-color:rgba(0,0,0,0.3);
}

body.service .service-detail-section-container .inner-block.half{
	width:50%;
}
body.service .service-detail-section-container .inner-block.half.left{
	padding-right:24px;
}
body.service .service-detail-section-container .inner-block.half.right{
	padding-left:24px;
}

body.service .service-detail-section-container .service-introduce-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .service-detail-section-container .service-introduce-block .inner-block.introduce-sentence{
	width:60%;
}
body.service .service-detail-section-container .service-introduce-block .inner-block.introduce-image{
	width:40%;
	margin-left:4%;
	margin-right:-4%;
}
body.service .service-detail-section-container .service-introduce-block .inner-block.introduce-image img{
	width:100%;
}


body.service .service-detail-section-container .service-feature-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .service-detail-section-container .service-feature-block .feature-description{
	width:70%;
	float:left;
}
body.service .service-detail-section-container .service-feature-block h4{
	font-size:133%;
}

body.service .service-detail-section-container .inner-block.half:after{
	clear:both;
	display:block;
	content:"";
}


body.service .service-detail-section-container .service-feature-block .inner-block.one-third{
	padding-left: 48px;
	width: calc((33.33% - 32px) + 48px);
	float: left;
	transition-duration:0.3s;

}


body.service .service-detail-section-container .service-feature-block .inner-block.one-third:first-child{
    width: calc(33.33% - 32px);
    padding-left: 0px;
}

body.service .service-detail-section-container .service-feature-block .inner-block.one-third img {
	width: 33%;
	display:block;
	margin: 0 auto 10px;
}

body.service .service-detail-section-container .service-feature-block .inner-block.one-third h4 {
	font-size:133%;
	font-weight:bold;
	text-align:center;
}


body.service .service-detail-section-container .service-feature-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .service-detail-section-container .service-usage-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .service-detail-section-container .service-usage-block .inner-block .inner-usage-block{
	width: calc(50% - 24px);
	float:left;
}
body.service .service-detail-section-container .service-usage-block .inner-block .inner-usage-block.left{
	width:calc(calc(50% - 24px) + 48px);
	padding-right:48px;
}
body.service .service-detail-section-container .service-usage-block .inner-block .inner-usage-block img{
	width:40%;
	margin:0 auto 10px;
	display:block;
}
body.service .service-detail-section-container .service-usage-block .inner-block .inner-usage-block h4 {
	font-size:133%;
	font-weight:bold;
	text-align:center;
}
body.service .service-detail-section-container .service-usage-block .inner-block .inner-usage-block ul{
	list-style-type:disc;
	padding-left:2em;
}


body.service .guidebook-more-link.ii, body.service .price-more-link.ii {
	padding:10px 15px;
	border:solid 1px #24a7d6;
	color: #fff;
	background-color: #24a7d6;
	border-radius: 4px;
	transition-duration:0.3s;
	display: block;
	margin: 0px auto;
	text-align: center;
	width:calc(10% + 96px);
	min-width:280px;
}

body.service .contact-more-link.ii {
	padding:10px 15px;
	border:solid 1px #cf1c6d;
	color: #fff;
	background-color: #cf1c6d;
	border-radius: 30px;
	transition-duration:0.3s;
	display: block;
	text-align: center;
	font-size: 133%;
	width:75%;
	min-width:340px;
}

body.service .guidebook-more-link.ii:hover, body.service .price-more-link.ii:hover{
    transform: scale(1.05,1.05);
    color: #24a7d6;
    background-color: rgba(255,255,255,0);
}

body.service .contact-more-link.ii:hover{
    transform: scale(1.05,1.05);
    color: #cf1c6d;
    background-color: rgba(255,255,255,0);
}

body.service .service-detail-section-container .service-price-block .price-description{
	float:left;
	width:50%;
}

body.service .service-detail-section-container .service-price-block .price-description.detail{
	width:100%;
	padding-top:30px;
	float:none;
}


body.service .service-detail-section-container .service-price-block .price-description:after,
body.service .service-detail-section-container .service-price-block .price-description.detail .price-media:after,
body.service .service-detail-section-container .service-price-block .price-description.detail .price-term:after{
	clear:both;
	display:block;
	content:"";
}

body.service .price-heading {
	padding: 20px 0px 40px;
	text-align:center;
	float:left;
}

body.service .service-detail-section-container .price-heading h4 {
    font-size:133%;
}

body.service .service-detail-section-container .price-heading p {
	font-size:342%;
	font-weight:bold;
	margin-bottom:0px;
	line-height: 80%;
	color:#24a7d6;
}

body.service .service-detail-section-container .service-price-block .price-description.detail .price-media,
body.service .service-detail-section-container .service-price-block .price-description.detail .price-term{
	padding-bottom:8px;
}

body.service .service-detail-section-container .service-price-block .price-description.detail .price-media .heading,
body.service .service-detail-section-container .service-price-block .price-description.detail .price-term .heading{
	border: #000 2px solid;
	border-radius: 4px;
	padding: 2px;
	text-align: center;
	width: 110px;
	float:left;
}
body.service .service-detail-section-container .service-price-block .price-description.detail .price-media p,
body.service .service-detail-section-container .service-price-block .price-description.detail .price-term p{
	float:left;
	padding: 4px 0px 4px 20px;

}


body.service .service-detail-section-container .service-price-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .inner-block.half.left .contact-more-link.ii {
	margin: 0px 0px 0px auto;
}
body.service .inner-block.half.right .contact-more-link.ii {
	margin: 0px auto 0px 0;
}

body.service .service-detail-section-container .service-contact-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .service-contact-block p.tel-number{
	font-size:200%;
	text-align:center;
}
body.service .service-contact-block p.tel-number .date{
	font-size:66.5%;
}

body.service .service-detail-section-container .service-guide-block .inner-block.one-third{
    padding-left: 48px;
    width: calc((33.33% - 32px) + 48px);
    float: left;
    margin-bottom: 48px;
}
body.service .service-detail-section-container .service-guidebook-block .inner-block.one-third{
    float: left;
    width: calc(33.33% - 32px);
    padding-left: 0px;
}

body.service .service-detail-section-container .service-guidebook-block .inner-block.one-third img{
    width: 80%;
    display: block;
    margin: 0 auto;
}


body.service .service-detail-section-container .service-guidebook-block .inner-block.two-third{
	padding-left: 48px;
	width: calc((66.66% - 16px) + 48px);
	float: left;
}

body.service .service-detail-section-container .service-guidebook-block .inner-block.two-third p{
	margin-bottom:2em;
}

body.service .service-detail-section-container .service-guidebook-block .inner-block.two-third ul{
	font-size:133%;
	list-style-type:disc;
	padding-left:2em;
}


body.service .service-detail-section-container .service-guidebook-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service #footerContainer.tool-page footer .footer-upper{
	display:none;
}


body.service .service-detail-section-container .service-usage-detail-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .service-detail-section-container .service-usage-detail-block img{
	width:30%;
	float:left;
	padding-right:24px;
}
body.service .service-detail-section-container .service-usage-detail-block .usage-detail-description{
	width:70%;
	float:left;
}
body.service .service-detail-section-container .service-usage-detail-block h4{
	font-size:133%;
}

body.service .service-detail-section-container .service-function-detail-block:after{
	clear:both;
	display:block;
	content:"";
}

body.service .service-detail-section-container .service-function-detail-block img{
	width:100%;
	display:block;
	margin:0 auto;
}
body.service .service-detail-section-container .service-function-detail-block .function-detail-description{
	width:100%;
}
body.service .service-detail-section-container .service-function-detail-block h4{
	font-size:133%;
}

body.service .service-detail-section-container .service-price-detail-block:after{
	content:"";
	display:block;
	clear:both;
}


body.service .service-detail-section-container .service-function-detail-block .inner-block.one-third{
	padding-left: 48px;
	width: calc((33.33% - 32px) + 48px);
	float: left;
}

body.service .service-detail-section-container .service-function-detail-block .inner-block.one-third:first-child{
	padding-left: 0px;
	width: calc(33.33% - 32px);
}

body.service .service-detail-section-container .service-function-detail-block .inner-block.one-third ul {
	list-style-type: disc;
	margin-top:-12px;
	padding-left: 2em;
	line-height: 150%;
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.one-third{
	padding-left: 48px;
	width: calc((33.33% - 32px) + 48px);
	float: left;
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.one-third:first-child {
	padding-left: 0px;
	width: calc(33.33% - 32px);
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.step{
	background-position:left top;
	background-repeat:no-repeat;
	background-size:100% 100%;
}
body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.step.first{
	background-image:url(/wp-content/themes/datasection2016/img/service_ii_price01.png);
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.step.second{
	background-image:url(/wp-content/themes/datasection2016/img/service_ii_price02.png);
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.step.third{
	background-image:url(/wp-content/themes/datasection2016/img/service_ii_price03.png);
}



body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.goal{
	background-image:url(/wp-content/themes/datasection2016/img/service_ii_price04.png);
	background-position:center center;
	background-repeat:no-repeat;
	background-size:100% 100%;
	text-align:center;
	height:130px;
	padding:40px 20px;
}
body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps:first-child{
	background-image:none;
}


body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description{
	padding:20px 40px 20px 20px;
	float:left;
	width:calc(50% - 24px);
	color:#fff;
}
body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.left{
	margin-right:48px;
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description h4{
	font-size:133%;
}
body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description h4 .number{
	font-size:150.37%;
}


body.service .service-detail-section-container .service-faq-detail-block .inner-block.one-third{
	padding-left: 48px;
	width: calc((33.33% - 32px) + 48px);
	float: left;
}

body.service .service-detail-section-container .service-faq-detail-block .inner-block.one-third:first-child{
	padding-left: 0px;
	width: calc(33.33% - 32px);
}
body.service .service-detail-section-container .service-faq-detail-block .inner-block.one-third .faq-detail-description h4{
	font-size:133%;
}

body.service .service-detail-section-container .service-faq-detail-block:after{
	content:"";
	display:block;
	clear:both;
}

body.service .service-detail-section-container .service-price-detail-block .price-detail ul li.not-included{
	color:#a8a8a8;
}


body.service.tool-top .title-section.tools.insight-intelligence .catch-copy-block{
	width:100%;
	float:none;
	text-align:center;
}

body.service .title-section.tools.insight-intelligence .form-link-item{
	width:50%;
	margin:16px auto 0;
}

@media screen and (min-width: 980px){
	body.service .title-section.tools.insight-intelligence h1{
		font-size:600%;
		margin-top:30px;
	}
}
@media screen and (max-width: 979px){
	header.tool-page.sub-header{display:none;}
}

@media screen and (max-width: 799px){
	body.service .service-detail-section-container .price-heading p{
		font-size:333%;
	}
}


@media screen and (min-width: 750px){
	body.service .guidebook-more-link.ii{
		margin:0 auto 0 0;
	}
}

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

body.service.new-tools-format .title-section.tools .form-link-item{
	min-width: 360px;
}

body.service .service-detail-section-container .inner-block{
	float:none;
}
body.service .service-detail-section-container .inner-block.half{
	width:100%;
	margin-bottom:48px;
}
body.service .service-detail-section-container .inner-block.half.left{
	padding-right:0px;
}
body.service .service-detail-section-container .inner-block.half.right{
	padding-left:0px;
}

body.service .service-detail-section-container .service-feature-block,
body.service .service-detail-section-container .service-usage-block,
body.service .service-detail-section-container .service-price-block,
body.service .service-detail-section-container .service-contact-block,
body.service .service-detail-section-container .service-guidebook-block{
	margin-bottom:0px;
}


body.service .service-detail-section-container .service-function-detail-block,
body.service .service-detail-section-container .service-faq-detail-block{
	margin-bottom:0px;
}


body.service .service-detail-section-container .service-contact-block .inner-block.half{
	margin-bottom:24px;
}


body.service .service-detail-section-container .service-feature-block h4,
body.service .service-detail-section-container .service-function-detail-block h4,
body.service .service-detail-section-container .service-usage-block .inner-block.one-third h4,
body.service .service-detail-section-container .service-faq-detail-block .inner-block.one-third .faq-detail-description h4,
body.service .service-detail-section-container .price-heading h4,
body.service .price-detail dl dt{
	font-size:110%;
}

body.service .service-detail-section-container .service-introduce-block .inner-block.introduce-sentence{
	width:100%;
}
body.service .service-detail-section-container .service-introduce-block .inner-block.introduce-image{
	width:50%;
	margin:30px auto;
}

body.service .price-heading{
	padding:0 20px;
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description{
	font-size:110%;
}
body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.step h4{
	font-size:90%;
}


body.service .service-detail-section-container .inner-block.one-third:first-child,
body.service .service-detail-section-container .inner-block.one-third:nth-child(n) {
    width: 100%;
    padding-left: 0px;
    float: left;
    margin-bottom: 48px;
}

body.service .service-detail-section-container .service-feature-block .inner-block.one-third:first-child,
body.service .service-detail-section-container .service-feature-block .inner-block.one-third:nth-child(n){
	width:100%;
}

body.service .service-detail-section-container .inner-block.one-third a{
    background-position:right center;
    background-size: 33%;
    padding-right: 33%;
    height: 200px;
}

body.service .service-detail-section-container .service-feature-block img{
	width:25%;
}
body.service .service-detail-section-container .service-feature-block .feature-description{
	width:75%;
}

body.service .service-detail-section-container .service-usage-block .inner-block.one-third img{
	width:40%;
}

body.service .price-detail{
	min-height:0px;
}

body.service .title-section.tools.insight-intelligence .form-link-item a.form-link{
	font-size:133%;
}

body.service .guidebook-more-link.ii,
body.service .price-more-link.ii,
body.service .contact-more-link.ii {
	font-size: 133%;
	width:100%;
}

body.service .inner-block.half.left .contact-more-link.ii,
body.service .inner-block.half.right .contact-more-link.ii {
	margin: 0px;
}

body.service .service-detail-section-container .service-guidebook-block .inner-block.one-third img{
	width:50%;
}

body.service .service-detail-section-container .service-guidebook-block .inner-block.two-third p,
body.service .service-detail-section-container .service-guidebook-block .inner-block.two-third ul{
	font-size:100%;
}



body.service .service-detail-section-container .service-usage-block .inner-block.one-third:first-child,
body.service .service-detail-section-container .service-function-detail-block .inner-block.one-third:first-child,
body.service .service-detail-section-container .service-price-detail-block .inner-block.one-third:first-child,
body.service .service-detail-section-container .service-faq-detail-block .inner-block.one-third:first-child{
	width:100%;
}

body.service .service-detail-section-container .service-usage-block a .inner-block.one-third,
body.service .service-detail-section-container .service-usage-block a:first-child .inner-block.one-third{
	width:100%;
	padding-left:0px;
}

body.service .service-detail-section-container .service-guidebook-block .inner-block.two-third{
	padding-left: 0px;
	width: 100%;
	float: none;
	margin-bottom:48px;
}

body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps:last-child{
	background-image:none;
	padding-bottom:24px;
}


}

@media screen and (min-width: 750px) and (max-width: 1199px){
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-media .heading,
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-term .heading,
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-media p,
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-term p{
		clear:both;
		margin:0 auto 0 0;
	}
}



@media screen and (min-width: 639px) and (max-width: 979px){
body.service.tool-top .title-section.tools.insight-intelligence .catch-copy-block{
	padding-top:70px;
}
}

@media screen and (max-width: 639px){
	body.service .service-detail-section.ii .service-detail-section-container{
		padding:30px 24px 48px;
	}

	body.service .service-detail-section-container .service-usage-block .inner-block .inner-usage-block,
	body.service .service-detail-section-container .service-usage-block .inner-block .inner-usage-block.left{
		width:100%;
		padding:0;
	}
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-media .heading,
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-term .heading,
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-media p,
	body.service .service-detail-section-container .service-price-block .price-description.detail .price-term p{
		clear:both;
		margin:0 auto 0 0;
	}

	body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps{
		margin-bottom:0;
		padding-bottom:0;
	}

	body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description,
	body.service .service-detail-section-container .service-price-detail-block .inner-block.intro-steps .price-detail-description.left{
		width:100%;
		max-width: 240px;
		margin: 20px auto;
		float: none;
	}

}


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

	body.service .service-detail-section.ii.ii-usage{
		background-size: auto 100%;
		background-attachment:scroll;
	}

	body.service.new-tools-format .title-section.tools .form-link-item{
		min-width: 315px;
	}

	body.service .title-section.tools.insight-intelligence .form-link-item a.form-link{
		font-size:100%;
	}

	body.service .guidebook-more-link.ii,
	body.service .price-more-link.ii,
	body.service .contact-more-link.ii {
		font-size: 100%;
	}

	body.service .service-detail-section-container .service-feature-block img{
		width:40%;
		float:none;
		display:block;
		margin:0 auto;
		padding:0;
	}
	body.service .service-detail-section-container .service-feature-block .feature-description{
		width:100%;
		float:none;

	}
	body.service .guidebook-more-link.ii,
	body.service .price-more-link.ii,
	body.service .contact-more-link.ii {
		width:100%;
		min-width:0px;
	}

	body.service.tool-top .title-section.tools.insight-intelligence .form-link-item a.form-link.ii .form-link-box span{
		line-height:inherit;
	}

	body.service .service-detail-section-container .price-heading p{
		font-size:220%;
	}

}

/*===================================================================
    JP/EN Page link
===================================================================*/

header nav.head-nav .sub-nav ul li.lang-nav a{
    display: block;
    font-size:12px;

    border: 1px solid rgb(2,63,151);
    padding: 0px 6px;

    float:left;
    line-height: 14px;
    height: 17px;

    background-color: rgba(2,63,151,0);
    color:rgb(2,63,151);
}
header nav.head-nav .sub-nav ul li.lang-nav a:hover{
    transform: scale(1.0,1.0);
}
header nav.head-nav .sub-nav ul li.lang-nav a:last-child{
    margin-left:2px;
}
header nav.head-nav .sub-nav ul li.lang-nav a.active{
    background-color: rgb(2,63,151);
    color: #fff;
}
header nav.head-nav .sub-nav ul li.lang-nav:after{
    display: block;
    content:"";
    clear:both;
}


body.child-page header.service-child-page nav.head-nav .sub-nav ul li.lang-nav a,
body.child-page header.recruit-top-header nav.head-nav .sub-nav ul li.lang-nav a,
body.child-page header.company-top-header nav.head-nav .sub-nav ul li.lang-nav a{
    border: 1px solid rgb(255,255,255);
}
body.child-page header.service-child-page nav.head-nav .sub-nav ul li.lang-nav a.active,
body.child-page header.recruit-top-header nav.head-nav .sub-nav ul li.lang-nav a.active,
body.child-page header.company-top-header nav.head-nav .sub-nav ul li.lang-nav a.active{
    background-color:#fff;
    color:#1c1c1c;
}

header.fixed nav.head-nav .sub-nav ul li.lang-nav a.active,
body.child-page header nav.head-nav .sub-nav ul li.lang-nav a.active{
    color:#fff; 
}

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

    header nav.head-nav .sub-nav ul li.contact{
        display: block;
    }
    header nav.head-nav .sub-nav ul li.contact a,
    header.fixed nav.head-nav .sub-nav ul li.contact a,
    body.child-page header nav.head-nav .sub-nav ul li.contact a{
        height: 44px;
        line-height: 44px;
        padding: 0 24px;
        border-top: solid 1px rgba(255, 255, 255, 0.3);
        font-size: medium;
        background-color:rgba(0,0,0,0); 
        border-radius: 0px;
        font-weight: normal; 
    }
    header:not(.sub-header) nav.head-nav .sub-nav ul li.lang-nav{
        display: block;
        border-top: solid 1px rgba(255, 255, 255, 0.3);
        height: 44px;
        line-height: 44px;
        padding:13px 25%;
    }
    header:not(.sub-header) nav.head-nav .sub-nav ul li.lang-nav a{
        padding: 0 24px;
        color: #fff;
        border: 1px solid rgb(255,255,255);
    }
    header:not(.sub-header) nav.head-nav .sub-nav ul li.lang-nav a.active{
        background-color:#fff;
        color:#1c1c1c !important;
    }


    body.child-page header.service-child-page nav.head-nav .sub-nav ul li.contact a,
    body.child-page header.recruit-top-header nav.head-nav .sub-nav ul li.contact a,
    body.child-page header.company-top-header nav.head-nav .sub-nav ul li.contact a{
        height: 44px;
        line-height: 44px;
        padding: 0 24px;
        border-top: solid 1px rgba(255, 255, 255, 0.3);
        font-size: medium;
        background-color:rgba(0,0,0,0); 
        border-radius: 0px;
        font-weight: normal; 
    }
    body.child-page header.service-child-page nav.head-nav .sub-nav ul li.lang-nav a.active,
    body.child-page header.recruit-top-header nav.head-nav .sub-nav ul li.lang-nav a.active,
    body.child-page header.company-top-header nav.head-nav .sub-nav ul li.lang-nav a.active{
        color:#1c1c1c !important;
    }
}

