﻿.page-template-page-no-sidebar #breadcrumbs {
    max-width: 816px;
}

#main_wrap{
	float: right;
}

#sub_wrap {
    float: left;
}

#main_wrap input[type="submit"]{
    display: block;
    margin: 0 auto;
    background: #0C3DBE url(../images/arrow_submit.png) no-repeat 78% center;
    color: #FFFFFF;
    cursor: pointer;
    -webkit-appearance: none;
    padding: 12px;
    width: 320px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 32px;
    font: 120%/1.8 "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Verdana, Arial, Helvetica, sans-serif;
    font-weight: bold;
    position: relative;
}



#pagination{
	margin: 40px auto;
	display: none;
}

#pagination ul{
	text-align: center;
}

#pagination ul li{
	display: inline-block;
    vertical-align: middle;
}

#pagination ul li a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
	border-radius: 50%;
	background: #eeeff6;
	color: #333;
	position: relative;
	text-decoration: none;
	font-weight: bold;
}

#pagination ul li a:hover{
	background: #333;
	color: #fff;
}

#pagination ul li.current a{
	background: #333;
	color: #fff;
}

#pagination ul li.prev a,
#pagination ul li.next a{
	text-indent: -9999px;
}

#pagination ul li.prev a:after {
    position: absolute;
    border-right: 2px solid #333;
    border-top: 2px solid #333;
    content: "";
    width: 6px;
    height: 6px;
    right: 0.85em;
    top: 1em;
    margin-top: 0;
    transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
}

#pagination ul li.next a:after {
    position: absolute;
    border-right: 2px solid #333;
    border-top: 2px solid #333;
    content: "";
    width: 6px;
    height: 6px;
    left: 0.85em;
    top: 1em;
    margin-top: 0;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

#pagination ul li.prev a:hover:after,
#pagination ul li.next a:hover:after{
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
}


.page-parent #main_wrap ul.box a .info_wrap h1{
	text-align: left;
}

#pagenav a{
    width: 60px;
    height: 60px;
}



#footer_wrap_middle{
    max-width: 1200px;
    padding: 0;
	font-size: 100%;

    display: grid;
    grid-gap: 52px;
    grid-template-columns: 64% 1fr;
    justify-content: center;

    display: -ms-grid;
    -ms-grid-columns: 64% 52px 1fr;
    -ms-grid-rows: auto;
}

#footer_wrap_middle > *:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_wrap_middle > *:nth-child(2){
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_middle_menu {
    float: none;
    width: 100%;

    display: grid;
    grid-gap: 24px;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    justify-content: center;
    margin: 40px 0;

    display: -ms-grid;
    -ms-grid-columns: 1fr 24px 1fr 24px 1fr 24px 1fr 24px 1fr 24px 1fr;
    -ms-grid-rows: auto;
}

#footer_middle_menu > *:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_middle_menu > *:nth-child(2){
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_middle_menu > *:nth-child(3){
	-ms-grid-column: 5; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_middle_menu > *:nth-child(4){
	-ms-grid-column: 7; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_middle_menu > *:nth-child(5){
	-ms-grid-column: 9; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_middle_menu > *:nth-child(6){
	-ms-grid-column: 11; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#footer_middle_menu ul.fnav li{
	font-size: 80%;
	font-weight: bold;
}

#footer_middle_menu ul.fnav li:first-child{
	font-size: 100%;
	font-weight: bold;
}

#footer_middle_menu ul.fnav li:before{
    content: ">";
    margin-right: 8px;
    font-weight: normal;
    position: absolute;
}

#footer_middle_menu ul.fnav li:first-child:before{
	content: "";
	margin-right: 0;
}

#fnav_left > li > a, #fnav_center_left > li > a, #fnav_center_right > li > a, #fnav_right > li > a {
    padding-left: 16px;
    display: block;
}

#fnav_left > li:first-child > a, #fnav_center_left > li:first-child > a, #fnav_center_right > li:first-child > a, #fnav_right > li:first-child > a {
    padding-left: 0;
}

#footer_middle_info {
    float: none;
    text-align: right;
    margin: 104px 0 40px;
}


#footer_wrap_bottom{
    max-width: 1200px;
	margin: 0 auto;
	border: none;
}

#footer_container_bottom.menu_in #fnav_btm_container {
    float: none;
    text-align: right;
}

#footer_container_bottom.menu_in #fnav_btm {
    float: none;
}

#footer_middle_info .name {
    font-size: 132%;
}

p.footer_text {
    font-size: 72%;
}

ul#fnav_btm {
    font-size: 72%;
    margin-top: 32px;
}

div#footer_wrap_copyright {
    font-size: 72%;
    margin-top: 16px;
}






/* original */
#header_right.nav {
	right: 4%;
}

#header_wrap h1 img {
	max-width: 100%;
	width: auto;
}

#header_wrap h1 {
	margin: 32px 0;
}

#header_right {
	top: 24px;
}

#header_right.nav {
	width: 800px;
}

.home .keyvisual_wrap {
	max-width: 100%;
}

.home #contents_wrap section > *, .home #contents_container.sidebar_on #contents_wrap {
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}

.home #main_wrap section {
	padding: 48px 0;
	overflow: hidden;
}

.home #main_wrap > *:first-child {
	padding-top: 48px;
}

.home #main_wrap section:nth-child(even) {
	background: #fff;
}

.home #main_wrap section > *:last-child {
	margin-bottom: 0;
}

#keyvisual_container {
	background-color: #f4f4f4;
}

.keyvisual_filter {
	background-color: rgba(28, 44, 56, 0);
}

.keyvisual_wrap #slider_back_filter {
	background-color: rgba(28, 44, 56, 0);
}

#keyvisual_container, .keyvisual_wrap.slider_back #slides div {
	background-position: 50% 50%;
}

.keyvisual_wrap.text .maincopy {
	font-size: 40px;
}

.keyvisual_wrap.text .subcopy {
	font-size: 16px;
}

.keyvisual_wrap.text .subcopy {
	margin-top: 16px;
}

#contents_wrap {
	max-width: 1200px;
}

#mainimage .section_wrap {
	max-width: 1200px;
    height: 248px;
}

.breadcrumbs{
	padding: 0 0 24px;
}

#main_wrap h1 {
    font-size: 184%;
    text-align: center;
}

#nav_wrap {
	max-width: 1200px;
}

#header_right.nav {
	top: 24px;
}

#header_container.header_right_nav {
	background-color: #ffffff;
	position: sticky;
    top: 0;
}

.main_color {
	color: #3a468e;
}

.main_color_back {
	background-color: #3a468e;
}

#hnav_sub_container li a {
	background-color: #3a468e;
}

#header_right .tel_num {
	color: #3a468e;
}

#header_right .contact .contact_text {
	color: #3a468e;
}

#footer_container_middle {
	background-color: #3a468e;
}

#footer_container_bottom {
	background-color: #3a468e;
}

#gnav ul.sub-menu li a {
	background-color: #3a468e;
    font-size: 92% !important;
}

#searchform input[type="image"], #searchform input[type="submit"] {
	background-color: #3a468e;
}

#sidenav_wrap h2#sidenav_parent.current a {
	background-color: #3a468e;
}

#sidenav_wrap h2#sidenav_parent a {
	background-color: #3a468e;
}

#sidenav_wrap h2#sidenav_parent.current-menu-item a {
    background-color: #202c76;
}

#sidenav_wrap h2#sidenav_parent a:hover {
	background-color: #3a468e;
}

.home #main_wrap .news li a .category {
	background-color: #3a468e;
}

.home #contents_wrap .column_pr_wrap > * > * > h3:first-child:after {
	border-bottom: 1px solid #3a468e;
}

.home #contents_wrap .column_pr_wrap p.button {
	background-color: #3a468e;
}

.home #main_wrap .blog li a .category {
	background-color: #3a468e;
}

#main_wrap ul.term li.category a {
	background-color: #3a468e;
}

#main_wrap #widget_contact a.tel_wrap .tel {
	color: #3a468e;
}

#main_wrap #widget_contact a.mail_wrap .contact {
	color: #3a468e;
}

#main_wrap h2 {
    font-size: 148%;
}

#main_wrap h2:before {
	content: url(../images/h2_catch.png);
    position: relative;
    top: 0px;
    margin-right: 12px;
}

#main_wrap h2:after {
    width: 24%;
    min-width: 64px;
	border-bottom: 2px solid #3a468e;
}

#main_wrap h3 {
    background: #eeeeee;
    padding: 12px;
    border-radius: 8px;
}

#main_wrap ul.catch li:before {
	color: #3a468e;
}

#main_wrap .mod_feature *:before {
	color: #3a468e;
}

#main_wrap p.mod_review:before {
	color: #3a468e;
}

.pagination .current, .pagination a:hover {
	background-color: #3a468e;
}

.mod_trouble.main_color li:before {
	color: #3a468e;
}

#main_wrap .mod_solution:before {
	border-color: #3a468e transparent transparent transparent;
}

#main_wrap ul.mod_flow li:before {
	border-color: #3a468e;
	border-left-color: transparent;
	border-right-color: transparent;
	border-bottom-color: transparent;
}

strong.mod_voice:before {
	color: #3a468e;
}

#main_wrap ul.mod_boxlist li:before, #main_wrap ul.mod_boxlist li a:before {
	color: #3a468e;
}

.sub_color {
	color: #dddddd !important;
}

.sub_color_back {
	background-color: #dddddd;
}

#nav_wrap ul li.current-menu-item > a, #nav_wrap ul li.current-menu-ancestor > a, #nav_wrap ul li.current-post-ancestor > a, #nav_wrap ul li.current-page-ancestor > a {
	background-color: #dddddd;
}

#nav_wrap ul li a:hover {
	background-color: #dddddd;
}

#sidenav li.current_page_item > a {
	background-color: #dddddd;
}

#sidenav li a:hover {
	background-color: #202c76;
}
#sidenav li.current-menu-item > a, #sidenav li.current-post-parent > a {
    background: #202c76;
    border-top: none !important;
    color: #FFFFFF !important;
}

#sidenav li a {
    background: #3a468e;
    color: #fff;
}






ul#contents_bottom_menu li.current_page_item a:after {
	background-color: #dddddd;
}

.home #main_wrap .news li a .tag {
	background-color: #dddddd;
}

table thead th {
	background-color: #dddddd;
}

#sub_wrap #widget_contact a.tel_wrap {
	background-color: #3a468e;
}

#sub_wrap #widget_contact a.mail_wrap {
	background-color: #3a468e;
}

#sub_wrap #widget_contact a.contact_banner_wrap {
	background-color: #3a468e;
}

#main_wrap input[type="submit"] {
	background-color: #3a468e;
}

#main_wrap input[type="submit"].back{
	background: #999;
}

#main_wrap strong {
	color: #3a468e;
}

.mod_trouble li:before {
	color: #3a468e;
}

.mod_tel a {
	color: #3a468e;
}

a.button {
	background: #3a468e;
	background: -moz-linear-gradient(top, #3a468e 0%, #3a468e 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #3a468e), color-stop(100%, #3a468e));
	background: -webkit-linear-gradient(top, #3a468e 0%, #3a468e 100%);
	background: -o-linear-gradient(top, #3a468e 0%, #3a468e 100%);
	background: -ms-linear-gradient(top, #3a468e 0%, #3a468e 100%);
	background: linear-gradient(to bottom, #3a468e 0%, #3a468e 100%);
}

a {
	color: #3a468e;
}

#header_right .tel_num a {
	color: #3a468e;
}

#nav_container {
	background-color: #ffffff;
}

#nav_wrap ul#gnav {
    border-left: none;
}

#header_right #nav_wrap ul li a {
    padding-top: 12px;
    padding-bottom: 12px;
    font-size: 100%;
    position: relative;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

#nav_wrap ul li a {
	background-color: #ffffff;
	border-left: none;
	border-right: none;
}

#nav_wrap ul li a:before {
	content: "";
	display: block;
    width: 50%;
	border-bottom: 3px solid #fff;
    position: absolute;
    bottom: 0;
    left: 25%;
}

#nav_wrap ul li:after {
    content: "";
    border-right: 1px solid #ccc;
    position: absolute;
    top: 16px;
    right: 0;
    height: 1.4em;
}

#nav_wrap ul li:last-child:after  {
    content: "";
    border-right: none;
}

#nav_wrap ul#gnav > li {
    display: table-cell;
    width: 100%;
    position: relative;
}

#gnav ul.sub-menu li a:hover {
	background-color: #ffffff;
	color: #333333;
}

#gnav ul.sub-menu li:before,
#gnav ul.sub-menu li a:before{
    content: "";
    border-bottom: none !important;
}

#header_right.nav #nav_wrap ul li a span {
    font-size: 64%;
    letter-spacing: 1px;
    margin-top: 8px;
}

#nav_wrap ul li.current-menu-item > a,
#nav_wrap ul li.current-menu-ancestor > a,
#nav_wrap ul li.current-post-ancestor > a,
#nav_wrap ul li.current-page-ancestor > a,
#nav_wrap ul li a:hover {
	background: none;
	color: #333;
}

#nav_wrap ul.sub-menu li.current-menu-item > a{
	background: #3a468e;
	color: #fff;
}

#nav_wrap ul li.current-menu-item > a:before,
#nav_wrap ul li.current-menu-ancestor > a:before,
#nav_wrap ul li.current-post-ancestor > a:before,
#nav_wrap ul li.current-page-ancestor > a:before,
#nav_wrap ul li a:hover:before{
	content: "";
	display: block;
    width: 50%;
	border-bottom: 3px solid #3a468e;
    position: absolute;
    bottom: 0;
    left: 25%;
}

#nav_wrap ul li a:hover span {
	color: #333;
}

#nav_wrap ul li a {
	color: #333333;
}



#nav_wrap ul li a span {
	color: #333333;
}

#mainimage {
	background: url(../images/mainimage_back.jpg) no-repeat center center;
	background-size: cover;
}

#mainimage h1{
	color: #333;
	text-align: center;
	font-size: 208%;
}

ul#contents_bottom_menu {
	background-color: #f4f4f4;
}

#footer_container_middle, #footer_container_bottom {
	background-color: #000000;
}




/* ページ別 HOME */
/*--------------------------------------------------------*/

/* 共通 */
.home #main_wrap h3{
    background: none;
}

/* こんな課題を抱えていませんか？ */
.home #main_wrap section.worry h2 span {
    font-size: inherit;
    font-weight: bold;
	color: #3a468e;
	margin-bottom: 8px;
}

.home #main_wrap section.worry h2 span:before{
	content: url(../images/catch_left.png);
    margin-right: 16px;
    position: relative;
    top: -2px;
}

.home #main_wrap section.worry h2 span:after{
	content: url(../images/catch_right.png);
    margin-left: 16px;
    position: relative;
    top: -2px;
}

.home section.worry ul{
    display: grid;
    grid-gap: 24px;
    grid-template-columns: 1fr 1fr 1fr;
    justify-content: center;
    margin-top: 32px;

    display: -ms-grid;
    -ms-grid-columns: 1fr 24px 1fr 24px 1fr;
    -ms-grid-rows: auto;
}

body.home section.worry ul li:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.worry ul li:nth-child(2){
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.worry ul li:nth-child(3){
	-ms-grid-column: 5; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

.home section.worry ul li{
	text-align: center;
}

.home section.worry ul li img{
	display: block;
	margin-bottom: 24px;
}

.home section.worry ul li p{
	font-weight: bold;
}



/* こんな課題を抱えていませんか？ */
.home #main_wrap section.solution {
    /*background: url(../images/solution_back.png) no-repeat center top;*/
    background: url(../images/solution_back.png) no-repeat center 104px;
	background-size: cover;
	padding-top: 0;
}

.home #main_wrap section.solution h2:before{
	display: inline-block;
	content: url(../images/solution_catch.png);
    position: relative;
    top: 24px;
    margin-right: 8px;
}

.page-template-page-lp-link #main_wrap section.solution h2{
	margin-top: -24px;
	margin-top: 48px;
	padding-top: 0;

    margin-bottom: 160px;
}




/* こんな課題を抱えていませんか？ */
.home section.solution ul#solution_list{
    display: grid;
    grid-gap: 24px;
    grid-template-columns: 1fr 1fr 1fr;
    justify-content: center;
    margin-top: 160px;
	margin-bottom: 80px;

    display: -ms-grid;
    -ms-grid-columns: 1fr 24px 1fr 24px 1fr;
    -ms-grid-rows: auto;


}

body.home section.solution ul#solution_list li:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.solution ul#solution_list li:nth-child(2){
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.solution ul#solution_list li:nth-child(3){
	-ms-grid-column: 5; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

.home section.solution ul#solution_list li a{
    display: inline-block;
    background: #fff;
    height: 100%;
	text-decoration: none;
	color: #333;
}

.home section.solution ul#solution_list li a:hover{
	opacity: 0.8;
}

.home section.solution ul#solution_list li a img{
	float: left;
}

.home section.solution ul#solution_list li a h3{
	border-bottom: none;
    padding: 24px 4% 0;
    text-align: center;
    color: #333;
}

.home section.solution .section_wrap > h3{
    color: #fff;
    text-align: center;
    font-size: 160% !important;
    border: none;
}

.home section.solution .section_wrap > ul.catch{
    color: #fff;
    font-weight: bold;
    max-width: 724px;
    margin: 0 auto;
	font-size: 120%;
}

.home section.solution .section_wrap > ul.catch li{
	color: #fff;
    font-weight: bold;
    padding-left: 16px;
    position: relative;
    margin-top: 24px;
}

.home #main_wrap section.solution .section_wrap > ul.catch li:before{
	content: url(../images/icon_check.png);
    margin-right: 8px;
    position: relative;
}





/* 導入事例 */
.home.page-template-page-lp-link #main_wrap section.case{
    background: url(../images/case_back.png) no-repeat center top;
	background-size: cover;
}

.home.page-template-page-lp-link #main_wrap section.case > * {
    max-width: 100%;
    width: 100%;
}

.home section.case div#case_list{
    display: block;
    grid-gap: 1px;
    grid-template-columns: 1fr 1fr 1fr;
    justify-content: center;
    margin-top: 40px;
	margin-bottom: 80px;
/*
    display: -ms-grid;
    -ms-grid-columns: 1fr 1px 1fr 1px 1fr;
    -ms-grid-rows: auto;
*/
}

/* カルーセル */
.home section.case .slick-dots{
    bottom: -100px;
}

.home section.case .slick-dots li button:before{
    color: #fff;
}

.home section.case .slick-dots li.slick-active button:before{
    color: #3a468e;
}

.home section.case .slick-prev,
.home section.case .slick-next{
    position: absolute;
    top: 32%;
}

.home section.case .slick-prev{
    left: 8px;
}

.home section.case .slick-next{
    right: 40px;
}

.home section.case .slick-prev:before{
	content: url(../images/arrow_left.png);
}

.home section.case .slick-next:before{
	content: url(../images/arrow_right.png);
}

.home section.case div#case_list a{
    display: inline-block;
    height: 100%;
	text-decoration: none;
	color: #333;
}

.home section.case div#case_list a:hover{
	opacity: 0.8;
}

.home section.case div#case_list div a img{
    width: 100%;
}

.home section.case div#case_list div a h3{
	text-align: center;
    font-weight: bold;
    border: none;
    margin: 24px 0px;
}

.home section.case div#case_list div a h3,
.home section.case div#case_list div a p{
    padding: 0 4%;
}

.home section.case div#case_list div a p span {
    display: block;
    text-align: right;
    font-size: 92%;
}





/* 協力パートナー */
.home.page-template-page-lp-link #main_wrap section.partner{
    background-color: #eeeff6;
}

.home section.partner ul#partner_list{
    display: grid;
    grid-gap: 24px;
    grid-template-columns: 260px 260px 260px;
    justify-content: center;
    margin-top: 40px;
	margin-bottom: 80px;
    text-align: center;
    display: -ms-grid;
    -ms-grid-columns: 260px 24px 260px 24px 260px;
    -ms-grid-rows: auto;
	margin: 40px auto;
	max-width: 828px;
}

body.home section.partner ul#partner_list li:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.partner ul#partner_list li:nth-child(2){
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.partner ul#partner_list li:nth-child(3){
	-ms-grid-column: 5; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}






/* サービス紹介 */
.home section.service p.desc {
    text-align: center;
    font-weight: bold;
    margin: 40px 0;
    font-size: 128%;
}

.home section.service ul#service_list{
    display: grid;
    grid-gap: 40px 152px;
    grid-template-columns: 400px 400px;
    justify-content: center;
    margin-top: 40px;
	margin-bottom: 80px;

    background: url(../images/service_back.png) no-repeat 50.5% 39.5%;

    display: -ms-grid;
    -ms-grid-columns: 400px 152px 400px;
    -ms-grid-rows: auto 40px auto;
	margin: 40px auto;
	max-width: 976px;
}

body.home section.service ul#service_list li:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.service ul#service_list li:nth-child(2){
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

body.home section.service ul#service_list li:nth-child(3){
	order: 4;
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 3; /* IE11 */
}

body.home section.service ul#service_list li:nth-child(4){
	order: 3;
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 3; /* IE11 */
}

body.home section.service ul#service_list li{
    position: relative;
}

body.home section.service ul#service_list li a{
	text-decoration: none;
}


body.home section.service ul#service_list li h3 {
    font-size: 144%;
    color: #333;
    border: none;
    margin-bottom: 0;
    position: relative;
    left: -30px;
}

body.home section.service ul#service_list li h3 span.num{
	font-family: 'EB Garamond', serif;
    font-size: 256%;
    font-weight: normal;
    color: #3a468e;

}

body.home section.service ul#service_list li h3 span.num:after{
	content: ".";
}

body.home section.service ul#service_list li h3 + span{
    position: relative;
	display: block;
}

body.home section.service ul#service_list li span.en {
    display: block;
    position: absolute;
    font-size: 64%;
    width: 300px;
    left: -142px;
    top: 134px;
    color: #ccc;
    text-align: left;
    font-family: 'Libre Caslon Text', serif;
    font-weight: normal;
    transform: rotate(-90deg);
}

body.home section.service ul#service_list li img{
    position: relative;
    z-index: 2;
}

body.home section.service ul#service_list li h3 + span:after{
    content: "";
    display: block;
    background: #eeeff6;
    position: absolute;
    top: 24px;
    left: 24px;
    height: 250px;
    width: 400px;
    z-index: 1;
}

body.home section.service ul#service_list li p{
	margin: 40px -24px 0 24px;
	font-size: 92%;
    color: #333;
}

body.home section.service ul#service_list li ul{
	margin: 40px -24px 0 24px;
}

body.home section.service ul#service_list li ul li{
	font-size: 92%;
    color: #333;
}

body.home section.service .add {
    text-align: center;
    line-height: 280%;
    font-weight: bold;
}


/* まずはご相談ください。 */
.home.page-template-page-lp-link #main_wrap section.contact{
    background-color: #eeeff6;
}

.home.page-template-page-lp-link #main_wrap section.contact ul.catch {
    max-width: 800px;
    margin: 16px auto;
    font-size: 108%;
}

.home #main_wrap form table {
    max-width: 836px;
}

#main_wrap form table tbody th {
    text-align: left;
    background: none;
    color: #333333;
    font-weight: bold;
    width: 24%;
	border: none;
}

#main_wrap form table tbody td {
	border: none;
}

#main_wrap form table tbody td input {
    padding: 8px;
	width: 100%;
}

#main_wrap form .require,
#main_wrap form .required {
    display: inline-block;
    color: #ffffff;
    background: #3a468e;
    padding: 3px 8px;
    font-size: 80%;
    margin-left: 8px;
    position: relative;
    top: -1px;
    line-height: 1;
}



/* サービス */
#features_outsourcing{
    display: grid;
    grid-gap: 16px;
    grid-template-columns: 1fr 24px 1fr;
    justify-content: center;


    display: -ms-grid;
    -ms-grid-columns: 1fr 16px 1fr 16px 1fr;
    -ms-grid-rows: auto;
}

#features_outsourcing li:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#features_outsourcing li:nth-child(2){
	display: flex;
    align-items: center;
	position: relative;
    left: 2px;
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}

#features_outsourcing li:nth-child(3){
	-ms-grid-column: 5; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
}



/* 導入事例 */
body.page-case.page-template-page-no-sidebar.page-parent #breadcrumbs,
body.page-case.page-template-page-no-sidebar.page-parent #main_wrap {
    max-width: 1200px;
    width: 100%;
}

body.page-case.page-template-page-no-sidebar.page-parent #sub_wrap {
    display: none;
}

/*
body.page-case.page-template-page-no-sidebar.page-parent ul#case_list{
    display: grid;
    grid-gap: 32px;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    justify-content: center;

    display: -ms-grid;
    -ms-grid-columns: 1fr 32px 1fr 32px 1fr;
	-ms-grid-rows: auto;

    grid-template-columns: repeat( 999, 1fr );
  -ms-grid-columns: repeat( 999, 1fr );

  -ms-grid-rows: repeat( 999, auto );
      grid-template-rows: repeat( 999, auto );

}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li:nth-child(3n+1){
	-ms-grid-column: 1; 
    -ms-grid-row: auto); 
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li:nth-child(3n+2){
	-ms-grid-column: 3; 
    -ms-grid-row: auto; 
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li:nth-child(3n+3){
	-ms-grid-column: 5; 
    -ms-grid-row: auto; 
}
*/

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list > * {
	width: 32%;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li a{
	display: block;
	text-decoration: none;
	color: #333;
	margin-bottom: 32px;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li a:hover > *{
	opacity: 0.8;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li h1{
	width: 100%;
	font-size: 112%;
    margin-bottom: 0;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li img{
	width: 100%;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li p{
    margin-top: 8px;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li span{
	display: block;
	text-align: right;
    font-size: 88%;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li div.btn{
    text-align: center;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li div.btn span{
	background: #3a468e;
    color: #fff;
    display: inline-block;
    border-radius: 31px;
    padding: 8px 24px;
    width: 100%;
    max-width: 200px;
	font-weight: bold;
    text-align: center;
	position: relative;
}

body.page-case.page-template-page-no-sidebar.page-parent ul#case_list li div.btn span:after {
    position: absolute;
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    content: "";
    width: 6px;
    height: 6px;
    right: 26px;
    top: 1.2em;
    margin-top: 0;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}


#case_lead_box img{
	float: left;
	margin-right: 16px;
}

#case_lead_box .wrap{
	overflow: hidden;
}

#case_lead_box .wrap p{
	margin-top: 0 !important;
	margin-bottom: 0;
}

#case_lead_box .wrap .customer {
    font-weight: bold;
    font-size: 128%;
}

#case_lead_box .wrap .person {
    font-size: 88%;
    margin-bottom: 16px !important;
}

#case_lead_box .wrap .lead{
    font-weight: bold;
    font-size: 116%;
    color: #3a468e;
    line-height: 1.6;
}




/* 会社概要 */
body.page-profile.page-template-page-no-sidebar #sub_wrap {
    display: none;
}

body.page-profile.page-template-page-no-sidebar #corporate_philosophy {
	text-align: center;
	font-family: "Noto Sans JP";
	line-height: 2;
    margin: 40px 0;
	padding: 16px !important;
	font-size: 112%;
}



/* 代表者紹介 */
body.page-representative.page-template-page-no-sidebar #contents_wrap{
	max-width: 100%;
}

body.page-representative.page-template-page-no-sidebar #main_wrap {
    max-width: 100%;
    width: 100%;
}

body.page-representative.page-template-page-no-sidebar #content {
    max-width: 100%;
    width: 100%;
}

body.page-representative.page-template-page-no-sidebar #content > *{
    max-width: 816px;
	margin-left: auto;
	margin-right: auto;
}

body.page-representative.page-template-page-no-sidebar #sub_wrap {
    display: none;
}

body.page-representative.page-template-page-no-sidebar #greeting {
	/*padding: 48px;*/
	max-width: 100%;
}

body.page-representative.page-template-page-no-sidebar #greeting_img_wrap {
	background: #deebf7;
    margin-bottom: 40px;
}


body.page-representative.page-template-page-no-sidebar #greeting_img {
	text-align: left;
	font-family: "Noto Sans JP";
	line-height: 2;
	max-width: 816px;
	/*max-width: 952px;*/
    margin-left: auto;
    margin-right: auto;
    display: grid;
	grid-gap: 0;
    grid-template-columns: 1fr 264px;
    display: -ms-grid;
    -ms-grid-columns: 1fr 0 314px;
    -ms-grid-rows: auto;
}

body.page-representative.page-template-page-no-sidebar #greeting_img > *:nth-child(1){
	-ms-grid-column: 1; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
	display: flex;
    align-items: center;
    font-size: 132%;
    margin-top: 0 !important;
    line-height: 1.6;
}

body.page-representative.page-template-page-no-sidebar #greeting_img > *:nth-child(2){
	-ms-grid-column: 3; /* IE11 */
    -ms-grid-row: 1; /* IE11 */
	margin-top: 32px;
}

body.page-representative.page-template-page-no-sidebar #greeting .cont{
	max-width: 816px;
	margin-left: auto;
	margin-right: auto;
}

body.page-representative.page-template-page-no-sidebar #representative_profile dt{
	float: left;
	width: 32%;
    font-weight: bold;
}

body.page-representative.page-template-page-no-sidebar #representative_profile dd{
	padding-left: 32%;
	border-bottom: 1px solid #ccc;
	padding-bottom: 12px;
}

/* お問い合わせ */
body.page-contact #main_wrap ul.flow{
    border: 1px solid #ccc;
    padding: 8px;
    overflow: hidden;
}

body.page-contact #main_wrap ul.flow li{
	display: block;
    float: left;
    padding: 16px 0;
	margin: 0 0 0 5%;
    width: 30%;
    text-align: center;
    vertical-align: middle;
    position: relative;
    background: #f4f4f4;
    font-weight: bold;
}

body.page-contact #main_wrap ul.flow li:first-child{
	margin: 0;
}

body.page-contact #main_wrap ul.flow li.current{
    background: #3a468e;
	color: #fff;
}

body.page-contact #main_wrap ul.flow li:after{
	content: "";
    position: absolute;
    top: 1.3em;
    left: 100%;
    width: 17%;
	height: 16px;
    display: block;
    background: url(../images/common/arrow.png) no-repeat 50% 50%;
}

body.page-contact #main_wrap ul.flow li:last-child:after{
	display: none;
}

body.page-contact #main_wrap .error,
body.page-contact #main_wrap .error *{
	color: #BC3939;
	font-weight: bold;
}


body.page-contact #main_wrap form .error{
	background: #BC3939;
	margin-top: 4px;
	padding: 4px 16px !important;
	color: #fff;
	position: relative;
}

body.page-contact #main_wrap form .error:before{
	content:"";
	position: absolute;
	top: -6px;
	left: 16px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 8px 6px 8px;
	border-color: transparent transparent #BC3939 transparent;
}





/* 20191028追加 『テーラー』ソフト */
body.page-service p.num{
	padding-left: 1.6em;
	text-indent: -1.6em;
}

body.page-service img{
	max-height: 230px;
}

body.page-service .pic_wrap{
	overflow: hidden;
	margin-bottom: 1.618em;
}

body.page-service .pic_wrap .pw_left{
	float: left;
	max-width: 250px;
}

body.page-service .pic_wrap .pw_left img{
	max-height: 105px;
}

body.page-service .pic_wrap .pw_left img + img{
	max-height: 130px;
}
body.page-service .pic_wrap .pw_right{
	float: left;
}

body.page-service #package1{
	margin-top: -100px;
	padding-top: 160px;
}

body.page-service #package2,
body.page-service #package3,
body.page-service #package4{
	margin-top: -160px;
	padding-top: 160px;
}