/* ************************************************ */
/**** 共通タグ設定 ****/
/* ************************************************ */

* {
box-sizing:border-box;
vertical-align:top;
}

html {
overflow: auto;
height: 100%;
font-size: 62.5%;
}

body {
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
padding: 0px;
margin: 0px;
font-size:1.6rem;
line-height:2;
color:#000;
text-align:left;
height:100%;
overflow: visible!important;
word-wrap: break-word;
-webkit-text-size-adjust: 100%;
}

p {
padding: 0;
margin:0 0 1.5em 0;
}

img{
max-width: 100%;
height: auto;
/*width :auto;*/
vertical-align:top;
}

h1,h2,h3,h4,h5,h6 {
padding:0;
margin:0;
font-weight: inherit;
}

a {
/*color:#1B72E4;*/
color:unset;
text-decoration:underline;
transition: color 0.2s ease;
}
a:hover {
text-decoration:underline;
transition: color 0.2s ease;
}

ul {
padding:0;
margin:0 0 1.5em 0;
list-style: none;
list-style-type: disc;
}
ul li {
padding: 0;
margin:0;
list-style: none;
}

ol {
padding:0;
margin:0 0 1.5em 0;
list-style: decimal outside;
}

ol li {
padding:0;
margin:0 0 0 1.5em;
}

dl {
padding: 0;
margin:0 0 1.5em 0;
}
dt {
margin:0;
padding:0;
}
dd {
margin:0;
padding:0;
}

b ,
strong {
font-weight:700;
}

input {
font-size: 1.6rem;
line-height:1.5;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
vertical-align: baseline;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="date"],
input[type="number"],
input[type="password"] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;

margin:0;
padding:.5em 1em;
border:0;
width: 100%;
background:#fff;
border-radius:0;
}
input:focus {
outline: none;
}
textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;

font-size: 1.6rem;
line-height:1.5;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
vertical-align: baseline;

margin:0;
padding:.5em 1em;
border:0;
width: 100%;
background:#fff;
border-radius:0;
}
input[type="submit"],
input[type="button"],
button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;

font-size: 1.6rem;
line-height:1.5;
font-family: 'Noto Sans JP', sans-serif;
font-weight:400;
vertical-align: baseline;
display: inline-block;
cursor:pointer;
transition: all 0.2s ease;
}
input[type="submit"]:hover ,
input[type="button"]:hover ,
button:hover {
transition: all 0.2s ease;
}

/* ************************************************ */
/**** 共通クラス定義 ****/
/* ************************************************ */

/***** clearfix *****/
.clearfix:after { 
visibility: hidden;
display: block;
font-size: 0;
content: " ";
clear: both;
height: 0;
}

/***** inner *****/
.inner {
width: 1280px;
max-width:100%;
position:relative;
margin:auto;
padding: 100px 40px;
text-align:center;
}
.inner > *:last-child {
margin-bottom:0;
}

/***** inner *****/
.inner {
}
.inner > *:last-child {
margin-bottom:0;
}

/***** PCのみ/SPのみ *****/
.pc_only {
display:inline-block!important;
}
.sp_only {
display:none!important;
}

/***** 改行無し *****/
.nobr {
display:inline-block;
}

/***** 文字寄せ *****/
.al_left {
text-align:left;
}
.al_center {
text-align:center;
}
.al_right {
text-align:right;
}

/***** フォントカラー *****/
.clr_bl {
color:#1B72E4!important;
}


/***** リスト *****/
/* ドットリスト */
ul.dotlist li {
position:relative;
text-align: left;
line-height: 1.5;
margin:.5em auto;
padding:0 0 0 1em;
}
ul.dotlist li:before {
content:"●";
font-size:.5rem;
display:block;
position:absolute;
top: 1.6em;
left:0;
}
/* 括弧付き数字リスト */
ol.bracketlist {
counter-reset: cnt;
list-style-type: none;
}
ol.bracketlist > li {
counter-increment: cnt;
position: relative;
padding:0;
margin:0 0 0 2em;
}
ol.bracketlist > li:before {
content: "(" counter(cnt) ")"; 
position: absolute;
left: -2em;
text-align: right;
width: auto;
}


/***** BOX *****/
/* グレー */
.box {
background:#F5F5F7;
border-radius:8px;
display: block;
width:100%;
padding: 20px 30px;
margin:0 0 1.5em 0;
}
.box *:last-child {
margin-bottom:0;
}


/***** ボタンエリア *****/
.btnarea {
display:flex;
flex-wrap:wrap;
margin: 50px auto;
}
/*** btnA（白ベース青文字） ***/
a.btnA {
display:flex;
align-items: center;
text-decoration:none;
background:#fff;
color:#1B72E4;
border:1px solid #1B72E4;
border-radius:999px;
font-size:1.4rem;
line-height:1.3;
font-weight:700;
padding: .4em 1.25em;
margin: .5em;
}
a.btnA:hover {
background:#1B72E4;
color:#fff;
}
a.btnA i {
font-size:1.2rem;
margin-left:1em;
}
/*** btnB（青ベース白文字） ***/
a.btnB {
display:flex;
align-items: center;
text-decoration:none;
background:#1B72E4;
color:#fff;
border:1px solid #1B72E4;
border-radius:999px;
font-size:1.4rem;
line-height:1.3;
font-weight:700;
padding: .4em 1.25em;
margin: .5em;
}
a.btnB:hover {
background:#fff;
color:#1B72E4;
}
a.btnB i {
font-size:1.2rem;
margin-left:1em;
}
/*** btnC（透明ベース黒文字） ***/
a.btnC {
display:flex;
align-items: center;
text-decoration:none;
background:transparent;
color:#000;
border:1px solid #1B72E4;
border-radius:999px;
font-size:1.4rem;
line-height:1.3;
font-weight:400;
padding: .4em 1.25em;
margin: .5em;
}
a.btnC:hover {
background:#fff;
color:#1B72E4;
}
a.btnC i {
font-size:1.2rem;
margin-right:.5em;
color:#1B72E4;
}
/*** btnD（透明ベース白文字） ***/
a.btnD {
display:flex;
align-items: center;
text-decoration:none;
background:transparent;
color:#fff;
border:1px solid #fff;
border-radius:999px;
font-size:1.4rem;
line-height:1.3;
font-weight:400;
padding: .4em 1.25em;
margin: .5em;
}
a.btnD:hover {
}
a.btnD i {
font-size:1.2rem;
margin-right:.5em;
color:#fff;
}


/***** スクロールテーブル *****/
.scrolltable {
}

/***** swiper *****/

/* ****************************************************************************** */
/**** wrapper ****/
/* ****************************************************************************** */
.wrapper{
width:100%;
min-width:100%;
max-width:100%;
position:relative;
overflow: hidden;
padding:120px 0 0 0;
}

/* ******************************************************************** */
/**** header ****/
/* ******************************************************************** */
.header {
width:100%;
height:120px;
position:fixed;
top:0;
bottom:auto;
left:0;
right:0;
margin:auto;
z-index:10;
transition: all 0.2s ease;
background:#fff;
border-image: linear-gradient(90deg, #02A7FF 0%, #B9FFFF 100%) 1 / 0 0 4px 0;
}
.header .inner {
position:relative;
padding: 0 40px;
display:flex;
align-items: flex-start;
justify-content: space-between;
}
/***** ロゴ *****/
.header .logo {
width:250px;
margin:38px 30px 12px 0;
}
/***** navToggle *****/
.header #navToggle {
display:none;
}
/***** メニュー *****/
.header .header_menu {
width:calc(100% - 280px);
margin:25px 0 0 0;
}
.header .header_menu a {
text-decoration:none;
}
/*** sub_menu【PC】 ***/
.header .header_menu .sub_menu_pc {
display:block;
margin:0 0 10px 0;
}
.header .header_menu .sub_menu_pc ul {
display:flex;
justify-content: flex-end;
margin:0 0 ;
font-size:1.4rem;
line-height:1.5;
}
.header .header_menu .sub_menu_pc ul li {
border-right:1px solid #ccc;
padding:0 1.5em;
display: flex;
}
.header .header_menu .sub_menu_pc ul li:last-child {
border:0;
}
.header .header_menu .sub_menu_pc ul li a {
display:flex;
color:#45ADCB;
}
.header .header_menu .sub_menu_pc ul li a:hover {
color:#000;
}
.header .header_menu .sub_menu_pc ul li .type {
display:flex;
align-items: center;
font-size:1.2rem;
color:#666;
margin:0 .5em 0 0;
}
.header .header_menu .sub_menu_pc ul li .type img {
margin:0 .5em 0 0;
}
/*** sub_menu【SP】 ***/
.header .header_menu .sub_menu_sp {
display:none;
}

/*** main_menu【PC】 ***/
.header .header_menu .main_menu_pc {
}
.header .header_menu .main_menu_pc ul {
display:flex;
margin:0 0 ;
font-size:1.4rem;
line-height:1.5;
font-weight:700;
}
.header .header_menu .main_menu_pc ul li {
padding:0 1.5em;
position:relative;
cursor:pointer;
}
.header .header_menu .main_menu_pc > ul > li:after {
content:"";
width:0;
display:block;
position:absolute;
left:0;
bottom:0;
border-bottom:4px solid #1B72E4;
transition: opacity 0.2s ease;
}
.header .header_menu .main_menu_pc > ul > li:hover:after {
width:100%;
transition: width 0.2s ease;
}
.header .header_menu .main_menu_pc > ul > li.current:after {
width:100%;
}
.header .header_menu .main_menu_pc ul li a {
display:flex;
color:#000;
display: block;
padding:12px 0 31px 0;
}
.header .header_menu .main_menu_pc ul li.parent:hover > a {
color:#1B72E4;
}
.header .header_menu .main_menu_pc ul li a:hover {
color:#1B72E4;
}

/* メガメニュー */
.header .header_menu .main_menu_pc ul li > .megamenu {
margin: 0 auto;
padding:0 ;
/*width: 100vw;*/
width: 100%;
max-height: calc(100vh - 120px);
overflow-y: auto;
position:fixed;
top:auto;
left:0;
text-align:left;

display:none;
opacity: 0;

animation-duration: 0.4s;
animation-name: fade-in;
-moz-animation-duration: 0.4s;
-moz-animation-name: fade-in;
-webkit-animation-duration: 0.4s;
-webkit-animation-name: fade-in;
}
/*.header .header_menu .main_menu_pc ul li:hover > .megamenu {
display:block;
opacity: 1;
}*/
.header .header_menu .main_menu_pc ul li > .megamenu.view {
display:block;
opacity: 1;
}
.header .header_menu .main_menu_pc ul li > .megamenu .inner {
background:#F3F3F6;
width:100%;
padding:50px 40px;
display: block;
text-align:left;
width: 100%;
max-height: calc(100vh - 120px);
overflow-y: auto;
}
.header .header_menu .main_menu_pc ul li > .megamenu .inner:nth-child(2) {
border-top:1px solid #E4E4E4;
}
.header .header_menu .main_menu_pc ul li > .megamenu .inner > ul:last-child {
margin-bottom:0;
}
.header .header_menu .main_menu_pc ul li > .megamenu .megamenu_title {
font-size:3.6rem;
font-weight:700;
color:#7F7978;
margin: 0 auto 30px auto;
display: block;
width: 1200px;
max-width: 100%;
}
.header .header_menu .main_menu_pc ul li > .megamenu ul {
display: flex;
margin:0 auto 30px auto;
line-height:2;
width: 1200px;
max-width: 100%;
}
.header .header_menu .main_menu_pc ul li > .megamenu ul li {
font-size:2.4rem;
font-weight:700;
margin: 0px 40px 0px 0px;
padding:0;
}
.header .header_menu .main_menu_pc ul li > .megamenu ul li a {
padding:0;
}
.header .header_menu .main_menu_pc ul li > .megamenu .inner > ul > li > a {
border: 1px solid #D9D9D9;
border-radius: 8px;
background: #fff;
padding:0 .6em .15em .5em;
display: flex;
align-items: center;
}
.header .header_menu .main_menu_pc ul li > .megamenu .inner > ul > li > .more {
display: flex;
align-items: center;

border: 0;
border-radius: 0;
background: none;
padding:0 0 0 15px;
font-size:1.6rem;
font-weight:700;
color:#7F7978;
}
.header .header_menu .main_menu_pc ul li > .megamenu .inner ul li > a i {
vertical-align: middle;
font-size: 1.6rem;
margin: .2em .6em 0 0;
color:#7F7978;
}
.header .header_menu .main_menu_pc ul li > .megamenu ul li ul.lv2 {
display:block;
margin:10px 0 0 15px;
width:fit-content;
}
.header .header_menu .main_menu_pc ul li > .megamenu ul li ul.lv2 li {
padding:0 0 0 1.5em;
font-size: 1.4rem;
font-weight: 400;
margin: 0 0 .2em 0;
position:relative;
}
.header .header_menu .main_menu_pc ul li > .megamenu ul li ul.lv2 li:before {
font-family: "Font Awesome 6 Free";
content: "\f054";
font-weight:900;
font-size:1rem;
position:absolute;
top: 50%;
left: 0;
transform: translateY(-50%);
}
.header .header_menu .main_menu_pc ul li > .megamenu ul > li.lv2 > ul {
padding:0;
margin:1.5em 0 ;
}
.header .header_menu .main_menu_pc ul li > .megamenu ul > li.lv2 > ul li.lv3 {
}
/*** main_menu【SP】 ***/
.header .header_menu .main_menu_sp {
display:none;
}


/*** 閉じる ***/
.header .header_menu .navClose {
display:none;
}


/* ******************************************************************** */
/**** container ****/
/* ******************************************************************** */
.container {
position:relative;
}
.container.megamenu_open:after {
content: "";
background: rgba(255, 255, 255, 0.3);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
width: 100vw;
height: 100vh;
display: block;
top: 0;
left: 0;
position: fixed;
pointer-events: none;
z-index:1;
animation: overlay-fade-in 0.3s ease forwards;
}

@keyframes overlay-fade-in {
from {
opacity: 0;
backdrop-filter: blur(0);
-webkit-backdrop-filter: blur(0);
}
to {
opacity: 1;
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}
}

/* ************************************************ */
/**** main ****/
/* ************************************************ */

/*************** ■共通パーツ ***************/
/***** パンくず *****/
.breadcrumb {
background:#fff;
font-size:1.4rem;
line-height: 1.5;
color:#333;
}
.breadcrumb .inner {
padding:13px 40px;
}
.breadcrumb ul {
display:flex;
flex-wrap: wrap;
}
.breadcrumb ul li {
text-align: left;
}
.breadcrumb ul li:after {
content:"＞";
margin:0 1em;
}
.breadcrumb ul li:last-child:after {
display:none;
}
.breadcrumb ul li a {
color:#333;
text-decoration:none;
}
.breadcrumb ul li a:hover {
color:#000;
}

/***** 導入前のご相談 *****/
.consultation {
background:#F3F3F6;
}
/*** タブメニュー ***/
.consultation .tab_menu {
width: 1200px;
max-width: 100%;
margin: auto;
}
.consultation .tab_menu ul {
display:flex;
margin:0;
}
.consultation .tab_menu ul li {
width:50%;
display:flex;
align-items:center;
justify-content: center;
color:#fff;
background:#1B72E4;
cursor:pointer;
text-align:center;
font-size:2rem;
font-weight:700;
padding: .25em;
}
.consultation .tab_menu ul li.active {
color:#1B72E4;
background:#F3F3F6;
}

.consultation .tab_menu ul li i {
margin-right:1em;
}
.consultation .inner {
padding:100px 40px 100px 40px
}
/*** consultation_wrap ***/
.consultation_wrap {
display:none;
}
.consultation_wrap.show {
display:block;
}
/*** 製品・サービス導入をご検討中のお客様 ***/
/* リード */
.consultation .consultation_lead {
font-weight:500;
color:#666;
margin:0 auto 50px auto;
}
.consultation .consultation_lead .consultation_title {
font-size:3.6rem;
font-weight:700;
color:#000;
margin:0 auto 1em auto;
}
.consultation .consultation_lead .btnarea {
justify-content: center;
margin: 0 auto;
}
.consultation .consultation_lead .btnarea a.btnC {
font-size:2rem;
}
.consultation .consultation_lead .btnarea a.btnC i {
font-size:2rem;
}

/* ご相談メニュー */
.consultation .consultation_menu {
}
.consultation .consultation_menu ul {
display:flex;
justify-content: center;
}
.consultation .consultation_menu ul li {
width:calc(100% / 3);
max-width:360px;
padding:0 20px;
color:#333;
}
.consultation .consultation_menu ul li a {
text-decoration:none;
color:#333;
display:block;
}
.consultation .consultation_menu ul li .consultation_menu_ic {
display:flex;
align-items: center;
justify-content: center;
width:150px;
height:150px;
background:#1B72E4;
border-radius:50%;
position:relative;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
margin:0 auto 20px auto;
}
.consultation .consultation_menu ul li .consultation_menu_ic .allow {
position:absolute;
right:0;
bottom:12px;

font-size:2rem;
color:#1B72E4;
display:flex;
align-items: center;
justify-content: center;
width:40px;
height:40px;
background:#fff;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
border-radius:50%;
}
.consultation .consultation_menu ul li .consultation_menu_txt {
line-height:1.6;
}
.consultation .consultation_menu ul li .consultation_menu_txt *:last-child {
margin-bottom:0;
}
.consultation .consultation_menu ul li .consultation_menu_txt .consultation_menu_title {
font-weight:700;
margin:0 auto .5em auto;
}
/*** 製品をご利用のお客様 ***/



/***** ニュース一覧 *****/
.news_list {
width:1000px;
max-width:100%;
margin: 0 auto 50px auto;
}
.news_list ul {
margin:0 auto;
border-top:2px solid #E4E4E4;
}
.news_list ul li {
display:flex;
padding:30px 80px 30px 30px;
text-align:left;
line-height: 1.5;
border-bottom:2px solid #E4E4E4;
position:relative;
}
.news_list ul li:after {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_allow-right_bl.svg) no-repeat center center;
background-size:30px 30px;
position:absolute;
top:50%;
right: 20px;
transform: translateY(-50%);
}
.news_list ul li .news_list_date {
width:100px;
font-size:1.4rem;
font-weight:700;
font-style: italic;
color:#757575;
}
.news_list ul li .news_list_category {
width:90px;
height: 24px;
border-radius: 24px;
font-size:1.4rem;
line-height:24px;
border:1px solid #1B72E4;
text-align: center;
color: #1B72E4;
display: flex;
align-items: center;
justify-content: center;
}
.news_list ul li .news_list_title {
width:calc(100% - 210px);
margin-left: 20px;
}
.news_list ul li .news_list_title a {
color:#1B72E4;
text-decoration:none;
}

.news_list ul li .news_list_title a:hover {
text-decoration:underline;
}

/***** ページネーション *****/
.pagination {
margin:auto;
width: 1000px;
max-width: 100%;
}
.pagination ul {
display:flex;
justify-content: center;
}
.pagination ul li {
margin:0 2em;
}
.pagination ul li.next {
margin:0 0 0 auto;
}
.pagination ul li.prev {
margin:0 auto 0 0;
}
.pagination ul li a ,
.pagination ul li span {
color:#000;
text-decoration:none;
display:flex;
align-items: center;
cursor:pointer;
}
.pagination ul li a:hover ,
.pagination ul li span:hover {
color:#1B72E4;
}
.pagination ul li a i ,
.pagination ul li span i {
font-size:1.4rem;
margin:0 .5em;
}


/***** Coming Soon *****/
.comingsoon {
background:#F9F9FC;
}
.comingsoon .inner {
padding:200px 40px;
}
.comingsoon .comingsoon_title {
font-size:4rem;
line-height:1.5;
font-weight:700;
margin:0 auto 1em auto;
}
.comingsoon .btnarea {
justify-content: center;
}

/***** 送信完了 *****/
.thankyou {
background:#F9F9FC;
}
.thankyou .inner {
padding:200px 40px;
}
.thankyou .thankyou_title {
font-size:4rem;
line-height:1.5;
font-weight:700;
margin:0 auto 1em auto;
}
.thankyou .btnarea {
justify-content: center;
}

/***** 採用情報ナビ *****/
.recruit_navi {
position: fixed;
width: 100%;
z-index: 3;
pointer-events: none;
transition: margin 0.2s ease;
}
.recruit_navi.move_position {
margin-top: -77px;
transition: margin 0.2s ease;
}

.recruit_navi .inner {
padding: 60px 40px 0 40px;
}
.recruit_navi .inner > ul {
display: flex;
justify-content: end;
}
.recruit_navi .inner > ul > li {
display:flex;
background:#000;
color:#fff;
position:relative;
font-size:1.4rem;
font-weight:700;
cursor:pointer;
pointer-events: auto;
max-width:100%;
border-radius:999px;
}
.recruit_navi .inner > ul > li:hover {
background:#1B72E4;
}
.recruit_navi .inner > ul > li.entry {
justify-content: space-between;
width:170px;
padding:.5em 1.5em;
}
.recruit_navi .inner > ul > li.entry img {
width:24px;
margin-left:1em;
}
.recruit_navi .inner > ul > li.hamburger {
justify-content: center;
width:90px;
opacity: 1;
padding:.5em 1.5em;
margin-left:1em;
transition: all 0.2s ease;
}
.recruit_navi .inner > ul > li.hamburger img {
width:30px;
}
.recruit_navi .inner > ul > li .dropdownmenu {
display:none;

position:absolute;
right:-10px;
top: 100%;
width: max-content;
padding:10px;
}
.recruit_navi .inner > ul > li .dropdownmenu ul {
border:1px solid #ccc;
border-bottom:0;
}
.recruit_navi .inner > ul > li .dropdownmenu ul li {
border-bottom:1px solid #ccc;
font-size:1.4rem;
}
.recruit_navi .inner > ul > li .dropdownmenu ul li a {
display:block;
background:#fff;
color:#1B72E4;
text-decoration:none;
padding:.75em 50px .75em 1.25em;
text-align:left;
position:relative;
}
.recruit_navi .inner > ul > li .dropdownmenu ul li a:after {
content: "";
width: 24px;
height: 24px;
display: block;
background: url(../images/ic_circle_allow-right.svg) no-repeat center center;
background-size: auto;
background-size: 24px 24px;
position: absolute;
top: 50%;
right: 10px;
transform: translateY(-50%);
}
.recruit_navi .inner > ul > li .dropdownmenu ul li a:hover {
background:#f3f3f6;
}
@media (any-hover: hover) {
.recruit_navi .inner > ul > li:hover .dropdownmenu {
display:block;
}
}


/***** 採用情報エントリーバナー *****/
.recruit_entry {
background:#1B72E4;
}
.recruit_entry .inner {
}

.recruit_entry .recruit_entry_title {
font-size:4.8rem;
line-height: 1.4;
font-weight:700;
margin-bottom:1.5em;
color:#fff;
}
.recruit_entry ul {
display:flex;
justify-content: space-between;
width: fit-content;
margin: auto;
}
.recruit_entry ul li {
width: calc((100% - 60px) / 2);
}


/*************** ■TOPページ ***************/
.toppage {
}

/***** ページヘッダー *****/
.toppage .pageheader {
display:block;
}
.toppage .pageheader {
background:#F8F8F8 url(../images/toppage_pageheader_bg.png) no-repeat center center;
background-size:1244px 701px;
}
.toppage .pageheader .inner {
padding:100px 40px 150px 40px;
}
.toppage .pageheader .page_title {
font-size:6.4rem;
line-height:1.25;
font-weight:900;
text-align:left;
margin:0 0 1em 0;
}

.toppage .pageheader .about_us {
display:flex;
align-items: center;
background:#fff;
border-radius:8px;
padding:30px;
}
.toppage .pageheader .about_us .about_us_txt {
width:calc(100% - 280px - 10%);
font-weight: 500;
}
.toppage .pageheader .about_us .about_us_txt dl {
display:flex;
text-align:left;
margin:0 auto;
}
.toppage .pageheader .about_us .about_us_txt dl dt {
width:120px;
font-weight:700;
color:#1B72E4;
}
.toppage .pageheader .about_us .about_us_txt dl dd {
width:calc(100% - 120px);
}
.toppage .pageheader .about_us .about_us_txt dl dd p {
margin-bottom:.5em;
}
.toppage .pageheader .about_us .about_us_cta {
width:calc(280px + 10%);
}
.toppage .pageheader .about_us .about_us_cta .about_us_cta_img {
margin:0 auto 1em auto;
}
.toppage .pageheader .about_us .about_us_cta .btnarea {
justify-content: center;
margin:0 auto;
}
.toppage .pageheader .about_us .about_us_cta .btnarea .btnA ,
.toppage .pageheader .about_us .about_us_cta .btnarea .btnB {
font-size:2rem;
font-weight:400;
padding: .8em 2.5em;
width: 270px;
position:relative;
}
.toppage .pageheader .about_us .about_us_cta .btnarea .btnA i ,
.toppage .pageheader .about_us .about_us_cta .btnarea .btnB i {
position:absolute;
right:2.5em;
font-size:1.8rem;
}

/***** TOP NEWS *****/
.toppage .top_news {
}
.toppage .top_news .inner {
display:flex;
flex-wrap:wrap;
}

.toppage .top_news .top_news_title {
width:280px;
border-top:2px solid #1B72E4;
font-size:6.2rem;
line-height:1.5;
font-weight:700;
color:#1B72E4;
text-align:left;
padding: 0 20px;
}
.toppage .top_news .news_list {
width:calc(100% - 280px);
margin: 0 auto;
}
.toppage .top_news .news_list ul {
margin-bottom:30px;
}
.toppage .top_news .btnarea {
width:100%;
justify-content: center;
margin: 0 auto;
}
.toppage .top_news .btnarea a.btnC {
font-size:2rem;
}
.toppage .top_news .btnarea a.btnC i {
font-size:2rem;
}

/***** TOP サービス・製品 *****/
.toppage .top_service {
}

/*** ヘッダー ***/
.toppage .top_service .top_service_header {
background:linear-gradient(90deg, #02A7FF, #B9FFFF);
color:#fff;
}
.toppage .top_service .top_service_header .inner {
padding:150px 40px 100px 40px;
}
.toppage .top_service .top_service_header .page_title {
font-size:6.4rem;
line-height: 1;
font-weight:600;
text-align:center;
display: flex;
align-items: center;
flex-wrap: wrap;
margin: 0 auto .75em auto;
width: fit-content;
}
.toppage .top_service .top_service_header .page_title .en {
font-size:2.4rem;
margin-left:1em;
}

.toppage .top_service .top_service_header .slogan {
font-size:2.4rem;
line-height:1.66;
font-weight:500;
}


/*** サービス・製品一覧 ***/
.toppage .top_service_list {
background:#F8F8F8;
}
.toppage .top_service_list .inner {
}

.toppage .top_service_list ul {
display:flex;
flex-wrap: wrap;
}
.toppage .top_service_list ul li {
width:50%;
padding:25px;
}
.toppage .top_service_list ul li .top_service_list_logo {
margin: 0 auto 1em auto;
}
.toppage .top_service_list ul li .top_service_list_logo a ,
.toppage .top_service_list ul li .top_service_list_logo span {
display:block;
background:#fff;
border-radius:10px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
padding:20px;
text-align:center;
text-decoration:none;
transform: translateZ(0);
backface-visibility: hidden;
will-change: transform;
transition: transform 0.2s ease;
}
.toppage .top_service_list ul li .top_service_list_logo a:hover {
transform: scale(1.02) translateZ(0);
transition: transform 0.2s ease;
}
.toppage .top_service_list ul li .top_service_list_logo .top_service_list_type {
border:1px solid ;
background:#fff;
border-radius:6px;
font-size:1.2rem;
line-height:20px;
font-weight:500;
width:200px;
max-width:100%;
margin:0 auto .5em auto;
}
.toppage .top_service_list ul li .top_service_list_logo .top_service_list_type.red {
border-color:#f00;
color:#f00;
}
.toppage .top_service_list ul li .top_service_list_logo .top_service_list_type.green {
border-color:#289760;
color:#289760;
}
.toppage .top_service_list ul li .top_service_list_logo .top_service_list_type.blue {
border-color:#0B63CE;
color:#0B63CE;
}
.toppage .top_service_list ul li .top_service_list_logo .top_service_list_type.scarlet {
border-color:#A73626;
color:#A73626;
}
.toppage .top_service_list ul li .top_service_list_logo .top_service_list_type.gray {
border-color:#62615D;
color:#62615D;
}
.toppage .top_service_list ul li .top_service_list_logo .top_service_list_img {
/*width:310px;*/
max-width:100%;
margin:20px auto;

width: auto;
height: auto;
max-height: 48px;
}

.toppage .top_service_list ul li .top_service_list_logo .top_service_list_img img {
width: auto;
height: auto;
max-height: 48px;
}
.toppage .top_service_list .btnarea {
justify-content:center;
margin: 0 auto;
}
.toppage .top_service_list .btnarea a.btnC {
font-size:2rem;
}
.toppage .top_service_list .btnarea a.btnC i {
font-size:2rem;
}

/***** ピックアップ *****/
.toppage .pickup {
background:linear-gradient(90deg, #B8FEFF, #8AB9FF 20%, #8AB9FF 80%, #B8FEFF);

}

/*** ヘッダー ***/
.toppage .pickup .pickup_header {
border-bottom:2px solid #fff;
}
.toppage .pickup .pickup_header .inner {
padding:100px 40px 50px 40px;
}
.toppage .pickup .pickup_header .page_title {
font-size:6.4rem;
font-weight:500;
display:block;
color:#fff;
}
.toppage .pickup .pickup_header .page_title .jp {
font-size:2.4rem;
font-weight:700;
}

/*** ピックアップ一覧 ***/
.toppage .pickup .pickup_list {
}
.toppage .pickup .pickup_list .inner {
width: 1220px;
padding:50px 40px;
}
.toppage .pickup .pickup_list ul {
display:flex;
}
.toppage .pickup .pickup_list ul li {
width:calc(100% / 3);
padding:0 15px;
}
.toppage .pickup .pickup_list ul li .pickup_list_img {
margin:0 auto 0 auto;
}
.toppage .pickup .pickup_list ul li .pickup_list_img a {
display:block;
transition: transform 0.2s ease;
}
.toppage .pickup .pickup_list ul li .pickup_list_img a:hover {
transform: scale(1.01);
transition: transform 0.2s ease;
}
.toppage .pickup .pickup_list ul li .pickup_list_txt {
text-align:left;
padding:20px;
}
.toppage .pickup .pickup_list ul li .pickup_list_txt .pickup_list_title {
font-size:1.6rem;
font-weight:700;
margin:0 0 1em 0;
}

/***** TOP ソリューション *****/
.toppage .top_solution {
background:#174787;
}
.toppage .top_solution .inner {
width:1080px;
}

.toppage .top_solution ul {
margin:0;
}
.toppage .top_solution ul li {
width:1000px;
max-width:100%;
display:flex;
align-items: center;
text-align: left;
margin-bottom:40px;
}
.toppage .top_solution ul li:last-child {
margin-bottom:0;
}

.toppage .top_solution ul li a {
text-decoration:none;
color:#fff;
padding:40px 100px;
display: flex;
align-items: center;
width: 100%;
height: 100%;
position:relative;
border-radius:16px;
transition: transform 0.2s ease;
}
.toppage .top_solution ul li.it-solution a {
background:url(../images/toppage_it-solution_bnr_bg.jpg) no-repeat center center;
background-size:cover;
}
.toppage .top_solution ul li.it-consulting a {
background:url(../images/toppage_it-consulting_bnr_bg.jpg) no-repeat center center;
background-size:cover;
}
.toppage .top_solution ul li a:hover {
transform: scale(1.01);
transition: transform 0.2s ease;
}
.toppage .top_solution ul li a:after {
content:"";
width:50px;
height:50px;
display:block;
background:url(../images/ic_allow-right_wh.svg) no-repeat center center;
background-size:50px 50px;
position:absolute;
right:50px;
top: 50%;
transform: translateY(-50%);
}
.toppage .top_solution ul li a .top_solution_txt {
font-size:2.4rem;
line-height:1.5;
font-weight:500;
}
.toppage .top_solution ul li a .top_solution_txt *:last-child {
margin-bottom:0;
}
.toppage .top_solution ul li a .top_solution_txt .top_solution_title {
font-size:6.4rem;
font-weight:700;
color:#fff;
}

/*************** ■サービス・製品 ***************/
.service-product {
}

/***** ページヘッダー *****/
.service-product .pageheader {
display:none;
display:block;
background:linear-gradient(90deg, #02A7FF, #B9FFFF);
}
.service-product .pageheader .inner {
padding:80px 40px;
}
.service-product .pageheader .page_title {
font-size:4.8rem;
font-weight:400;
color:#fff;
text-align:left;
}

/***** サービス *****/
.service-product .service {
}
.service-product .service .inner {
}

.service-product .service .page_title {
font-size:6.4rem;
line-height: 1;
font-weight:600;
text-align:center;
display: flex;
align-items: flex-start;
flex-wrap: wrap;
margin: 0 auto .75em auto;
width: fit-content;
color:#1B72E4;
}
.service-product .service .page_title .en {
font-size:2.4rem;
margin-left:1em;
}
.service-product .service .service_slogan {
font-size:4rem;
line-height:1.5;
margin: 0 auto 2em auto;
}

.service-product .service ul {
margin-bottom:0;
}
.service-product .service ul li {
margin:0 auto 50px auto;
}
.service-product .service ul li a {
display: block;
background:#fff;
border-radius:20px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
padding:50px;
text-decoration:none;
transition: transform 0.2s ease;
}
.service-product .service ul li a:hover {
transform: scale(1.01);
transition: transform 0.2s ease;
}
.service-product .service ul li .service_catch {
font-size:2rem;
line-height: 1.5;
display: flex;
align-items: baseline;
justify-content: flex-start;
margin:0 auto 30px auto;
}
.service-product .service ul li .service_catch .service_type {
border: 1px solid;
background: #fff;
border-radius: 6px;
font-size: 1.2rem;
line-height: 1;
font-weight: 500;
padding: .2em 1em .3em 1em;
margin: 0 1em 0 0;
display: block;
}
.service-product .service ul li .service_wrap {
display:flex;
align-items: center;
}
/*service_block1*/
.service-product .service ul li .service_wrap .service_block1 {
width:50%;
padding:0 50px 0 0;
}
.service-product .service ul li .service_wrap .service_block1 .service_logo {
margin:0 auto 20px auto;
}
.service-product .service ul li .service_wrap .service_block1 .service_ex {
font-size:2rem;
line-height:1.5;
font-weight:700;
margin:0 auto 30px auto;
}
.service-product .service ul li .service_wrap .service_block1 dl {
line-height:1.3;
text-align:center;
display:flex;
}
.service-product .service ul li .service_wrap .service_block1 dl div {
width:calc(100% / 3);
padding:5px;
display: flex;
flex-direction: column;
}
.service-product .service ul li .service_wrap .service_block1 dl div dt {
border-radius:10px;
color:#fff;
font-weight:700;
padding:.5em;
height:80px;
min-height: 80px;
/*flex-grow: 1;*/
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
}
.service-product .service ul li .service_wrap .service_block1 dl div dd {
font-size:1.4rem;
padding:1em .5em;
}
/*service_block2*/
.service-product .service ul li .service_wrap .service_block2 {
width:50%;
}

/* red */
.service-product .service ul li.red .service_catch .service_type {
border-color:#f00;
color:#f00;
}
.service-product .service ul li.red .service_wrap .service_block1 dl div dt {
background:#f00;
}
/* green */
.service-product .service ul li.green .service_catch .service_type {
border-color:#289760;
color:#289760;
}
.service-product .service ul li.green .service_wrap .service_block1 dl div dt {
background:#92C530;
}

/***** 製品 *****/
.service-product .product {
background:#1B72E4;
}
.service-product .product .inner {
}

.service-product .product .page_title {
font-size:6.4rem;
line-height: 1;
font-weight:600;
text-align:center;
display: flex;
align-items: flex-start;
flex-wrap: wrap;
margin: 0 auto .75em auto;
width: fit-content;
color:#fff;
}
.service-product .product .page_title .en {
font-size:2.4rem;
margin-left:1em;
}
.service-product .product .product_slogan {
font-size:4rem;
line-height:1.5;
margin: 0 auto 2em auto;
color:#fff;
}

.service-product .product ul {
margin-bottom:0;
}
.service-product .product ul li {
margin:0 auto 50px auto;
}
.service-product .product ul li a ,
.service-product .product ul li span {
display: block;
background:#fff;
border-radius:20px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
padding:50px;
text-decoration:none;
transition: transform 0.2s ease;
}
.service-product .product ul li a:hover {
transform: scale(1.01);
transition: transform 0.2s ease;
}
.service-product .product ul li .product_catch {
font-size:2rem;
line-height: 1.5;
display: flex;
align-items: baseline;
justify-content: flex-start;
margin:0 auto 30px auto;
}
.service-product .product ul li .product_catch .product_type {
border: 1px solid;
background: #fff;
border-radius: 6px;
font-size: 1.2rem;
line-height: 1;
font-weight: 500;
padding: .2em 1em .3em 1em;
margin: 0 1em 0 0;
display: block;
}

.service-product .product ul li .product_wrap {
display:flex;
align-items: center;
}
/*product_block1*/
.service-product .product ul li .product_wrap .product_block1 {
width:50%;
padding:0 50px 0 0;
}
.service-product .product ul li .product_wrap .product_block1 .product_logo {
margin:0 auto 20px auto;
}
.service-product .product ul li .product_wrap .product_block1 .product_ex {
font-size:2rem;
line-height:1.5;
font-weight:700;
margin:0 auto 30px auto;
}
/*product_block2*/
.service-product .product ul li .product_wrap .product_block2 {
width:50%;
}
.service-product .product ul li .product_wrap .product_block2 dl {
line-height:1.3;
text-align:center;
display:flex;
}
.service-product .product ul li .product_wrap .product_block2 dl div {
width:calc(100% / 3);
padding:5px;
display: flex;
flex-direction: column;
}
.service-product .product ul li .product_wrap .product_block2 dl div dt {
border-radius:10px;
color:#fff;
font-weight:700;
padding:.5em;
height:80px;
min-height: 80px;
/*flex-grow: 1;*/
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
}
.service-product .product ul li .product_wrap .product_block2 dl div dd {
font-size:1.4rem;
padding:1em .5em;
}

/* blue */
.service-product .product ul li.blue .product_catch .product_type {
border-color:#0B63CE;
color:#0B63CE;
}
.service-product .product ul li.blue .product_wrap .product_block2 dl div dt {
background:#0B63CE;
}
/* scarlet */
.service-product .product ul li.scarlet .product_catch .product_type {
border-color:#A73626;
color:#A73626;
}
.service-product .product ul li.scarlet .product_wrap .product_block2 dl div dt {
background:#A73626;
}
/* gray */
.service-product .product ul li.gray .product_catch .product_type {
border-color:#62615D;
color:#62615D;
}
.service-product .product ul li.gray .product_wrap .product_block2 dl div dt {
background:#62615D;
}


/*************** ■サービス・製品＞AtoZ portal 共通 ***************/
.atozportal_title {
font-size:4rem;
line-height:1.5;
font-weight:700;
margin:0 auto 1em auto;
}

/***** 特徴 *****/
.atozportal_feature {
}
.atozportal_feature .inner {
}

.atozportal_feature .inner > ul {
display:flex;
flex-wrap:wrap;
}
.atozportal_feature .inner > ul > li {
width:calc(50% - 40px);
margin:20px;
padding:30px;
background:#FCFCFE;
border:1px solid #ccc;
border-radius:10px;
display:flex;
}
.atozportal_feature .inner > ul > li *:last-child {
margin-bottom:0;
}
.atozportal_feature .inner > ul > li .atozportal_feature_img {
width:120px;
max-width:100%;
}
.atozportal_feature .inner > ul > li .atozportal_feature_txt {
width:calc(100% - 140px);
padding-left:20px;
text-align:left;
}
.atozportal_feature .inner > ul > li .atozportal_feature_txt .atozportal_feature_title {
font-size:2.4rem;
line-height:1.5;
font-weight:700;
margin:0 0 .5em 0;
}
.atozportal_feature .inner > ul > li .atozportal_feature_txt .atozportal_feature_title small {
font-size:1.6rem;
vertical-align: middle;
}
.atozportal_feature .inner > ul > li .atozportal_feature_txt .atozportal_feature_subtitle {
font-size:2rem;
line-height:1.5;
font-weight:500;
color:#1B72E4;
}


/***** 機能 *****/
.atozportal_function {
}
.atozportal_function .inner {
}

.atozportal_function .inner > ul {
display:flex;
flex-wrap:wrap;
}
.atozportal_function .inner > ul > li {
width:calc(25% - 20px);
margin:10px;
padding:30px;
background:#fff;
border:1px solid #ccc;
border-radius:10px;
}
.atozportal_function .inner > ul > li *:last-child {
margin-bottom:0;
}
.atozportal_function .inner > ul > li .atozportal_function_title {
font-size:2.4rem;
line-height:1.5;
font-weight:700;
margin:0 0 .5em 0;
}
.atozportal_function .inner > ul > li .atozportal_function_title small {
font-size:1.6rem;
vertical-align: middle;
}
.atozportal_function .inner > ul > li .atozportal_function_img {
width:160px;
max-width:100%;
margin:0 auto 20px auto;
}
.atozportal_function .inner > ul > li .atozportal_function_txt {
line-height:1.5;
width:100%;
text-align:left;
}

/*************** ■サービス・製品＞AtoZ portal TOP ***************/
.atozportal {
}

/***** ページヘッダー *****/
.atozportal .pageheader {
background:#C42923;
}
.atozportal .pageheader .inner {
display:flex;
align-items: center;
padding:100px 40px 50px 40px;
}
.atozportal .pageheader .atozportal_pageheader_txt {
width:50%;
text-align:left;
color:#fff;
font-weight:500;
}
.atozportal .pageheader .atozportal_pageheader_txt .page_title {
font-size:7rem;
line-height: 1.5;
font-weight:700;
text-align:left;
color:#fff;
margin:0 0 .75em 0;
}
.atozportal .pageheader .atozportal_pageheader_txt ul {
display:flex;
align-items: center;
width: fit-content;
background:#fff;
border-radius:999px;
padding:3px;
margin:0 0 30px 0;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li {
font-size:1.4rem;
line-height:1.3;
font-weight:700;
padding:3px;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li a {
border-radius:999px;
background:#000;
color:#fff;
text-decoration:none;
display:block;
padding:.75em 1em ;
text-align:center;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li a:hover {
background:#000;
color:#fff;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li.intranet a {
background:#fff;
color:#1B72E4;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li.intranet a:hover {
background:#1B72E4;
color:#fff;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li.customer a {
background:#fff;
color:#EEA320;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li.customer a:hover {
background:#EEA320;
color:#fff;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li.academic a {
background:#fff;
color:#289760;
}
.atozportal .pageheader .atozportal_pageheader_txt ul li.academic a:hover {
background:#289760;
color:#fff;
}
.atozportal .pageheader .atozportal_pageheader_txt .atozportal_pageheader_subtitle {
font-size:2.4rem;
line-height:1.5;
font-weight:700;
margin:0 0 .5em 0;
}

.atozportal .pageheader .atozportal_pageheader_img {
width:50%;
padding:0 0 0 20px;
}

/***** 特徴 *****/
.atozportal .atozportal_feature {
background:#FAFAFC;
}

/***** 現場のDXが進まない理由をゼロに。運用まで完結する唯一のポータル。 *****/
.atozportal .atozportal_onlyone {
background:#C42923;
}
.atozportal .atozportal_onlyone .inner {
}

.atozportal .atozportal_onlyone .atozportal_title {
color:#fff;
margin-bottom:1.5em;
}

.atozportal .atozportal_onlyone ul {
display:block;
margin:0 auto;
}
.atozportal .atozportal_onlyone ul li {
width:100%;
margin:0 auto 30px auto;
background:#FCFCFE;
border:1px solid #ccc;
border-radius:30px;
display:flex;
align-items: center;
overflow: hidden;
}
.atozportal .atozportal_onlyone ul li *:last-child {
margin-bottom:0;
}
.atozportal .atozportal_onlyone ul li .atozportal_onlyone_img {
width:45%;
height:auto;
}
.atozportal .atozportal_onlyone ul li .atozportal_onlyone_img img {
object-fit: cover;
width: 100%;
height: 100%
}
.atozportal .atozportal_onlyone ul li .atozportal_onlyone_txt {
width:55%;
padding:50px;
text-align:left;
}
.atozportal .atozportal_onlyone ul li .atozportal_onlyone_txt .atozportal_onlyone_title {
font-size:2.4rem;
line-height:1.5;
font-weight:700;
margin:0 0 .5em 0;
}

/***** AtoZ portalの種類 *****/
.atozportal .atozportal_type {
}
.atozportal .atozportal_type .inner {
}

.atozportal .atozportal_type ul {
display:flex;
flex-wrap:wrap;
}
.atozportal .atozportal_type ul li {
width:calc(100% / 3);
margin:0;
padding:30px 20px;
font-size:2rem;
font-weight:700;
color:#fff;
}
.atozportal .atozportal_type ul li .atozportal_type_title {
font-size:3rem;
line-height:1.3;
font-weight:700;
padding:.1em .5em .2em .5em;
margin:0 auto .5em auto;
border:1px solid;
background:#fff;
border-radius:999px;
}
.atozportal .atozportal_type ul li .atozportal_type_txt {
margin:0 auto 20px auto;
line-height:1.5;
}
.atozportal .atozportal_type ul li .atozportal_type_img {
margin:0 20px 20px 20px;
}

.atozportal .atozportal_type ul li .btnarea {
justify-content: center;
margin: 0 auto;
}
.atozportal .atozportal_type ul li .btnarea a.btnD {
border:2px solid #fff;
font-size:2rem;
font-weight:700;
}
.atozportal .atozportal_type ul li .btnarea a.btnD:hover {
background:#fff;
}

/*intranet*/
.atozportal .atozportal_type ul li.intranet {
background:#139AFF;
}
.atozportal .atozportal_type ul li.intranet .atozportal_type_title {
border:1px solid #139AFF;
color:#139AFF;
}
.atozportal .atozportal_type ul li.intranet .btnarea a.btnD:hover {
color:#139AFF;
}
.atozportal .atozportal_type ul li.intranet .btnarea a.btnD:hover i {
color:#139AFF;
}
/*customer*/
.atozportal .atozportal_type ul li.customer {
background:#FFBC00;
}
.atozportal .atozportal_type ul li.customer .atozportal_type_title {
border:1px solid #FFBC00;
color:#FFBC00;
}
.atozportal .atozportal_type ul li.customer .btnarea a.btnD:hover {
color:#FFBC00;
}
.atozportal .atozportal_type ul li.customer .btnarea a.btnD:hover i {
color:#FFBC00;
}
/*academic*/
.atozportal .atozportal_type ul li.academic {
background:#15BA68;
}
.atozportal .atozportal_type ul li.academic .atozportal_type_title {
border:1px solid #15BA68;
color:#15BA68;
}
.atozportal .atozportal_type ul li.academic .btnarea a.btnD:hover {
color:#15BA68;
}
.atozportal .atozportal_type ul li.academic .btnarea a.btnD:hover i {
color:#15BA68;
}

/*************** ■サービス・製品＞AtoZ portal 下階層 ***************/
.atozportal_lv2 {
}

/***** ページヘッダー *****/
.atozportal_lv2 .pageheader {
}
.atozportal_lv2 .pageheader .inner {
display:flex;
align-items: center;
padding:100px 40px 50px 40px;
}
.atozportal_lv2 .pageheader .atozportal_pageheader_txt {
width:50%;
text-align:left;
font-weight:500;
}
.atozportal_lv2 .pageheader .atozportal_pageheader_txt .page_title {
font-size:5rem;
line-height: 1.5;
font-weight:700;
text-align:left;
margin:0 0 .5em 0;
}
.atozportal_lv2 .pageheader .atozportal_pageheader_txt .atozportal_pageheader_subtitle {
font-size:2rem;
line-height:1.5;
font-weight:700;
margin:0 0 1.5em 0;
}

.atozportal_lv2 .pageheader .atozportal_pageheader_txt ul {
display:flex;
align-items: center;
width: fit-content;
margin:0 0 30px 0;
}
.atozportal_lv2 .pageheader .atozportal_pageheader_txt ul li {
line-height:1.3;
font-weight:700;
padding:1em 1.75em;
margin-right:1em;
border-radius:10px;
text-align:center;
color:#fff;
}
.atozportal_lv2 .pageheader .atozportal_pageheader_img {
width:50%;
padding:0 0 0 20px;
}

/*intranet*/
.atozportal_lv2.intranet .pageheader .atozportal_pageheader_txt ul li {
background:#1B72E4;
}
/*customer*/
.atozportal_lv2.customer .pageheader .atozportal_pageheader_txt ul li {
background:#FFBC00;
}
/*academic*/
.atozportal_lv2.academic .pageheader .atozportal_pageheader_txt ul li {
background:#15BA68;
padding:1em 1em;
}

/***** 導入する利点 *****/
.atozportal_lv2 .atozportal_advantage {
background:#FAFAFC;
}
.atozportal_lv2 .atozportal_advantage .inner {
}

.atozportal_lv2 .atozportal_advantage .atozportal_title {
margin-bottom:2em;
}
.atozportal_lv2 .atozportal_advantage ol {
margin:0 auto;
list-style:none;
width:fit-content;
display:block;
text-align:left;
}
.atozportal_lv2 .atozportal_advantage ol li {
font-size:3.2rem;
line-height:1.5;
font-weight:700;
margin:0 0 .75em 0;
padding:0 0 0 2em;
position:relative;
}
.atozportal_lv2 .atozportal_advantage ol li .atozportal_advantage_number {
position:absolute;
left:0;
}

/*intranet*/
.atozportal_lv2.intranet .atozportal_advantage ol li .atozportal_advantage_number {
color:#1B72E4;
}
/*customer*/
.atozportal_lv2.customer .atozportal_advantage ol li .atozportal_advantage_number {
color:#FFBC00;
}
/*academic*/
.atozportal_lv2.academic .atozportal_advantage ol li .atozportal_advantage_number {
color:#15BA68;
}


/***** 機能 *****/
.atozportal_lv2 .atozportal_function {
}
.atozportal_lv2 .atozportal_function .inner {
width: 980px;
padding:0 40px 100px 40px;
}
.atozportal_lv2 .atozportal_function .inner > ul > li {
width:calc(calc(100% / 3) - 20px);
background:#FCFCFE;
}
.atozportal_lv2 .atozportal_function .inner > ul > li .atozportal_function_title {
font-size:1.8rem;
margin-bottom: 1.25em;
}
.atozportal_lv2 .atozportal_function .inner > ul > li .atozportal_function_img {
margin-bottom: 30px;
}
.atozportal_lv2 .atozportal_function .btnarea {
justify-content: center;
margin-top: 100px;
}
.atozportal_lv2 .atozportal_function .btnarea .btnB {
font-size:2rem;
padding:.75em 3.5em;
}

/*academic*/
.atozportal_lv2.academic .atozportal_function .inner {
width: 1280px;
}
.atozportal_lv2.academic .atozportal_function .inner > ul > li {
width:calc(25% - 20px);
background:#fff;
}


/*************** ■サービス・製品＞利用規約／契約約款一覧 ***************/
.terms {
background:#F9F9FC;
}

/***** ページヘッダー *****/
.terms .pageheader {
}
.terms .pageheader .inner {
width:1080px
}
.terms .pageheader .page_title {
font-size:4.8rem;
line-height: 1.5;
font-weight:700;
text-align:left;
}

/***** 利用規約・契約約款一覧ナビ *****/
.terms .terms_navi {
}
.terms .terms_navi .inner {
width:1080px;
text-align:left;
padding: 0 40px 100px 40px;
}

.terms .terms_navi .terms_navi_title {
font-size:3.6rem;
font-weight:700;
margin:0 0 .5em 0;
}
.terms .terms_navi .btnarea .btnA img {
width:15px;
margin-right:.5em;
}

/*************** ■サービス・製品＞利用規約／契約約款一覧＞AtoZ portal サービス利用規約 ***************/
.terms_detail {
background:#F9F9FC;
}

/***** ページヘッダー *****/
.terms_detail .pageheader {
}
.terms_detail .pageheader .inner {
width:1080px
}
.terms_detail .pageheader .page_title {
font-size:4.8rem;
line-height: 1.5;
font-weight:700;
text-align:left;
margin-bottom:1em;
}
.terms_detail .pageheader .page_lead {
text-align:left;
line-height: 2.375;
}

/***** AtoZ portal サービス利用規約コンテンツ *****/
.terms_detail .terms_detail_cont {
}
.terms_detail .terms_detail_cont .inner {
text-align:left;
padding:0 40px 100px 40px;
}

.terms_detail .terms_detail_cont .terms_detail_block {
background:#fff;
border-radius:8px;
padding:100px 50px 50px 50px;
margin:0 auto 50px auto;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}

.terms_detail .terms_detail_cont .sentence {
margin:0 auto 2em auto;
}
.terms_detail .terms_detail_cont .terms_detail_title {
font-size:3rem;
line-height: 1.5;
font-weight:700;
margin:0 0 1em 0;
text-align:center;
}
.terms_detail .terms_detail_cont .terms_detail_subtitle {
font-size:2rem;
line-height: 1.5;
font-weight:700;
border-bottom:1px solid #CBCBCB;
padding:0 0 .5em 0;
margin:0 0 1em 0;
}

/*************** ■サービス・製品＞KUAS with Linkedin Leaning ***************/
.kuas {
}

/***** ページヘッダー *****/
.kuas .pageheader {
background:#FBF1E2;
}
.kuas .pageheader .inner {
display:flex;
align-items: center;
padding:50px 40px 50px 40px;
}
.kuas .pageheader .kuas_pageheader_txt {
width:50%;
text-align:left;
font-size:2rem;
line-height:1.8;
font-weight:500;
}
.kuas .pageheader .kuas_pageheader_txt .kuas_pageheader_logo {
width:480px;
max-width:100%;
}
.kuas .pageheader .kuas_pageheader_txt .page_title {
font-size:6rem;
line-height: 1.25;
font-weight:700;
text-align:left;
margin:0 0 .5em 0;
}
.kuas .pageheader .kuas_pageheader_txt .page_title small {
display:block;
width:fit-content;
font-size:1.7rem;
line-height:1;
font-weight:700;
background:#0A66C2;
border-radius:999px;
color:#fff;
padding: .4em 2.5em;
margin: 0 0 1em 0;
}

.kuas .pageheader .kuas_pageheader_img {
width:50%;
max-width:500px;
padding:50px 0 0 50px;
}

/***** KUAS with Linkedin Leaning とは？ *****/
.kuas .kuas_about {
}
/*** Aパート ***/
.kuas .kuas_about .kuas_about_A {
background:#23714A;
color:#fff;
}
.kuas .kuas_about .kuas_about_A .inner {
padding:50px 40px;
}
.kuas .kuas_about .kuas_about_A .kuas_about_title {
font-size:6rem;
line-height:1.5;
font-weight:700;
margin:0 auto ;
display:flex;
justify-content: center;
align-items: center;
}
.kuas .kuas_about .kuas_about_A .kuas_about_title small {
font-size:2.4rem;
line-height:1;
display:block;
margin-left:.5em;
}
/*** Bパート ***/
.kuas .kuas_about .kuas_about_B {
background:#EAF6E3;
}
.kuas .kuas_about .kuas_about_B .inner {
padding:50px 40px 100px 40px;
}

.kuas .kuas_about .kuas_about_B .kuas_about_title {
font-size:4rem;
line-height:1.5;
font-weight:700;
color:#289760;
margin-bottom:1em;
}

/* リード */
.kuas .kuas_about .kuas_about_B .kuas_about_lead {
font-size:2rem;
font-weight:500;
margin:0 auto 50px auto
}

/* コンテンツ&サービス */
.kuas .kuas_about .kuas_about_B .contents-service {
background:#fff;
border-radius:16px;
padding:40px 30px;
margin: 0 auto 100px auto;
display:flex;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}

.kuas .kuas_about .kuas_about_B .contents-service .contents-service_head {
margin:0 auto 40px auto;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_head small {
font-size:2rem;
line-height:1.3;
font-weight:700;
color:#fff;
border-radius:999px;
padding: .3em 1em;
margin: 0 auto .5em auto;
width: 100%;
display: block;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_head .contents-service_title {
font-size:3.2rem;
line-height:1.5;
font-weight:700;
margin: 0 auto 1em auto;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_head .contents-service_title sub {
font-size:1.2rem;
font-weight:400;
color:#000!important;
margin-left: .5em;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_head .contents-service_img {
width:370px;
max-width:100%;
margin:0 auto;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_head .note {
font-size:1.2rem;
font-weight:400;
color:#666;
margin:0;
}

.kuas .kuas_about .kuas_about_B .contents-service .contents-service_case {
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_case .contents-service_case_title {
font-size:2rem;
line-height:1.3;
font-weight:700;
color:#fff;
border-radius:0 999px 0 0;
padding: .3em 1em;
margin: 0 0 ;
width:fit-content;
min-width: 270px;
display: block;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_case .contents-service_case_list {
border:2px solid;
padding:20px;
display:flex;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents-service_case .contents-service_case_list ul.dotlist {
margin-bottom:0;
font-size:1.4rem;
}

/*コンテンツ*/
.kuas .kuas_about .kuas_about_B .contents-service .contents {
width:50%;
padding:0 30px;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents .contents-service_head small {
background:#289760;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents .contents-service_head .contents-service_title {
color:#289760;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents .contents-service_case .contents-service_case_title {
background:#289760;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents .contents-service_case .contents-service_case_list {
border-color:#289760;
}
.kuas .kuas_about .kuas_about_B .contents-service .contents .contents-service_case .contents-service_case_list ul li:before {
color:#289760;
}
/*サービス*/
.kuas .kuas_about .kuas_about_B .contents-service .service {
width:50%;
padding:0 30px;
}
.kuas .kuas_about .kuas_about_B .contents-service .service .contents-service_head small {
background:#0A66C2;
}
.kuas .kuas_about .kuas_about_B .contents-service .service .contents-service_head .contents-service_title {
color:#0A66C2;
}
.kuas .kuas_about .kuas_about_B .contents-service .service .contents-service_case .contents-service_case_title {
background:#0A66C2;
}
.kuas .kuas_about .kuas_about_B .contents-service .service .contents-service_case .contents-service_case_list {
border-color:#0A66C2;
justify-content: space-between;
}
.kuas .kuas_about .kuas_about_B .contents-service .service .contents-service_case .contents-service_case_list ul.dotlist {
width:calc((100% - 1em) / 2);
}
.kuas .kuas_about .kuas_about_B .contents-service .service .contents-service_case .contents-service_case_list ul li:before {
color:#0A66C2;
}

/* Way? */
.kuas .kuas_about .kuas_about_B .way {
background:#FBF1E2;
border-radius:16px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
margin: 120px auto 100px auto;
}
.kuas .kuas_about .kuas_about_B .way .way_title {
display:flex;
align-items: center;
background:#fff;
border-radius:0 999px 999px 0;
padding:20px 50px 20px 0;
margin: 0 0 -60px 0;
width: fit-content;
transform: translateY(-50%);
}
.kuas .kuas_about .kuas_about_B .way .way_title .way_title_txt {
font-size:4rem;
font-weight:700;
color:#289760;
border-bottom:4px solid #92C530;
padding-left:2em;
margin-right:40px;
}
.kuas .kuas_about .kuas_about_B .way .way_title .way_title_logo {
width:475px;
max-width:100%;
}

.kuas .kuas_about .kuas_about_B .way .kuas_recurrent {
padding:50px 80px;
}
.kuas .kuas_about .kuas_about_B .way .kuas_recurrent .kuas_recurrent_title {
font-size:2.6rem;
line-height:1.5;
font-weight:700;
background:#fff;
border:2px solid #289760;
border-radius:999px;
color:#289760;
padding: .2em 1em;
margin:0 auto 1.5em auto;
}
.kuas .kuas_about .kuas_about_B .way .kuas_recurrent .kuas_recurrent_img {
width:730px;
max-width:100%;
margin:0 auto 1.5em auto;
}
.kuas .kuas_about .kuas_about_B .way .kuas_recurrent .kuas_recurrent_txt {
width:730px;
max-width:100%;
margin:0 auto;
text-align:left;
}

.kuas .kuas_about .kuas_about_B .way .kuas_kyotouniv {
padding:50px 80px;
background:#fff;
border-radius:0 0 16px 16px;
}
.kuas .kuas_about .kuas_about_B .way .kuas_kyotouniv .kuas_kyotouniv_logo {
width:435px;
max-width:100%;
margin: 0 auto 40px auto;
}
.kuas .kuas_about .kuas_about_B .way .kuas_kyotouniv .kuas_kyotouniv_img {
width:730px;
max-width:100%;
margin:0 auto 1.5em auto;
}
.kuas .kuas_about .kuas_about_B .way .kuas_kyotouniv .kuas_kyotouniv_txt {
width:730px;
max-width:100%;
margin:0 auto;
text-align:left;
}
.kuas .kuas_about .kuas_about_B .way .kuas_kyotouniv .kuas_kyotouniv_txt .kuas_kyotouniv_title {
font-size:2.4rem;
line-height:1.5;
font-weight:700;
color:#289760;
text-align:center;
margin:0 auto 1em auto;
}

/* Linked in Learning */
.kuas .kuas_about .kuas_about_B .linked-in-learning {
background:#fff;
border-radius:16px;
padding:50px 80px;
margin: 0 auto ;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_logo {
width:565px;
max-width:100%;
margin:0 auto 10px auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_title {
font-size:2.6rem;
line-height:1.5;
font-weight:700;
background:#fff;
border:2px solid #0A66C2;
border-radius:999px;
color:#0A66C2;
padding: .2em 1em;
margin:0 auto 1em auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead {
margin:0 auto 50px auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead .linked-in-learning_lead_title {
font-size:2.6rem;
line-height:1.5;
font-weight:700;
margin:0 auto 1.5em auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead .linked-in-learning_lead_img {
width:545px;
max-width:100%;
margin:0 auto 20px auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead dl {
display:flex;
justify-content: space-between;
margin:0 auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead dl div {
width:280px;
max-width: calc(100% / 3);
margin: 0 20px;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead dl div dt {
font-size:2rem;
line-height:1.5;
font-weight:700;
background:#0A66C2;
color:#fff;
text-align:left;
padding: .2em .5em;
margin-bottom: .75em;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead dl div dd {
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead .note {
text-align:right;
color:#B4B4B4;
font-size:1.4rem;
}

.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_feature {
text-align:left;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_feature dl {
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_feature dl div {
margin: 0 auto 50px auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_feature dl dt {
font-size:3rem;
line-height:1.5;
font-weight:700;
color:#0A66C2;
padding:0 1em;
margin:0 0 .5em 0;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_feature dl dt small {
font-size:2rem;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_feature dl dt .number {
display:block;
font-size:6.4rem;
color:#EBF1F7;
font-weight:900;
text-align:center;
margin:0 auto .25em auto;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_feature dl dd {
}




/*************** ■サービス・製品＞Liferay ***************/
.liferay {
}

.liferay .liferay_title {
font-size:3.6rem;
line-height:1.5;
font-weight:700;
color:#1B72E4;

border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin:0 auto 1.5em auto;
padding: 0 0 .5em 0;
}

/***** ページヘッダー *****/
.liferay .pageheader {
display:block;
}
.liferay .pageheader {
background:url(../images/liferay_pageheader_bg.jpg) no-repeat center center;
background-size:cover;
}
.liferay .pageheader .inner {
padding:80px 40px;
}
.liferay .pageheader .page_title {
font-size:4rem;
line-height:1.5;
font-weight:700;
color:#fff;
text-align:left;
margin: 0 0 .5em 0;
}
.liferay .pageheader .page_lead {
font-size:2.4rem;
line-height:1.5;
text-align:left;
color:#fff;
}

/***** 導入 *****/
.liferay .liferay_about {
}
.liferay .liferay_about .inner {
}
.liferay .liferay_about .liferay_about_title {
font-size:4.8rem;
line-height:1.3;
font-weight:700;
text-align: left;
color:#fff;
background:#1B72E4;
display:block;
width:fit-content;
padding:.1em 50px .2em 50px;
margin:0 0 1em 0;
}
.liferay .liferay_about dl {
display:flex;
justify-content: center;
align-items: center;
}
.liferay .liferay_about dl dt {
width:350px;
}
.liferay .liferay_about dl dd {
width:fit-content;
text-align:left;
flex: 1;
}
.liferay .liferay_about dl dd *:last-child {
margin-bottom:0;
}
.liferay .liferay_about dl dd .liferay_about_subtitle {
font-size:2.4rem;
line-height:1.6;
font-weight:700;
color:#1B72E4;
margin:0 0 1em 0;
}

/***** このようなお悩みはありませんか？ *****/
.liferay .liferay_field {
background:#E5EEFE;
}
.liferay .liferay_field .inner {
}
.liferay .liferay_field ul {
background:#fff;
border-radius:8px;
padding: 30px;
width: 760px;
margin: auto;
max-width: 100%;
text-align: left;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
display:flex;
flex-wrap:wrap;
}
.liferay .liferay_field ul li {
border-bottom:1px solid #BBB;
padding:1em;
font-weight:700;
line-height:1.5;
position:relative;
padding: 18px 18px 18px 65px;
width: calc((100% - 50px) / 2);
margin: 0 50px 0 0;
}
.liferay .liferay_field ul li:nth-child(even) {
margin-right:0;
}
.liferay .liferay_field ul li:before {
content:"";
width:24px;
height:24px;
display:block;
background:url(../images/ic_circle-check.svg) no-repeat center center;
background-size:24px 24px;
position:absolute;
top:50%;
left:18px;
transform: translateY(-50%);
}

/***** Liferayが選ばれる理由 *****/
.liferay .liferay_feature {
background:#E5EEFE;
}
.liferay .liferay_feature .inner {
padding:0 40px 100px 40px;
}
.liferay .liferay_feature .solution_field_title {
font-size:4rem;
font-weight:700;
color:#1B72E4;

border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin:0 auto 1.5em auto;
}

.liferay .liferay_feature .liferay_feature_wrap {
display:flex;
flex-wrap:wrap;
width: 1080px;
max-width:100%;
margin: auto;
}
.liferay .liferay_feature .liferay_feature_wrap .block {
width:calc(50% - 20px);
margin:10px;
background:#fff;
border-radius:8px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}
.liferay .liferay_feature .liferay_feature_wrap .block .liferay_feature_block_title {
font-size:2.4rem;
font-weight:700;
line-height:1.5;
color:#fff;
background:#1B72E4;
padding:.25em 30px;
margin-top: 20px;
text-align:left;
display:flex;
align-items: center;
}
.liferay .liferay_feature .liferay_feature_wrap .block .liferay_feature_block_title .number {
border-radius:50%;
background:#fff;
color:#1B72E4;
width:36px;
height:36px;
display:flex;
justify-content: center;
align-items: center;
flex: 0 0 36px;
margin-right:1em;
}

.liferay .liferay_feature .liferay_feature_wrap .block .liferay_feature_block_txt {
font-size:1.4rem;
margin:30px;
text-align:left;
}
.liferay .liferay_feature .liferay_feature_wrap .block .liferay_feature_block_txt .liferay_feature_block_subtitle {
font-size: 2rem;
line-height: 1.5;
font-weight: 700;
margin:1em 0;
color:#1B72E4;
}

/***** エイジングについて *****/
.liferay .liferay_azing {
}
/*** Aパート ***/
.liferay .liferay_azing .liferay_azing_A {
background:#1B72E4;
color:#fff;
}
.liferay .liferay_azing .liferay_azing_A .inner {
padding:40px;
}
.liferay .liferay_azing .liferay_azing_A .liferay_azing_title {
font-size:4.8rem;
font-weight:700;
margin:0 auto ;
}
.liferay .liferay_azing .liferay_azing_A .liferay_azing_title .en {
font-size:1.6rem;
line-height:1;
font-weight:500;
display:block;
}
/*** Bパート ***/
.liferay .liferay_azing .liferay_azing_B {
}
.liferay .liferay_azing .liferay_azing_B .inner {
display:flex;
flex-wrap:wrap;
}

/* Liferay オフィシャルパートナー */
.liferay .liferay_azing .liferay_azing_B .official_partner {
display:block;
width:100%;
margin: 0 auto 100px auto;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_lead {
margin:0 auto 50px auto;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_lead dl {
display:flex;
align-items: center;
justify-content: center;
margin-bottom:0;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_lead dl dt {
width:350px;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_lead dl dd {
width:fit-content;
text-align:left;
padding:0 0 0 30px;
flex:1;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_point {
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_point dl {
display:flex;
justify-content: space-between;
margin-bottom:0;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_point dl div {
background:#E5EEFE;
border-radius:8px;
width:calc((100% - 60px) / 3);
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_point dl dt {
font-size:2rem;
line-height:1.5;
font-weight:700;
border-bottom:2px solid #fff;
padding:20px;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_point dl dt .number {
display:block;
font-size:1.6rem;
color:#1B72E4;
margin: 0 auto .5em auto;
}
.liferay .liferay_azing .liferay_azing_B .official_partner .official_partner_point dl dd {
font-size:1.4rem;
padding:20px;
text-align:left;
}

/* 受賞実績 */
.liferay .liferay_azing .liferay_azing_B .award {
display:block;
width:100%;
margin: 0 auto 100px auto;
}
.liferay .liferay_azing .liferay_azing_B .award dl {
display:flex;
width:1100px;
max-width:100%;
margin:auto;
}
.liferay .liferay_azing .liferay_azing_B .award dl dt {
width:350px;
}
.liferay .liferay_azing .liferay_azing_B .award dl dd {
width:calc(100% - 350px);
text-align:left;
padding:0 0 0 30px;
}
.liferay .liferay_azing .liferay_azing_B .award dl dd *:last-child {
margin-bottom:0;
}
.liferay .liferay_azing .liferay_azing_B .award dl dd .award_title {
font-size:2.4rem;
font-weight:700;
color:#1B72E4;
}

/* 導入実績 */
.liferay .liferay_azing .liferay_azing_B .casestudy {
display:block;
width:100%;
margin: 0 auto ;
}
.liferay .liferay_azing .liferay_azing_B .casestudy ul {
display:flex;
justify-content: center;
flex-wrap: wrap;
}
.liferay .liferay_azing .liferay_azing_B .casestudy ul li {
margin:20px;
}
.liferay .liferay_azing .liferay_azing_B .casestudy ul li img {
width:auto;
max-height: 60px;
}



/*************** ■ソリューション ***************/
.solution {
background: #F9F9FC;
}
.solution.it-consulting ,
.solution.it-solution {
background:#fff;
}

/***** ページヘッダー *****/
.solution .pageheader {
display:block;
background: linear-gradient(90deg, #02A7FF, #B9FFFF);
}
.solution.it-consulting .pageheader {
background:url(../images/it-consulting_pageheader_bg.jpg) no-repeat center center;
background-size:cover;
}
.solution.it-solution .pageheader {
background:url(../images/it-solution_pageheader_bg.jpg) no-repeat center center;
background-size:cover;
}
.solution .pageheader .inner {
padding:80px 40px;
}
.solution .pageheader .page_title {
font-size: 4.8rem;
font-weight: 400;
color: #fff;
text-align: left;
}
.solution.it-consulting .pageheader .page_title ,
.solution.it-solution .pageheader .page_title {
font-size:4rem;
font-weight:700;
}
.solution .pageheader .page_lead {
font-size:2.4rem;
line-height:1.5;
text-align:left;
color:#fff;
}

/***** ソリューションナビ *****/
.solution .solution_navi {
}
.solution .solution_navi .inner {
}

.solution .solution_navi ul {
margin:0 auto;
}
.solution .solution_navi ul li {
margin:0 auto 40px auto;
}
.solution .solution_navi ul li a {
display:flex;
align-items: center;
text-decoration:none;
background:#fff;
border-radius:20px;
padding:50px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
transition: transform 0.2s ease;
}
.solution .solution_navi ul li a:hover {
transform: scale(1.01);
transition: transform 0.2s ease;
}
.solution .solution_navi ul li .solution_navi_img {
width:310px;
max-width:40%;
}
.solution .solution_navi ul li .solution_navi_txt {
width:calc(100% - 310px);
min-width: 60%;
text-align:left;
padding:0 0 0 30px;
}
.solution .solution_navi ul li .solution_navi_txt .solution_navi_txt_title {
font-size:3.6rem;
font-weight:900;
line-height: 1;
display:flex;
align-items: flex-start;
margin-bottom:.5em;
}
.solution .solution_navi ul li .solution_navi_txt .solution_navi_txt_title .en {
font-size:1.4rem;
margin-left: 1em;
flex: 1;
}
.solution .solution_navi ul li .solution_navi_txt *:last-child {
margin-bottom:0;
}

/***** 導入 *****/
.solution .solution_about {
}
.solution .solution_about .inner {
}
.solution .solution_about .solution_about_title {
font-size:4.8rem;
line-height:1.3;
font-weight:700;
text-align: left;
color:#fff;
background:#1B72E4;
display:block;
width:fit-content;
padding:.1em 4em .2em 50px;
margin:0 0 .5em 0;
}
.solution .solution_about .solution_about_txt {
padding:0 50px;
text-align:left;
margin:0 0 100px 0;
}
.solution .solution_about .solution_about_txt .solution_about_subtitle {
font-size:2.4rem;
line-height:1.6;
font-weight:700;
color:#1B72E4;
margin:0 0 1em 0;
}

/* solution_about_box */
.solution .solution_about .solution_about_box {
background:#fff;
border:6px solid #F2F2F2;
border-radius:20px;
padding:50px;
display:flex;
justify-content: space-between;
align-items: center;
}
.solution .solution_about .solution_about_box .solution_about_box_lead {
width:45%;
font-size:2rem;
text-align:left;
padding: 0 50px 0 0;
}
.solution .solution_about .solution_about_box .solution_about_box_lead *:last-child {
margin-bottom:0;
}
.solution .solution_about .solution_about_box .solution_about_box_lead .solution_about_box_lead_title {
font-size:4.8rem;
line-height:1.5;
font-weight:700;
color:#1B72E4;
margin:0 0 .5em 0;
}
.solution .solution_about .solution_about_box .solution_about_box_cont {
width:55%;
text-align:left;
}
.solution .solution_about .solution_about_box .solution_about_box_cont dl {
font-size:1.8rem;
line-height:1.5;
margin-bottom:0;
}
.solution .solution_about .solution_about_box .solution_about_box_cont dl div {
display:flex;
flex-wrap:wrap;
align-items:center;
margin:1em 0;
}
.solution .solution_about .solution_about_box .solution_about_box_cont dl dt {
font-weight:500;
color:#fff;
background:#1B72E4;
border-radius:10px;
display:block;
width: 42%;
padding: .25em;
text-align: center;
}
.solution .solution_about .solution_about_box .solution_about_box_cont dl dd {
font-weight:700;
width:58%;
padding: 0 0 0 1em;
}

/***** このようなお悩みはありませんか？ *****/
.solution .solution_probrem {
background:#E5EEFE;
}
.solution .solution_probrem .inner {
}
.solution .solution_probrem .solution_probrem_title {
font-size:3.6rem;
font-weight:700;
color:#1B72E4;

border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin:0 auto 1.5em auto;
}
.solution .solution_probrem ul {
background:#fff;
border-radius:8px;
padding: 30px;
width: 760px;
margin: auto;
max-width: 100%;
text-align: left;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}
.solution .solution_probrem ul li {
border-bottom:1px solid #BBB;
padding:1em;
font-weight:700;
line-height:1.5;
position:relative;
padding: 18px 18px 18px 65px;
}
.solution .solution_probrem ul li:last-child {
border:0;
}
.solution .solution_probrem ul li:before {
content:"";
width:24px;
height:24px;
display:block;
background:url(../images/ic_circle-check.svg) no-repeat center center;
background-size:24px 24px;
position:absolute;
top:50%;
left:18px;
transform: translateY(-50%);
}

/***** ITコンサルティングの進め方 *****/
.solution .solution_approach {
}
/*** Aパート ***/
.solution .solution_approach .solution_approach_A {
background:#1B72E4;
color:#fff;
}
.solution .solution_approach .solution_approach_A .inner {
}
.solution .solution_approach .solution_approach_A .solution_approach_title {
font-size:4.8rem;
font-weight:700;
margin:0 auto .5em auto;
}
.solution .solution_approach .solution_approach_A .solution_approach_title small {
font-size:2rem;
line-height: 1;
font-weight:400;
display:block;
width:fit-content;
background:#fff;
color:#1B72E4;
margin:auto;
padding: .5em 1em;
}
.solution .solution_approach .solution_approach_A .solution_approach_img {
margin:100px auto 0 auto;
}
/*** Bパート ***/
.solution .solution_approach .solution_approach_B {
background:#E5EEFE;
}
.solution .solution_approach .solution_approach_B .inner {
display:flex;
flex-wrap:wrap;
width: 1080px;
}

.solution .solution_approach .solution_approach_B .block {
width:calc(50% - 20px);
margin:10px;
background:#fff;
border-radius:8px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}
.solution .solution_approach .solution_approach_B .block .solution_approach_block_title {
font-weight:700;
}
.solution .solution_approach .solution_approach_B .block .solution_approach_block_title small {
font-size:1.6rem;
line-height:1;
color:#fff;
background:#1B72E4;
border-radius:26px;
padding:.25em 1em;
margin:20px;
display:block;
width:fit-content;
}
.solution .solution_approach .solution_approach_B .block .solution_approach_block_title big {
font-size:2.4rem;
line-height:1.5;
display:block;
color:#fff;
background:#1B72E4;
padding:.25em 20px;
text-align:left;
}
.solution .solution_approach .solution_approach_B .block ul {
line-height:1.5;
font-weight:500;
margin:20px;
text-align:left;
}
.solution .solution_approach .solution_approach_B .block ul li {
margin:0 auto 1em auto;
position:relative;
padding:0 0 0 2em;
}
.solution .solution_approach .solution_approach_B .block ul li:before {
font-family: "Font Awesome 6 Free";
content: "\f00c";
font-weight:900;
position:absolute;
left:0;
color:#1B72E4;
}

/***** エイジングが選ばれる理由 *****/
.solution .solution_feature {
}
/*** Aパート ***/
.solution .solution_feature .solution_feature_A {
background:#1B72E4;
color:#fff;
}
.solution .solution_feature .solution_feature_A .inner {
padding:40px;
}
.solution .solution_feature .solution_feature_A .solution_feature_title {
font-size:4.8rem;
font-weight:700;
margin:0 auto .25em auto;
}
/*** Bパート ***/
.solution .solution_feature .solution_feature_B {
background:#E5EEFE;
}
.solution .solution_feature .solution_feature_B .inner {
display:flex;
flex-wrap:wrap;
}
.solution .solution_feature .solution_feature_B ol {
list-style:none;
text-align:left;
}
.solution .solution_feature .solution_feature_B ol li {
padding:40px 100px;
margin: 0;
border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 1px 0;
border-style: solid;
display:flex;
justify-content: space-between;
}
.solution .solution_feature .solution_feature_B ol li:last-child {
border:0;
}
.solution .solution_feature .solution_feature_B ol li .solution_feature_number {
font-size:2.4rem;
font-weight:700;
line-height:36px;
display:flex;
justify-content: center;
align-items: center;
width:36px;
height:36px;
background:#fff;
color:#1B72E4;
border-radius:50%;
}
.solution .solution_feature .solution_feature_B ol li .solution_feature_cont {
width:calc(100% - 55px);
font-weight:500;
}
.solution .solution_feature .solution_feature_B ol li .solution_feature_cont *:last-child {
margin-bottom:0;
}
.solution .solution_feature .solution_feature_B ol li .solution_feature_cont .solution_feature_subtitle {
font-size:2.4rem;
line-height:1.5;
font-weight:700;
margin-bottom:1em;
}

/***** 必要なところから、必要な分だけ *****/
.solution .solution_case {
}
.solution .solution_case .inner {
}
.solution .solution_case .solution_case_title {
font-size:4rem;
font-weight:700;
color:#1B72E4;

border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin:0 auto 1.5em auto;
}

.solution .solution_case .solution_case_box {
width:1000px;
max-width:100%;
background:#fff;
border-radius:8px;
margin:0 auto;
padding:20px 0 ;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}
.solution .solution_case .solution_case_box .solution_case_box_title {
font-size:2.4rem;
font-weight:700;
line-height:1.5;
display:block;
color:#fff;
background:#1B72E4;
padding:.25em 20px;
margin: 0;
text-align:left;
}
.solution .solution_case .solution_case_box dl {
font-size:1.6rem;
line-height:1.5;
margin:30px 30px 0 30px;
}
.solution .solution_case .solution_case_box dl div {
display:flex;
flex-wrap:wrap;
align-items:center;
margin:1em 0;
text-align: left;
}
.solution .solution_case .solution_case_box dl dt {
font-weight:700;
color:#fff;
background:#1B72E4;
border-radius:30px;
display:block;
width: 200px;
padding: .25em 1.5em;
}
.solution .solution_case .solution_case_box dl dd {
font-weight:500;
width:calc(100% - 200px);
padding: 0 0 0 1em;
}

/***** ソリューション領域 *****/
.solution .solution_field {
}
.solution .solution_field .inner {
}
.solution .solution_field .solution_field_title {
font-size:4rem;
font-weight:700;
color:#1B72E4;

border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin:0 auto 1.5em auto;
}

.solution .solution_field .solution_field_wrap {
display:flex;
flex-wrap:wrap;
width: 1080px;
max-width:100%;
margin: auto;
}
.solution .solution_field .solution_field_wrap .block {
width:calc(50% - 20px);
margin:10px;
background:#fff;
border-radius:8px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}
.solution .solution_field .solution_field_wrap .block .solution_field_block_title {
font-size:2.4rem;
font-weight:700;
line-height:1.5;
display:block;
color:#fff;
background:#1B72E4;
padding:.25em 20px;
margin-top: 20px;
text-align:left;
}
.solution .solution_field .solution_field_wrap .block ul {
line-height:1.5;
font-weight:500;
margin:20px;
text-align:left;
}
.solution .solution_field .solution_field_wrap .block ul li {
margin:0 auto 1em auto;
position:relative;
padding:0 0 0 2em;
}
.solution .solution_field .solution_field_wrap .block ul li:before {
font-family: "Font Awesome 6 Free";
content: "\f00c";
font-weight:900;
position:absolute;
left:0;
color:#1B72E4;
}

.solution .solution_field .solution_field_wrap .block .solution_field_block_txt {
font-size:1.4rem;
margin:20px;
padding:30px 0 10px 0;
text-align:left;
border-top:1px solid #D8D8D8;
}
.solution .solution_field .solution_field_wrap .block .solution_field_block_txt .btnarea {
margin:0;
justify-content: flex-end;
}
.solution .solution_field .solution_field_wrap .block .solution_field_block_txt .solution_field_block_subtitle {
font-size: 1.6rem;
line-height: 1;
font-weight: 700;
background: rgb(229, 238, 254);
border-radius: 30px;
display: block;
width: fit-content;
padding: 0.5em 1.5em;
margin:0 0 1em 0;
}
.solution .solution_field .solution_field_wrap .block .solution_field_block_txt p {
margin:0 1.5em .5em 1.5em;
}


/***** ご相談の流れ *****/
.solution .solution_flow {
}
.solution .solution_flow .inner {
padding: 0 40px 100px 40px;
}
.solution .solution_flow .solution_flow_title {
font-size:4rem;
font-weight:700;
color:#1B72E4;

border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin:0 auto 1.5em auto;
}

.solution .solution_flow ol {
display:flex;
list-style: none;
width:1080px;
max-width:100%;
margin: 0 auto;
}
.solution .solution_flow ol li {
width:calc((100% - 90px) / 4);
margin:0 30px 0 0;
position:relative;
background:#E5EEFE;
}
.solution .solution_flow ol li:last-child {
margin:0;
}
.solution .solution_flow ol li:after {
content:"";
width:10px;
height:20px;
display:block;
background:url(../images/ic_caret-right.svg) no-repeat center center;
background-size:10px 20px;
position:absolute;
right:-20px;
top: 50%;
transform: translateY(-50%);
}
.solution .solution_flow ol li:last-child:after {
display:none;
}
.solution .solution_flow ol li dl {
margin:0;
}
.solution .solution_flow ol li dl dt {
position:relative;
background:#1B72E4;
color:#fff;
padding:10px;
}
.solution .solution_flow ol li dl dt .solution_flow_head_free {
position:absolute;
left:8px;
top:8px;
background:#fff;
display:inline-block;
font-weight:700;
line-height:1;
color:#1B72E4;
padding:.25em .5em;
}
.solution .solution_flow ol li dl dt .solution_flow_head_number {
font-size:3.2rem;
line-height: 1.5;
font-weight:700;
margin: 0 auto;
}
.solution .solution_flow ol li dl dt .solution_flow_head_title {
font-weight:700;
}
.solution .solution_flow ol li dl dd {
padding:20px;
text-align:left;
font-size:1.4rem;
line-height:1.7;
}

/***** まずはお気軽にご相談ください *****/
.solution .solution_cta {
background:#E5EEFE;
}
.solution .solution_cta .inner {
width:100%;
padding:100px 0 150px 0;
}

.solution .solution_cta .solution_cta_title {
font-size:3.6rem;
font-weight:700;
margin:0 40px 1.5em 40px;
}

.solution .solution_cta .solution_cta_wrap {
background:#fff;
}
.solution .solution_cta .solution_cta_wrap .inner {
padding:50px 40px;
display:flex;
align-items: center;
width:1280px;
}
.solution .solution_cta .solution_cta_wrap .solution_cta_txt {
width:60%;
text-align:left;
font-size:2rem;
line-height:1.5;
font-weight:700;
padding:0 50px 0 0;
}
.solution .solution_cta .solution_cta_wrap .solution_cta_txt > *:last-child {
margin-bottom:0;
}
.solution .solution_cta .solution_cta_wrap .solution_cta_txt .solution_cta_subtitle {
font-size:3rem;
line-height: 1.5;
font-weight:700;
color:#1B72E4;
margin: 0 0 .5em 0;
}
.solution .solution_cta .solution_cta_wrap .solution_cta_txt ul {
display:flex;
flex-wrap:wrap;
margin: 0 0 .5em 0;
}
.solution .solution_cta .solution_cta_wrap .solution_cta_txt ul li {
font-size:1.6rem;
line-height:1;
font-weight:400;
color:#333;
background:#E5EEFE;
border-radius:30px;
display:block;
width: fit-content;
padding:.5em 1.5em;
margin:.5em 1em .5em 0;
}
.solution .solution_cta .solution_cta_wrap .solution_cta_img {
width:40%;
}

/*************** ■企業情報 ***************/
.company {
background:#F9F9FC;
}

/***** ページヘッダー *****/
.company .pageheader {
display:none;
display:block;
background:linear-gradient(90deg, #02A7FF, #B9FFFF);
}
.company .pageheader .inner {
padding:80px 40px;
}
.company .pageheader .page_title {
font-size:4.8rem;
font-weight:400;
color:#fff;
text-align:left;
}

/***** 企業情報ナビ *****/
.company .company_navi {
}
.company .company_navi .inner {
}

.company .company_navi ul {
margin:0 auto;
}
.company .company_navi ul li {
margin:0 auto 40px auto;
}
.company .company_navi ul li a {
display:flex;
align-items: center;
text-decoration:none;
background:#fff;
border-radius:20px;
padding:50px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
transition: transform 0.2s ease;
}
.company .company_navi ul li a:hover {
transform: scale(1.01);
transition: transform 0.2s ease;
}
.company .company_navi ul li .company_navi_img {
width:310px;
max-width:40%;
}
.company .company_navi ul li .company_navi_txt {
width:calc(100% - 310px);
min-width: 60%;
text-align:left;
padding:0 0 0 30px;
}
.company .company_navi ul li .company_navi_txt .company_navi_txt_title {
font-size:3.6rem;
font-weight:900;
line-height: 1;
display:flex;
align-items: flex-start;
margin-bottom:.5em;
}
.company .company_navi ul li .company_navi_txt .company_navi_txt_title .en {
font-size:1.4rem;
margin-left: 1em;
flex: 1;
}
.company .company_navi ul li .company_navi_txt *:last-child {
margin-bottom:0;
}


/*************** ■会社概要・アクセス ***************/
.company_lv2 {
background:#F9F9FC;
}

/***** ページヘッダー *****/
.company_lv2 .pageheader {
}
.company_lv2 .pageheader .inner {
}
.company_lv2 .pageheader .page_title {
font-size:6.4rem;
line-height: 1;
font-weight:900;
text-align:left;
display: flex;
align-items: flex-start;
}
.company_lv2 .pageheader .page_title .en {
font-size:1.6rem;
margin-left:1em;
}

/***** 会社概要・アクセスコンテンツ *****/
.company_lv2 .company_lv2_cont {
}
.company_lv2 .company_lv2_cont .inner {
padding:0 40px 100px 40px;
}

.company_lv2 .company_lv2_cont dl {
text-align:left;
}
.company_lv2 .company_lv2_cont dl > div {
border-bottom:1px solid #E4E4E4;
width:100%;
padding:0 0 30px 0;
margin:0 0 30px 0;
display:flex;
flex-wrap:wrap;
}
.company_lv2 .company_lv2_cont dl dt {
font-weight:700;
width:30%;
padding:0 0 0 5%;
}
.company_lv2 .company_lv2_cont dl dd {
width:70%;
}
/* 拠点 */
.company_lv2 .company_lv2_cont dl dd dl.base {
margin:0;
}
.company_lv2 .company_lv2_cont dl dd dl.base dt {
width:17%;
padding:0 ;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd {
width:83%;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd .address {
display:flex;
justify-content: space-between;
align-items: center;
margin:0 0 1.5em 0;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd .address .map {
margin-left:30px;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd .address .map img {
width:36px;
max-width: 36px;
height:36px;
display:block;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd .access {
margin:1.5em 0 1.5em 1.5em;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd .googlemap {
width:100%;
height:0;
padding-top:75%;

position: relative;
margin:0 0 1.5em 0;
overflow: hidden;
z-index:1;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd .googlemap iframe,
.company_lv2 .company_lv2_cont dl dd dl.base dd .googlemap object,
.company_lv2 .company_lv2_cont dl dd dl.base dd .googlemap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.company_lv2 .company_lv2_cont dl dd dl.base dd .block {
margin:0 0 1.5em 0;
}
.company_lv2 .company_lv2_cont dl dd dl.base dd .block .office {
font-weight:700;
}
.company_lv2 .company_lv2_cont dl dd dl.base > div:last-child {
border-bottom:0;
margin-bottom: 0;
padding-bottom: 0;
}
/* 横並びリスト */
.company_lv2 .company_lv2_cont dl dd ul.vertical {
display:flex;
flex-wrap:wrap;
}
.company_lv2 .company_lv2_cont dl dd ul.vertical li {
margin-right:2em;
}
/* 縦並びリスト */
.company_lv2 .company_lv2_cont dl dd ul.horizontal {
}


/*************** ■企業理念 ***************/
.philosophy {
}

/***** ページヘッダー *****/
.philosophy .pageheader {
background:url(../images/philosophy_pageheader_bg.png) no-repeat center center;
background-size:cover;
position:relative;
}
/*.philosophy .pageheader:after {
content:"";
position:absolute;
bottom:0;
background:url(../images/philosophy_pageheader_bg_bottom.png) no-repeat center center;
background-size:cover;
width:100%;
height: 0;
padding-top: calc((85 * 100%) / 1920);
}*/
.philosophy .pageheader .inner {
}

.philosophy .pageheader .page_title {
font-size:6.4rem;
line-height: 1;
font-weight:900;
text-align:left;
display: flex;
align-items: flex-start;
}
.philosophy .pageheader .page_title .en {
font-size:1.6rem;
margin-left:1em;
}

.philosophy .pageheader .slogan {
margin:30px auto;
}
.philosophy .pageheader .slogan dl {
line-height:1.4;
}
.philosophy .pageheader .slogan dl dt {
font-size:2.4rem;
position:relative;
margin:0 auto 1em auto;
}
.philosophy .pageheader .slogan dl dt:after {
content:"";
position:absolute;
bottom:0;
left:0;
right:0;
margin:auto;
width:6em;
border-bottom:1px solid #000;
}
.philosophy .pageheader .slogan dl dd {
font-size:3.2rem;
margin:0 auto 1.5em auto;
}

.philosophy .pageheader .pageheader_bottom {
width:100%;
margin: 0 0 -1px 0;
}
.philosophy .pageheader .pageheader_bottom .pc {
display:block;
}
.philosophy .pageheader .pageheader_bottom .sp {
display:none;
}

/***** メッセージ *****/
.philosophy .message {
background:#fff;
}
.philosophy .message .inner {
width:1080px;
text-align:left;
}
.philosophy .message .message_title {
font-size:6.4rem;
line-height:1.5;
font-weight:900;
margin-bottom:20px;
}
.philosophy .message .message_subtitle {
font-size:3.2rem;
font-weight:400;
margin-bottom:40px;
}
.philosophy .message .message_40th_img {
text-align:center;
margin-bottom:50px;
}
.philosophy .message .message_txt {
line-height:2.375;
}

/***** MVV *****/
.philosophy .mvv {
background:#E5EEFF;
position:relative;
}
.philosophy .mvv:after {
content:"";
position:absolute;
top:0;
background:url(../images/mvv_bg_top.png) no-repeat center center;
background-size:cover;
width:100%;
height: 0;
padding-top: calc((99 * 100%) / 1920);
}
.philosophy .mvv .inner {
width:1080px;
text-align:left;
padding:200px 40px;
}

.philosophy .mvv .mvv_wrap {
display:flex;
justify-content: space-between;
align-items: center;
}
.philosophy .mvv .mvv_wrap .mvv_txt {
width:calc(100% / 3 * 2);
padding-right:50px;
order:0;
}
.philosophy .mvv .mvv_wrap .mvv_txt dl {
}
.philosophy .mvv .mvv_wrap .mvv_txt dl dt {
font-size:3.2rem;
font-weight:700;
display:inline-block;
}
.philosophy .mvv .mvv_wrap .mvv_txt dl .mvv_mission dt {
background: linear-gradient(90deg, #F04E46, #FFBC00);
background: -webkit-linear-gradient(0deg, #F04E46, #FFBC00);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.philosophy .mvv .mvv_wrap .mvv_txt dl .mvv_vision dt {
color:#FFBC00;
}
.philosophy .mvv .mvv_wrap .mvv_txt dl .mvv_values dt {
background: linear-gradient(90deg, #27B66B, #317BFF);
background: -webkit-linear-gradient(0deg, #27B66B, #317BFF);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.philosophy .mvv .mvv_wrap .mvv_txt dl dd {
font-size:2rem;
font-weight:700;
margin-bottom:1em;
color:#333;
}
.philosophy .mvv .mvv_wrap .mvv_txt dl dd .en {
display:block;
width:fit-content;
background:#C8B782;
color:#fff;
line-height:1;
padding:.2em .5em .4em .5em;
margin-bottom: .2em;
}
.philosophy .mvv .mvv_wrap .mvv_img {
width:calc(100% / 3);
order:1;
}

/*************** ■沿革 ***************/
.history {
}

/***** ページヘッダー *****/
.history .pageheader {
}
.history .pageheader .inner {
padding:150px 40px 100px 40px;
}

.history .pageheader .page_title {
font-size:6.4rem;
line-height: 1;
font-weight:900;
text-align:left;
display: flex;
align-items: flex-start;
}
.history .pageheader .page_title .en {
font-size:1.6rem;
margin-left:1em;
}

/***** 沿革 *****/
.history .history_cont {
}
.history .history_cont .inner {
width:1080px;
text-align:left;
padding:0 40px 100px 40px;
}

.history .history_cont ul {
margin:0 auto;
}
.history .history_cont ul li {
display:flex;
font-weight:500;
align-items: baseline;
padding:10px 0;
position:relative;
}
.history .history_cont ul li:after {
content:"";
border-left:1px solid #000;
display:block;
height: 100%;
position: absolute;
left: 100px;
}
.history .history_cont ul li .year {
font-size:2rem;
font-weight:700;
width:100px;
position:relative;
}
.history .history_cont ul li .year:after {
content:"";
display: block;
width: 10px;
height: 10px;
position: absolute;
top:15px;
right: -5px;
background: #000;
border-radius: 50%;
}
.history .history_cont ul li .month {
font-size:2rem;
width:120px;
padding:0 0 0 50px;
}
.history .history_cont ul li .detail {
width:calc(100% - 220px);
}

/*************** ■採用情報TOP ***************/
.recruit {
background:#FAFAFC;
}

/***** 採用情報ナビ *****/
.recruit_navi .inner > ul > li.hamburger.hide {
width: 0;
opacity: 0;
margin: 0;
padding:0;
transition: all 0.2s ease;
}

/***** ページヘッダー *****/
.recruit .pageheader {
}
.recruit .pageheader .inner {
text-align:left;
display:flex;
justify-content: space-between;
padding:100px 40px 0 40px;
}

.recruit .pageheader .recruit_pageheader_cont {
flex: 1;
padding-right: 50px;
}
.recruit .pageheader .recruit_pageheader_cont .page_title {
font-size:4.8rem;
line-height: 1.5;
font-weight:400;
text-align:left;

margin-bottom: 1em;
}
.recruit .pageheader .recruit_pageheader_cont .page_lead {
text-align: left;
line-height: 2;
}
.recruit .pageheader .recruit_pageheader_cont .page_lead .recruit_pageheader_img {
margin:50px 0;
}

.recruit .pageheader .recruit_pageheader_nav {
margin-top:120px;
}
.recruit .pageheader .recruit_pageheader_nav ul {
font-size:2rem;
font-weight:700;
line-height:2;
}
.recruit .pageheader .recruit_pageheader_nav ul li {
margin:.25em 0;
}
.recruit .pageheader .recruit_pageheader_nav ul li a {
display:block;
text-decoration:none;
padding:0 1em;
position:relative;
}
.recruit .pageheader .recruit_pageheader_nav ul li a:after {
content:"";
border-bottom:1px solid #000;
display: block;
width:0;
transition: width 0.2s ease;
position: absolute;
bottom: 0;
left: 0;
}
.recruit .pageheader .recruit_pageheader_nav ul li a:hover:after {
width:100%;
transition: width 0.2s ease;
}

/***** メッセージ *****/
.recruit .recruit_message {
}
.recruit .recruit_message .inner {
font-size: 2rem;
line-height:2.3;
text-align: left;
}

.recruit .recruit_message .recruit_message_title {
font-size: 6.4rem;
line-height: 1;
font-weight: 900;
text-align: left;
display: flex;
align-items: flex-start;
margin-bottom: 1em;
}
.recruit .recruit_message .recruit_message_title .en {
font-size: 1.6rem;
margin-left: 1em;
}

.recruit .recruit_message .recruit_message_subtitle {
font-size:3.2rem;
line-height:1.7;
margin-bottom:1.5em;
}


/***** ページヘッダー *****
.recruit .pageheader {
display:none;
display:block;
background:linear-gradient(90deg, #02A7FF, #B9FFFF);
}
.recruit .pageheader .inner {
padding:80px 40px;
}
.recruit .pageheader .page_title {
font-size:4.8rem;
font-weight:400;
color:#fff;
text-align:left;
}

/***** 採用情報ナビ *****
.recruit .recruit_navi {
background:#FAFAFC;
}
.recruit .recruit_navi .inner {
}

.recruit .recruit_navi ul {
margin:0 auto;
}
.recruit .recruit_navi ul li {
margin:0 auto 40px auto;
}
.recruit .recruit_navi ul li a {
display:flex;
align-items: center;
text-decoration:none;
background:#fff;
border-radius:20px;
padding:50px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
transition: transform 0.2s ease;
}
.recruit .recruit_navi ul li a:hover {
transform: scale(1.01);
transition: transform 0.2s ease;
}
.recruit .recruit_navi ul li .recruit_navi_img {
width:310px;
max-width:40%;
}
.recruit .recruit_navi ul li .recruit_navi_txt {
width:calc(100% - 310px);
min-width: 60%;
text-align:left;
padding:0 0 0 30px;
}
.recruit .recruit_navi ul li .recruit_navi_txt .recruit_navi_txt_title {
font-size:3.6rem;
font-weight:900;
line-height: 1;
display:flex;
align-items: flex-start;
margin-bottom:.5em;
}
.recruit .recruit_navi ul li .recruit_navi_txt .recruit_navi_txt_title .en {
font-size:1.4rem;
margin-left: 1em;
flex: 1;
}
.recruit .recruit_navi ul li .recruit_navi_txt *:last-child {
margin-bottom:0;
}


/***** エントリーはこちらから *****
.recruit .recruit_entry {
}
.recruit .recruit_entry .inner {
font-size:2rem;
font-weight:500;
text-align:left;
}

.recruit .recruit_entry .recruit_entry_title {
font-size:3.6rem;
line-height:1.5;
font-weight:700;
color:#1B72E4;
text-align:center;

border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin:0 auto 1.5em auto;
padding: 0 0 .5em 0;
}

.recruit .recruit_entry ul {
display:flex;
justify-content: space-between;
}
.recruit .recruit_entry ul li {
width:calc((100% - 40px) / 2);
}
.recruit .recruit_entry ul li a {
font-size:4.8rem;
line-height: 1.5;
font-weight:700;
background:#1B72E4;
border:2px solid #1B72E4;
border-radius:8px;
color:#fff;
display:block;
text-decoration:none;
text-align: center;
padding:.5em .5em;
}
.recruit .recruit_entry ul li a:hover {
color:#1B72E4;
background:#fff;
}
.recruit .recruit_entry ul li a small {
font-size:1.6rem;
display:block;
}
.recruit .recruit_entry ul li a i {
font-size:4rem;
margin-right: .5em;
}

/*************** ■採用情報 下階層 ***************/
.recruit_lv2 {
background:#FAFAFC;
}

/***** 採用情報 下階層共通 *****/
.recruit_lv2 a {
color:#45ADCB;
text-decoration:none;
}
/* タイトル */
.recruit_lv2 .recruit_lv2_title {
font-size:4.8rem;
line-height: 1.3;
font-weight: 700;
text-align: left;
color: #fff;
background: #1B72E4;
display: block;
width: fit-content;
padding: .1em 50px .2em 50px;
margin: 0 0 1em 0;
}
.recruit_lv2 .recruit_lv2_subtitle {
font-size:3.2rem;
line-height:1.3;
font-weight:700;
color:#1B72E4;
margin-bottom:1em;
}
/* アコーディオン */
.recruit_accordion {
}
.recruit_accordion dl {
}
.recruit_accordion dl > div {
margin-bottom: 30px;
}
.recruit_accordion dl dt {
border:1px solid #000;
border-radius:16px;
padding:30px 90px 30px 130px;
font-size:2.4rem;
line-height: 1.5;
font-weight:500;
position:relative;
cursor:pointer;
transition: border 0.2s ease;
}
.recruit_accordion dl dt:hover {
border:1px solid #1B72E4;
text-decoration:underline;
transition: border 0.2s ease;
}
.recruit_accordion dl dt:after {
content:"";
width:40px;
height:40px;
display:flex;
background:#000 url(../images/ic_plus_wh.svg) no-repeat center center;
background-size:40px 40px;
border-radius:999px;
position:absolute;
right:30px;
top: 50%;
transform: translateY(-50%);
transition: all 0.2s ease;
}
.recruit_accordion dl dt:hover:after {
background:#1B72E4 url(../images/ic_plus_wh.svg) no-repeat center center;
transition: all 0.2s ease;
}
.recruit_accordion dl .recruit_accordion_qa {
font-size:2rem;
line-height: 1.75;
position:absolute;
left:30px;
border:1px solid #000;
border-radius:8px;
padding:0 ;
width:75px;
text-align:center;
}
.recruit_accordion dl dd {
display:none;

border:1px solid #000;
border-top:0;
border-radius:0 0 16px 16px;
padding:30px 30px 30px 130px;
position:relative;
}
/* open時 */
.recruit_accordion dl .open dt {
border:1px solid #1B72E4;
border-radius:16px 16px 0 0;
}
.recruit_accordion dl .open dt:after {
background:#000 url(../images/ic_minus_wh.svg) no-repeat center center;
background:#1B72E4 url(../images/ic_minus_wh.svg) no-repeat center center;
}
.recruit_accordion dl .open dt:hover:after {
background:#1B72E4 url(../images/ic_minus_wh.svg) no-repeat center center;
}
.recruit_accordion dl .open dd {
display:block;
}

/***** ページヘッダー *****/
.recruit_lv2 .pageheader {
}
.recruit_lv2 .pageheader .inner {
padding:150px 40px 100px 40px;
}
.recruit_lv2 .pageheader .page_title {
font-size:6.4rem;
/*font-size:min(6vw, 6.4rem);*/
line-height: 1;
font-weight:900;
text-align:left;
display: flex;
align-items: flex-start;
}
.recruit_lv2 .pageheader .page_title .en {
font-size:1.6rem;
margin-left:1em;
}

/***** 応募方法 *****/
.recruit_lv2 .how_to_entry {
}
.recruit_lv2 .how_to_entry .inner {
padding: 0 40px 100px 40px;
text-align:left;
}

/***** 選考スケジュール *****/
.recruit_lv2 .schedule {
}
.recruit_lv2 .schedule .inner {
padding: 0 40px 100px 40px;
text-align:left;
}

.recruit_lv2 .schedule ol {
display:flex;
justify-content: space-between;
}
.recruit_lv2 .schedule ol li {
list-style:none;
width:calc((100% - 160px) / 5);
text-align:center;
margin:0;
position:relative;
display:flex;
flex-direction:column;
}
.recruit_lv2 .schedule ol li:after {
position: absolute;
content: " ";
height: 0;
width: 0;
left: calc(100% + 17px);
top: 50%;
border:8px solid transparent;
border-left:6px solid #1A5FA8;
margin-top: -6px;
}
.recruit_lv2 .schedule ol li:last-child:after {
display:none;
}
.recruit_lv2 .schedule ol li .schedule_number {
width:30px;
height:30px;
line-height:30px;
font-weight:700;
color:#fff;
background:#004DD7;
border-radius:999px;
display:flex;
align-items: center;
justify-content: center;
margin: 0 auto .5em auto;
}
.recruit_lv2 .schedule ol li .schedule_title {
background: linear-gradient(90deg, #66D4FF, #1B72E4);
font-size:2rem;
line-height:1.4;
font-weight:700;
color:#fff;
padding:.25em;
}
.recruit_lv2 .schedule ol li .schedule_wrap {
border:1px solid #1B72E4;
padding:20px 10px;
flex-grow:1;
}
.recruit_lv2 .schedule ol li .schedule_wrap .schedule_img {
margin:0 auto 10px auto;
}
.recruit_lv2 .schedule ol li .schedule_wrap .schedule_txt {
font-size:1.4rem;
line-height:1.8;
text-align:left;
}

/***** よくあるご質問 *****/
.recruit_lv2 .recruit_faq {
}
.recruit_lv2 .recruit_faq .inner {
padding: 0 40px 100px 40px;
text-align:left;
}

.recruit_lv2 .recruit_faq .recruit_faq_block {
margin:0 auto 50px auto;
}
.recruit_lv2 .recruit_faq .recruit_faq_block:last-child {
margin-bottom:0;
}


/***** 募集要項 *****/
.recruit_lv2 .requirements {
}
.recruit_lv2 .requirements .inner {
padding: 0 40px 100px 40px;
text-align:left;
}

.recruit_lv2 .requirements .inner > dl {
margin-bottom:100px;
}
.recruit_lv2 .requirements .inner > dl > div {
display:flex;
border-bottom:1px solid #E4E4E4;
padding:50px 80px;
}
.recruit_lv2 .requirements .inner > dl > div > dt {
width:30%;
font-weight:700;
}
.recruit_lv2 .requirements .inner > dl > div > dd {
width:70%;
}
.recruit_lv2 .requirements .inner > dl > div > dd *:last-child {
margin-bottom:0;
}

.recruit_lv2 .requirements .inner > dl > div > dd .note {
position:relative;
padding-left:1.5em;
display: inline-block;
}
.recruit_lv2 .requirements .inner > dl > div > dd .note:before {
content:"※";
position:absolute;
left:0;
}

.recruit_lv2 .requirements .inner > dl > div > dd > dl {
}
.recruit_lv2 .requirements .inner > dl > div > dd > dl > div {
display:flex;
margin-bottom: 1em;
}
.recruit_lv2 .requirements .inner > dl > div > dd > dl > div > dt {
width:30%;
font-weight:700;
position:relative;
padding-left:1.5em;
}
.recruit_lv2 .requirements .inner > dl > div > dd > dl > div > dt:before {
content:"・";
position:absolute;
left:0;
}
.recruit_lv2 .requirements .inner > dl > div > dd > dl > div > dd {
width:70%;
}

/***** 新人研修 *****/
.recruit_lv2 .training {
}
.recruit_lv2 .training .inner {
text-align:left;
}

.recruit_lv2 .training .training_lead {
margin-bottom:50px;
}

/* PC */
.recruit_lv2 .training .training_table_pc {
}
.recruit_lv2 .training .training_table_pc table {
width:100%;
}
.recruit_lv2 .training .training_table_pc table th{
padding: 10px;
text-align:center;
width:calc(100% / 6);
}
.recruit_lv2 .training .training_table_pc table .month {
display:block;
background:#000;
color:#fff;
font-size:2rem;
font-weight:700;
}
.recruit_lv2 .training .training_table_pc table td {
padding: 10px;
}
.recruit_lv2 .training .training_table_pc table td .training_table_stage1 {
display:flex;
align-items: center;
justify-content: center;
width:calc(100% - 30px);
height:130px;
background:#60AEF7;
color:#fff;
border-radius: 4px 0 0 4px;
font-size:2.4rem;
font-weight:700;
position:relative;
margin-bottom: 10px;
}
.recruit_lv2 .training .training_table_pc table td .training_table_stage1:after {
position: absolute;
content: " ";
height: 0;
width: 0;
left: 100%;
top: 0;
border:65px solid transparent;
border-left:30px solid #60AEF7;
}

.recruit_lv2 .training .training_table_pc table td .training_table_stage2 {
display:flex;
align-items: center;
justify-content: center;
width:calc(100% - 30px);
height:130px;
background:#177DED;
color:#fff;
border-radius: 4px 0 0 4px;
font-size:2.4rem;
font-weight:700;
position:relative;
margin-bottom: 10px;
}
.recruit_lv2 .training .training_table_pc table td .training_table_stage2:after {
position: absolute;
content: " ";
height: 0;
width: 0;
left: 100%;
top: 0;
border:65px solid transparent;
border-left:30px solid #177DED;
}

.recruit_lv2 .training .training_table_pc table td .training_table_stage3 {
display:flex;
align-items: center;
justify-content: center;
width:calc(100% - 30px);
height:130px;
background:#1A5FA8;
color:#fff;
border-radius: 4px 0 0 4px;
font-size:2.4rem;
font-weight:700;
position:relative;
margin-bottom: 10px;
}
.recruit_lv2 .training .training_table_pc table td .training_table_stage3:after {
position: absolute;
content: " ";
height: 0;
width: 0;
left: 100%;
top: 0;
border:65px solid transparent;
border-left:30px solid #1A5FA8;
}

.recruit_lv2 .training .training_table_pc table td ul li {
font-size:1.4rem;
font-weight:500;
position:relative;
padding-left:1.5rem;
}
.recruit_lv2 .training .training_table_pc table td ul li:before {
content:"・";
color:#1B72E4;
position:absolute;
left:0;
}

/* SP */
.recruit_lv2 .training .training_table_sp {
display:none;
}


/***** 社員インタビュー *****/
.recruit_lv2 .interview {
}
.recruit_lv2 .interview .inner {
padding: 0 40px 100px 40px;
text-align:left;
}

/* interview_menu */
.interview .interview_menu {
}
.interview .interview_menu ul {
display: flex;
justify-content: space-between;
align-items: center;
max-width:800px;
margin:100px auto;
}
.interview .interview_menu ul li {
width:calc((100% - 40px) / 2);
}
.interview .interview_menu ul li a {
font-size:2rem;
line-height: 1.4;
font-weight:700;
color:#000;
background:#fff;
border-radius: 20px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
position:relative;
padding:1.25em 3em 1.25em 1.5em;
margin: 0 ;
display:block;
transition: background 0.2s ease;

}
.interview .interview_menu ul li a:hover {
background: #fff;
color:#1B72E4;
transition: all 0.2s ease;
}
.interview .interview_menu ul li a:after {
font-family: "Font Awesome 6 Free";
content: "\f175";
font-weight:900;
position:absolute;
top: 50%;
right: 1.5em;
transform: translateY(-50%);
}

/* interview_block */
.interview .interview_block {
margin-bottom: 100px;
}
.interview .interview_block .interview_block_header {
text-align: center;
margin-bottom: 50px;
}
.interview .interview_block .interview_block_header .number {
font-size:1.6rem;
font-weight:700;
color:#1B72E4;
}
.interview .interview_block .interview_block_header .occupation {
font-size:2rem;
font-weight:700;
margin-bottom: 1.5em;
}
.interview .interview_block .interview_block_header .profile {
display:flex;
justify-content: center;
align-items: center;
}
.interview .interview_block .interview_block_header .profile .photo {
border-radius:999px;
overflow: hidden;
width:140px;
height:140px;
display:block;
}
.interview .interview_block .interview_block_header .profile .data {
font-size:1.4rem;
text-align: left;
margin-left:2em;
}

.interview .interview_block .interview_block_title {
font-size: 3.6rem;
line-height: 1.5;
font-weight: 700;
color: #1B72E4;
border-image: linear-gradient(90deg, #66D4FF 0%, #1B72E4 100%) 1 / 0 0 4px 0;
border-style: solid;
margin: 0 auto 1.5em auto;
padding: 0 0 .5em 0;
text-align: center;
}
.interview .interview_block .interview_block_img {
margin-bottom:50px;
}





/*************** ■データ保護の取り組み・プライバシーポリシー ***************/
.privacy {
background:#F9F9FC;
}

/***** ページヘッダー *****/
.privacy .pageheader {
}
.privacy .pageheader .inner {
width:1080px
}
.privacy .pageheader .page_title {
font-size:4.8rem;
line-height: 1.5;
font-weight:700;
text-align:left;
margin-bottom:1em;
}
.privacy .pageheader .page_lead {
text-align:left;
line-height: 2.375;
}

/***** データ保護の取り組み・プライバシーポリシーコンテンツ *****/
.privacy .privacy_cont {
}
.privacy .privacy_cont .inner {
padding:0 40px 100px 40px;
width:1080px
}

/*** データ保護の取り組み・プライバシーポリシーナビ ***/
.privacy .privacy_cont .privacy_navi {
background:#fff;
padding:50px;
border-radius:8px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
}

.privacy .privacy_cont .privacy_navi .block {
margin:30px auto;
}

.privacy .privacy_cont .privacy_navi .privacy_navi_title {
font-size:2.6rem;
font-weight:700;
border-bottom:1px solid #CBCBCB;
padding:0 0 .5em 0;
margin:0 0 1em 0;
text-align:center;
}
.privacy .privacy_cont .privacy_navi ul {
display:flex;
flex-wrap: wrap;
width:760px;
max-width:100%;
margin: auto;
}
.privacy .privacy_cont .privacy_navi ul li {
width:calc(50% - 40px);
margin:20px;
}
.privacy .privacy_cont .privacy_navi ul li .privacy_navi_img {
background:#F5F5F7;
border-radius:8px;
box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);
margin:0 auto 20px auto;
}
.privacy .privacy_cont .privacy_navi ul li .privacy_navi_img a {
display:block;
padding: 50px;
}

.privacy .privacy_cont .privacy_navi ul li .privacy_navi_txt {
text-align:left;
}
.privacy .privacy_cont .privacy_navi ul li .privacy_navi_txt .privacy_navi_txt_title {
text-align:center;
margin-bottom: .5em;
}
.privacy .privacy_cont .privacy_navi ul li .privacy_navi_txt .privacy_navi_txt_title a {
color:#1B72E4;
font-size: 1.6rem;
font-weight:700;
text-decoration:none;
}
.privacy .privacy_cont .privacy_navi ul li .privacy_navi_txt .privacy_navi_txt_title a:hover {
color:#000;
}


/*************** ■プライバシーポリシー下階層 ***************/
.privacy_lv2 {
}

.privacy_lv2 a {
color:#1B72E4;
}

/***** ページヘッダー *****/
.privacy_lv2 .pageheader {
background:#F9F9FC;
}
.privacy_lv2 .pageheader .inner {
width:1080px
}
.privacy_lv2 .pageheader .page_title {
font-size:3.6rem;
line-height: 1.5;
font-weight:700;
text-align:left;
}

/***** プライバシーポリシー下階層ナビ *****/
.privacy_lv2 .privacy_lv2_navi {
}
.privacy_lv2 .privacy_lv2_navi .inner {
width:1080px;
text-align:left;
padding:100px 40px 0 40px;
}

/***** プライバシーポリシー下階層コンテンツ *****/
.privacy_lv2 .privacy_lv2_cont {
}
.privacy_lv2 .privacy_lv2_cont .inner {
width:1080px;
text-align:left;
}

.privacy_lv2 .privacy_lv2_cont .sentence {
margin:0 auto 3em auto;
}
.privacy_lv2 .privacy_lv2_cont .privacy_lv2_title {
font-size:3rem;
line-height: 1.5;
font-weight:700;
border-bottom:1px solid #CBCBCB;
padding:0 0 .5em 0;
margin:0 0 1em 0;
}
.privacy_lv2 .privacy_lv2_cont .privacy_lv2_subtitle {
font-size:2rem;
line-height: 1.5;
font-weight:700;
border-bottom:1px solid #CBCBCB;
padding:0 0 .5em 0;
margin:0 0 1em 0;
}

.privacy_lv2 .privacy_lv2_cont .contact {
margin: 100px auto 0 auto;
}



















/*************** ■ニュース ***************/
.news {
background:#F9F9FC;
}

/***** ページヘッダー *****/
.news .pageheader {
display:block;
background: linear-gradient(90deg, #02A7FF, #B9FFFF);
}
.news .pageheader .inner {
padding:80px 40px;
}
.news .pageheader .page_title {
font-size: 4.8rem;
font-weight: 400;
color: #fff;
text-align: left;
}

/***** ニュースアーカイブ *****/
.news .news_archive {
}
.news .news_archive .inner {
/*padding:0 40px 100px 40px;*/
}

/*.news .news_archive .news_archive_title {
font-size:6.4rem;
line-height: 1;
font-weight:900;
text-align:left;
display: flex;
align-items: flex-start;
margin-bottom:1em;
}
.news .news_archive .news_archive_title .en {
font-size:1.6rem;
margin-left:1em;
}*/

/*** 検索エリア ***/
.news .news_archive .searcharea {
background:#fff;
padding:50px;
margin:0 auto 50px auto;
}
/* キーワード */
.news .news_archive .searcharea .searcharea_keyword {
background:#EEE;
padding:20px;
display:flex;
position:relative;
}
.news .news_archive .searcharea .searcharea_keyword:before {
font-family: "Font Awesome 6 Free";
content: "\f002";
font-weight:900;
position:absolute;
left:20px;
line-height: 24px;
width:44px;
height:24px;
display:block;
border-right:2px solid #C5C5C5;
text-align:left;
}
.news .news_archive .searcharea .searcharea_keyword .input_keyword {
width:100%;
height:24px;
padding:0 0 0 64px;
background:transparent;
}
.news .news_archive .searcharea .input_submit:hover {
background:#1B72E4;
}
/* カテゴリー・公開年 */
.news .news_archive .searcharea .searcharea_filter {
text-align:left;
}
.news .news_archive .searcharea .searcharea_filter dl {
border-bottom:2px solid #EFEFEF;
display:flex;
padding: 30px 0;
margin:0;
}
.news .news_archive .searcharea .searcharea_filter dl:last-child {
border:0;
}
.news .news_archive .searcharea .searcharea_filter dl dt {
width:160px;
font-weight:700;
}
.news .news_archive .searcharea .searcharea_filter dl dd {
width:calc(100% - 160px);
}
.news .news_archive .searcharea .searcharea_filter dl dd input[type="radio"] {
display:none;
}
.news .news_archive .searcharea .searcharea_filter dl dd label {
margin-right:2em;
cursor:pointer;
}
.news .news_archive .searcharea .searcharea_filter dl dd input[type="radio"]:checked + label {
font-weight:700;
border-bottom:2px solid #000;
}
.news .news_archive .searcharea .searcharea_filter dl dd .radio_reset {
background:transparent;
border:0;
margin-right:2em;
cursor:pointer;
}
.news .news_archive .searcharea .searcharea_filter dl dd .radio_reset.on {
font-weight:700;
border-bottom:2px solid #000;
}
/* submit */
.news .news_archive .searcharea .input_submit {
border:0;
background:#000;
color:#fff;
border-radius:24px;
padding:0 1em;
width:120px;
height:34px;
}

/*** 一覧 ***/


/***** ニュース記事 *****/
.news .news_post {
background:#F3F3F6;
}
.news .news_post .inner {
width: 1200px;
padding:50px 40px 100px 40px;
background:#fff;
}
/*** 記事 ***/
.news .news_post .news_post_wrap {
width: 700px;
max-width:100%;
margin:auto;
text-align:left;
}
/* 記事ヘッダ */
.news .news_post .news_post_head {
}
.news .news_post .news_post_head .news_post_thmb {
margin:0 auto 50px auto;
text-align: center;
}
.news .news_post .news_post_head .news_post_date {
font-size:1.4rem;
font-weight:700;
font-style: italic;
color:#757575;
}
.news .news_post .news_post_head .news_post_title {
font-size:3.2rem;
font-weight:400;
margin:0 0 1em 0;
}
/* 記事本文 */
.news .news_post .news_post_cont {
}

.news .news_post .news_post_cont .mt-be-columns {
}
.news .news_post .news_post_cont .mt-be-columns .mt-be-column {
margin:0 1em 0 0;
}
.news .news_post .news_post_cont .mt-be-columns .mt-be-column:last-child {
margin:0;
}

.news .news_post .news_post_cont .googlemap {
width:100%;
height:0;
padding-top:75%;

position: relative;
margin:0 0 1.5em 0;
overflow: hidden;
z-index:1;
}
.news .news_post .news_post_cont .googlemap iframe,
.news .news_post .news_post_cont .googlemap object,
.news .news_post .news_post_cont .googlemap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.news .news_post .news_post_cont table {
border:1px solid #ccc;
border-collapse:collapse;
margin: 0 auto 1.5em auto;
}
.news .news_post .news_post_cont table td ,
.news .news_post .news_post_cont table th {
border:1px solid #ccc;
background:#fff;
padding:.75em 1.25em;
vertical-align: middle;
}
.news .news_post .news_post_cont table th {
font-weight:700;
background:#FCFCFE;
}
.news .news_post .news_post_cont table td *:last-child ,
.news .news_post .news_post_cont table th *:last-child {
margin-bottom:0;
}


/*************** ■サイトマップ ***************/
.sitemap {
background:#F9F9FC;
}

/***** ページヘッダー *****/
.sitemap .pageheader {
display:none;
display:block;
background:linear-gradient(90deg, #02A7FF, #B9FFFF);
}
.sitemap .pageheader .inner {
padding:80px 40px;
}
.sitemap .pageheader .page_title {
font-size:4.8rem;
font-weight:400;
color:#fff;
text-align:left;
}

/***** サイトマップコンテンツ *****/
.sitemap .sitemap_cont {
}
.sitemap .sitemap_cont .inner {
padding: 100px 40px;
}

/* mainmenu */
.sitemap .sitemap_cont .main_menu {
margin:0 0 50px 0;
display:flex;
justify-content: space-between;
border-bottom: 1px dashed #C3C3C3;
padding-bottom: 20px;
}
.sitemap .sitemap_cont .main_menu:last-child {
border-bottom: 0;
padding-bottom: 0;

}
.sitemap .sitemap_cont .main_menu .main_menu_column {
width:calc((100% - 80px) / 3);
}
.sitemap .sitemap_cont .main_menu ul {
display:block;
text-align:left;
}
.sitemap .sitemap_cont .main_menu ul li {
padding:0;
background: #fff;
border:1px solid #DFDFDF;
position:relative;
}
.sitemap .sitemap_cont .main_menu ul li:after {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_allow-right.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right: 0;
}
.sitemap .sitemap_cont .main_menu > ul > li:hover:after {
width:48px;
bottom:auto;
border-bottom:0;
}
.sitemap .sitemap_cont .main_menu ul li.parent {
background: #7BD5EF;
margin-bottom: 30px;
}
.sitemap .sitemap_cont .main_menu ul li.parent:after {
background:url(../images/ic_allow-right_wh.svg) no-repeat center center;
background-size:18px 18px;
}
.sitemap .sitemap_cont .main_menu ul li a {
padding:14px 40px 14px 50px;
font-size:1.4rem;
line-height:20px;
font-weight:700;
display:block;
position: relative;
z-index: 1;
text-decoration:none;
}
.sitemap .sitemap_cont .main_menu ul li > a:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-right_wh.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right:0;
left: 0;
}
.sitemap .sitemap_cont .main_menu ul li.parent a {
color:#fff;
}
.sitemap .sitemap_cont .main_menu ul li a i {
display:none;
}
/*もっと詳しく知る*/
.sitemap .sitemap_cont .main_menu ul li.nolink {
margin-bottom: 30px;
}
.sitemap .sitemap_cont .main_menu ul li.nolink:after {
background:none;
}
.sitemap .sitemap_cont .main_menu ul li.nolink span {
padding:14px 40px 14px 50px;
font-size:1.4rem;
line-height:20px;
font-weight:700;
display:block;
position: relative;
z-index: 1;
text-decoration:none;
color:#7F7978;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.nolink > span:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-down-gr.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right:0;
left: 0;
}


/* ドロップダウンメニュー */
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu {
padding: 0 0 ;
width: 100%;
position: relative;

display:block;
opacity: 1;
}
.sitemap .sitemap_cont .main_menu ul li:hover > .dropdownmenu {
display:block;
opacity: 1;
}

.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu .inner {
background:#fff;
width:100%;
padding:0;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu .dropdownmenu_title {
display:none;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul {
margin:0 auto;
padding:0;
width:1280px;
max-width:100%;
display: block;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li {
border:0;
border-top:1px solid #DFDFDF;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv2 {
margin:0;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv2 > ul {
margin:0;
}
/*.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv2 > ul li.lv3*/
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv3 {
background:#F9F9FC;
margin:0;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li > a:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-right-gr.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right:0;
left: 0;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv2 a {
color:#7F7978;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv2 a:hover {
color:#45ADCB;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv3 a {
color:#000;
font-weight:400;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv3 a:hover {
color:#45ADCB;
}
.sitemap .sitemap_cont .main_menu ul li > .dropdownmenu ul > li.lv3 > a:before {
display:none;
}

/* TEL */
.sitemap .sitemap_cont .main_menu .tel {
display: flex;
margin:0 0 30px 0;
}
.sitemap .sitemap_cont .main_menu .tel a {
display:flex;
color:#45ADCB;
}
.sitemap .sitemap_cont .main_menu .tel a:hover {
color:#000;
}
.sitemap .sitemap_cont .main_menu .tel .type {
display:flex;
align-items: center;
font-size:1.2rem;
color:#666;
margin:0 .5em 0 0;
}
.sitemap .sitemap_cont .main_menu .tel .type img {
margin:0 .5em 0 0;
}


/*************** ■お問い合わせ ***************/
.inquiry {
}

/***** ページヘッダー *****/
.inquiry .pageheader {
display:none;
display:block;
background:linear-gradient(90deg, #02A7FF, #B9FFFF);
}
.inquiry .pageheader .inner {
padding:80px 40px;
}
.inquiry .pageheader .page_title {
font-size:4.8rem;
font-weight:400;
color:#fff;
text-align:left;
}

/***** お問い合わせフォーム *****/
.inquiry .contactform {
}
.inquiry .contactform .inner {
width:1200px;
padding:50px 40px 100px 40px;
}

.inquiry .contactform .hs-form-frame {
margin:-40px;
}




/* ******************************************************************** */
/**** footer ****/
/* ******************************************************************** */
.footer {
width:100%;
margin:auto;
background:#333;
color:#ccc;
}
.footer .inner {
width: 1080px;
position:relative;
padding: 60px 40px;
}

/***** pagetop *****/
.footer .pagetop {
display:none;
position:fixed;
bottom:100%;
right:20px;
z-index:2;
}

/***** ロゴ *****/
.footer .logo {
display:none;
}
/***** footer_menu *****/
.footer .footer_menu {
}
/*** main_menu ***/
.footer .footer_menu .main_menu {
display:none;
}
/*** TEL ***/
.footer .footer_menu .tel {
display:none;
}
/*** sub_menu ***/
.footer .footer_menu .sub_menu {
margin: 0 auto 60px auto;
}
.footer .footer_menu .sub_menu ul {
display:flex;
justify-content: flex-end;
}
.footer .footer_menu .sub_menu ul li {
margin: 0 0 0 2em;
}
.footer .footer_menu .sub_menu ul li.sub_menu_sp_only {
display:none;
}
.footer .footer_menu .sub_menu ul li a {
color:#ccc;
font-size:1.4rem;
text-decoration:none;
display: block;
}
.footer .footer_menu .sub_menu ul li a:hover {
color:#fff;
}


/***** SNS・コピーライト *****/
.footer .footer_bottom {
display:flex;
align-items:center;
justify-content: space-between;
}
/*** sns_links ***/
.footer .footer_bottom .sns_links {
}
.footer .footer_bottom .sns_links ul {
display:flex;
align-items:center;
margin:0;
}
.footer .footer_bottom .sns_links ul li {
margin:0 2em 0 0;
font-size: 1.8rem;
}
.footer .footer_bottom .sns_links ul li a {
color:#797372;
}
.footer .footer_bottom .sns_links ul li a:hover {
color:#fff;
}
/*** copyright ***/
.footer .footer_bottom .copyright {
text-align:right;
font-size:1.4rem;
}







/************************************************ 1080px以下 ************************************************/
@media screen and (max-width: 1080px){
/* ****************************************************************************** */
/**** wrapper ****/
/* ****************************************************************************** */
/* ******************************************************************** */
/**** header ****/
/* ******************************************************************** */
/***** ロゴ *****/
.header .logo {
width:200px;
margin:38px 20px 12px 0;
}

/***** メニュー *****/
.header .header_menu {
width:calc(100% - 220px);
}

/*** sub_menu【PC】 ***/
.header .header_menu .sub_menu_pc ul li {
padding:0 1em;
}

/*** main_menu【PC】 ***/
.header .header_menu .main_menu_pc ul li {
padding:0 1em;
}

/* ******************************************************************** */
/**** container ****/
/* ******************************************************************** */
/* ************************************************ */
/**** main ****/
/* ************************************************ */

/*************** ■共通パーツ ***************/
/***** 導入前のご相談 *****/
/*** タブメニュー ***/
.consultation .tab_menu ul li {
font-size:1.6rem;
}
.consultation .tab_menu ul li i {
margin-right:.5em;
}

/*************** ■TOPページ ***************/

/***** ページヘッダー *****/
.toppage .pageheader .about_us .about_us_txt dl {
display:block;
}
.toppage .pageheader .about_us .about_us_txt dl dt {
width:100%;
}
.toppage .pageheader .about_us .about_us_txt dl dd {
width:100%;
}

/***** TOP NEWS *****/
.toppage .top_news {
}
.toppage .top_news .inner {
display:block;
}

.toppage .top_news .top_news_title {
width:fit-content;
text-align:center;
margin:0 auto 1em auto;
}
.toppage .top_news .news_list {
width:100%;
}

/*************** ■サービス・製品 ***************/

/***** サービス *****/
/*service_block1*/
.service-product .service ul li .service_wrap .service_block1 dl {
display:block;
}
.service-product .service ul li .service_wrap .service_block1 dl div {
width:100%;
}
.service-product .service ul li .service_wrap .service_block1 dl div dt {
height:auto;
min-height: auto;
padding:.5em;
}
.service-product .service ul li .service_wrap .service_block1 dl div dt br {
display:none;
}
.service-product .service ul li .service_wrap .service_block1 dl div dd {
padding:.5em;
}

/***** 製品 *****/
/*product_block2*/
.service-product .product ul li .product_wrap .product_block2 dl {
display:block;
}
.service-product .product ul li .product_wrap .product_block2 dl div {
width:100%;
}
.service-product .product ul li .product_wrap .product_block2 dl div dt {
height:auto;
min-height: auto;
padding:.5em;
}
.service-product .product ul li .product_wrap .product_block2 dl div dt br {
display:none;
}
.service-product .product ul li .product_wrap .product_block2 dl div dd {
padding:.5em;
}

/*************** ■サービス・製品＞AtoZ portal 共通 ***************/
/***** 特徴 *****/
.atozportal_feature {
}
.atozportal_feature .inner > ul {
display:block;
}
.atozportal_feature .inner > ul > li {
width:100%;
}

/***** 機能 *****/
.atozportal_function .inner > ul > li {
width:calc(50% - 20px);
}

/*************** ■サービス・製品＞AtoZ portal TOP ***************/
.atozportal {
}

/***** ページヘッダー *****/
.atozportal .pageheader .inner {
display:block;
}
.atozportal .pageheader .atozportal_pageheader_txt {
width:100%;
margin-bottom:30px;
}
.atozportal .pageheader .atozportal_pageheader_img {
width:800px;
max-width:100%;
padding:0 0 ;
margin: 0 auto;
}

/***** AtoZ portalの種類 *****/
.atozportal .atozportal_type ul li {
font-size:1.6rem;
}
.atozportal .atozportal_type ul li .atozportal_type_title {
font-size:2rem;
}
.atozportal .atozportal_type ul li .atozportal_type_txt {
margin:0 auto 10px auto;
}
.atozportal .atozportal_type ul li .atozportal_type_img {
margin:0 10px 10px 10px;
}

.atozportal .atozportal_type ul li .btnarea a.btnD {
border:1px solid #fff;
font-size:1.4rem;
}

/*************** ■サービス・製品＞AtoZ portal 下階層 ***************/
.atozportal_lv2 {
}

/***** ページヘッダー *****/
.atozportal_lv2 .pageheader .inner {
display:block;
}
.atozportal_lv2 .pageheader .atozportal_pageheader_txt {
width:100%;
margin-bottom:30px;
}
.atozportal_lv2 .pageheader .atozportal_pageheader_img {
width:800px;
max-width:100%;
padding:0 0 ;
margin: 0 auto;
}

/***** 機能 *****/
.atozportal_lv2 .atozportal_function .inner > ul > li {
width:calc(50% - 20px);
}
/*academic*/
.atozportal_lv2.academic .atozportal_function .inner > ul > li {
width:calc(50% - 20px);
}

/*************** ■サービス・製品＞KUAS with Linkedin Leaning ***************/
.kuas {
}

/***** ページヘッダー *****/
.kuas .pageheader {
}
.kuas .pageheader .inner {
display:block;
}
.kuas .pageheader .kuas_pageheader_txt {
width:100%;
margin-bottom:50px;
}
.kuas .pageheader .kuas_pageheader_img {
width:600px;
max-width:100%;
padding:0 0 ;
margin: 0 auto;
}

/***** KUAS with Linkedin Leaning とは？ *****/
/*** Aパート ***/
.kuas .kuas_about .kuas_about_A .kuas_about_title {
display:block;
}
.kuas .kuas_about .kuas_about_A .kuas_about_title small {
display:inline-block;
}

/*** Bパート ***/
/* コンテンツ&サービス */
.kuas .kuas_about .kuas_about_B .contents-service {
display:block;
width:640px;
max-width:100%;
margin:auto;
}

/*コンテンツ*/
.kuas .kuas_about .kuas_about_B .contents-service .contents {
width:100%;
padding:0 ;
margin-bottom:50px;
}
/*サービス*/
.kuas .kuas_about .kuas_about_B .contents-service .service {
width:100%;
padding:0 ;
}

/* Way? */
.kuas .kuas_about .kuas_about_B .way .kuas_recurrent {
padding:50px 50px;
}
.kuas .kuas_about .kuas_about_B .way .kuas_kyotouniv {
padding:50px 50px;
}
/* Linked in Learning */
.kuas .kuas_about .kuas_about_B .linked-in-learning {
padding:50px 50px;
}
.kuas .kuas_about .kuas_about_B .linked-in-learning .linked-in-learning_lead dl div {
margin:0 10px;
}


/*************** ■ソリューション ***************/
/***** 導入 *****/
/* solution_about_box */
.solution .solution_about .solution_about_box {
display:block;
}
.solution .solution_about .solution_about_box .solution_about_box_lead {
width:100%;
padding:0;
margin:0 0 50px 0;
}
.solution .solution_about .solution_about_box .solution_about_box_cont {
width:100%;
}

}


/************************************************ 900px以下 ************************************************/
@media screen and (max-width: 900px){
/* ****************************************************************************** */
/**** wrapper ****/
/* ****************************************************************************** */
.wrapper {
padding: 70px 0 0 0;
}

/* ******************************************************************** */
/**** header ****/
/* ******************************************************************** */
.header {
height: 70px;
border-image: linear-gradient(90deg, #02A7FF 0%, #B9FFFF 100%) 1 / 0 0 2px 0;
border-style: solid;
}
.header .inner {
display:block;
padding: 0 20px;
}

/***** ロゴ *****/
.header .logo {
width:130px;
margin:17px auto;
}

/***** navToggle *****/
.header #navToggle {
display:block;
text-align:center;
width:36px;
height:36px;
cursor:pointer;
margin: 0 ;
padding: 0;
z-index:10;
color:#1e1e1e;
position: absolute;
right: 20px;
top: 17px;
transform: translateY(-50%);
transition: all 0.2s ease;
}
.header #navToggle:after {
content:"";
width:36px;
height:36px;
display:block;
background:url(../images/ic_hamburger.svg) no-repeat center center;
background-size:36px 36px;
}
.header.openNav #navToggle:after {
content:"";
width:36px;
height:36px;
display:block;
background:url(../images/ic_close.svg) no-repeat center center;
background-size:36px 36px;
}

/***** メニュー *****/
.header .header_menu {
display:none;
}
.header.openNav .header_menu {
display:block;

margin: 0;
padding: 20px 0;
position: fixed;
width: 100%;
height: calc(100% - 70px);
overflow-y: auto;
top: 70px;
left: 0;
right: 0;
transform: none;
backdrop-filter: blur(5px);
background:#F9F9FC;
}

/*** sub_menu【PC】 ***/
.header .header_menu .sub_menu_pc {
display:none;
}
/*** sub_menu【SP】 ***/
.header .header_menu .sub_menu_sp {
display:block;
}
/* TEL */
.header .header_menu .sub_menu_sp .tel {
display: flex;
margin:0 20px 30px 20px;
}
.header .header_menu .sub_menu_sp .tel a {
display:flex;
color:#45ADCB;
}
.header .header_menu .sub_menu_sp .tel a:hover {
color:#000;
}
.header .header_menu .sub_menu_sp .tel .type {
display:flex;
align-items: center;
font-size:1.2rem;
color:#666;
margin:0 .5em 0 0;
}
.header .header_menu .sub_menu_sp .tel .type img {
margin:0 .5em 0 0;
}

.header .header_menu .sub_menu_sp ul {
display:block;
text-align:left;
border-top: 1px solid #DFDFDF;
padding: 30px 20px;
margin:0 auto;
}
.header .header_menu .sub_menu_sp ul li {
padding:0;
}
.header .header_menu .sub_menu_sp ul li a {
padding:14px 17px 14px 50px;
font-size:1.4rem;
line-height:20px;
display:block;
position: relative;
z-index: 1;
color:#000;
}
.header .header_menu .sub_menu_sp ul li a:hover {
color:#45ADCB;
}
.header .header_menu .sub_menu_sp ul li > a:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-right.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right:0;
left: 0;
}

/*** main_menu【PC】 ***/
.header .header_menu .main_menu_pc {
display:none;
}
/*** main_menu【SP】 ***/
.header .header_menu .main_menu_sp {
display:block;
margin:0 20px 40px 20px;
}
.header .header_menu .main_menu_sp ul {
display:block;
text-align:left;
margin:0 0 ;
font-size:1.4rem;
line-height:1.5;
font-weight:700;
}
.header .header_menu .main_menu_sp ul li {
padding:0;
background: #fff;
border:1px solid #DFDFDF;
position:relative;
}
.header .header_menu .main_menu_sp ul li:after {
content:"";width:48px;
height:48px;
display:block;
background:url(../images/ic_allow-right.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
right:0;
top: 0;

}
.header .header_menu .main_menu_sp > ul > li:hover:after {
width:48px;
bottom:auto;
border-bottom:0;
}
.header .header_menu .main_menu_sp ul li.parent {
margin-top:-1px;
}
.header .header_menu .main_menu_sp ul li a {
color:#000;
padding:14px 17px 14px 50px;
font-size:1.2rem;
line-height:20px;
font-weight:700;
display:block;
position: relative;
z-index: 1;
}
.header .header_menu .main_menu_sp ul li a:hover {
color:#45ADCB;
}
.header .header_menu .main_menu_sp ul li > a:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-right.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right:0;
left: 0;
}
.header .header_menu .main_menu_sp ul li.off {
margin-bottom:30px;
border-bottom:0;
}
.header .header_menu .main_menu_sp ul li.off > a:before {
background:url(../images/ic_circle-chevron-down.svg) no-repeat center center;
}

/* dropdownmenu_switch */
.header .header_menu .main_menu_sp ul li .dropdownmenu_switch {
width:48px;
height:48px;
display:block;
background:#F9F9FC;
cursor:pointer;
z-index: 1;
position:absolute;
right:0;
top: 0;
}
.header .header_menu .main_menu_sp ul li .dropdownmenu_switch:after {
content:"";
width:18px;
height:18px;
display:block;
background:url(../images/ic_plus.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%);
}
.header .header_menu .main_menu_sp ul li.off .dropdownmenu_switch:after {
content:"";
width:18px;
height:18px;
display:block;
background:url(../images/ic_minus.svg) no-repeat center center;
background-size:18px 18px;
}

/* ドロップダウンメニュー */
.header .header_menu .main_menu_sp ul li > .dropdownmenu {
padding: 0 0 ;
width: 100%;
position: relative;
border-bottom:1px solid #DFDFDF;
margin: 0 auto;
top:auto;
left:0;
text-align:left;

display:none;
opacity: 0;

animation-duration: 0.4s;
animation-name: fade-in;
-moz-animation-duration: 0.4s;
-moz-animation-name: fade-in;
-webkit-animation-duration: 0.4s;
-webkit-animation-name: fade-in;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu.openNav {
display:block;
opacity: 1;
}
.header .header_menu .main_menu_sp ul li:hover > .dropdownmenu {
display:none;
opacity: 0;
}
.header .header_menu .main_menu_sp ul li:hover > .dropdownmenu.openNav {
display:block;
opacity: 1;
}

.header .header_menu .main_menu_sp ul li > .dropdownmenu .inner {
background:#fff;
width:100%;
padding:0;
display: block;
text-align:left;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul {
margin:0 auto;
padding:0;
width:1280px;
max-width:100%;
display: block;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li {
border:0;
border-top:1px solid #DFDFDF;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2 {
padding:0;
font-size:2.4rem;
font-weight:700;
margin:0;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2 > ul {
padding:0;
margin:0;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2 > ul li.lv3 {
padding:0;
font-size: 1.4rem;
font-weight: 400;
background:#F9F9FC;
margin:0;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li > a:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-right-gr.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
left: 0;
right:0;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2.parent {
margin-top:0;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2.parent > a:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-down-gr.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right:0;
left: 0;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2 a {
color:#7F7978;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2 a:hover {
color:#45ADCB;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv3 a {
color:#000;
font-weight:400;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv3 a:hover {
color:#45ADCB;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv3 > a:before {
display:none;
}
/*もっと詳しく知る*/
.header .header_menu .main_menu_sp ul li span {
color:#000;
padding:14px 17px 14px 50px;
font-size:1.2rem;
line-height:20px;
font-weight:700;
display:block;
position: relative;
z-index: 1;
color:#7F7978;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2.nolink:after {
display:none;
}
.header .header_menu .main_menu_sp ul li > .dropdownmenu ul > li.lv2.parent > span:before {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_circle-chevron-down-gr.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right:0;
left: 0;
}

/*** 閉じる ***/
.header .header_menu .navClose {
display:flex;
align-items: center;
justify-content: center;
width: fit-content;
margin: 0 auto;
cursor:pointer;
background:#fff;
border:1px solid #45ADCB;
border-radius:9999px;
font-size:1.2rem;
line-height:1;
padding:.4em 1em;
color:#45ADCB;
}
.header .header_menu .navClose img {
width:10px;
height:10px;
display:block;
margin-right:.5em;
}


/* ******************************************************************** */
/**** container ****/
/* ******************************************************************** */

/* ************************************************ */
/**** main ****/
/* ************************************************ */

/*************** ■採用情報 下階層 ***************/
/***** 選考スケジュール *****/
.recruit_lv2 .schedule ol {
display:block;
max-width:480px;
margin:auto;
}
.recruit_lv2 .schedule ol li {
width:100%;
margin-bottom: 40px;
}
.recruit_lv2 .schedule ol li:last-child {
margin-bottom:0;
}

.recruit_lv2 .schedule ol li:after {
top: calc(100% + 15px);
left: 50%;
border: 8px solid transparent;
border-top:6px solid #1A5FA8;
margin-top: 0;
margin-left: -6px;
}

/***** 募集要項 *****/
.recruit_lv2 .requirements .inner > dl > div {
padding:50px 50px;
}

/*************** ■サイトマップ ***************/

/***** サイトマップコンテンツ *****/
/* mainmenu */
.sitemap .sitemap_cont .main_menu {
display:block;
margin:0 0 30px 0;
padding-bottom: 0;
}
.sitemap .sitemap_cont .main_menu .main_menu_column {
width:100%;
}
.sitemap .sitemap_cont .main_menu ul li a {
font-size:1.2rem;
}
/*もっと詳しく知る*/
.sitemap .sitemap_cont .main_menu ul li.nolink span {
font-size:1.2rem;
}

/* sub_menu */
.sitemap .sitemap_cont .sub_menu ul li a {
font-size:1.2rem;
}

/* ******************************************************************** */
/**** footer ****/
/* ******************************************************************** */
.footer {
}
.footer .inner {
padding: 40px 0;
}
/***** ロゴ *****/
.footer .logo {
display:block;
margin:0 20px 30px 20px;
}
/***** footer_menu *****/
.footer .footer_menu {
}
/*** main_menu ***/
.footer .footer_menu .main_menu {
margin:0 0 20px 0;
display:block;
}
.footer .footer_menu .main_menu ul {
display:block;
text-align:left;
}
.footer .footer_menu .main_menu ul li {
padding:0;
background: #333;
border:1px solid #484848;
position:relative;
}
.footer .footer_menu .main_menu ul li:after {
content:"";
width:48px;
height:48px;
display:block;
background:url(../images/ic_allow-right_wh.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:0;
right: 0;
}
.footer .footer_menu .main_menu ul li.parent {
margin-top:-1px;
}
.footer .footer_menu .main_menu ul li a {
padding:14px 20px 14px 20px;
font-size:1.4rem;
line-height:20px;
font-weight:700;
display:block;
position: relative;
z-index: 1;
color:#7F7978;
text-decoration: none;
}
.footer .footer_menu .main_menu ul li a:hover {
color:#fff;
text-decoration:none;
}
.footer .footer_menu .main_menu ul li.off {
border-bottom:0;
}

/* dropdownmenu_switch */
.footer .footer_menu .main_menu ul li .dropdownmenu_switch {
width:48px;
height:48px;
display:block;
background:#000;
cursor:pointer;
z-index: 1;
position:absolute;
right:0;
top: 0;
}
.footer .footer_menu .main_menu ul li .dropdownmenu_switch:after {
content:"";
width:18px;
height:18px;
display:block;
background:url(../images/ic_plus_wh.svg) no-repeat center center;
background-size:18px 18px;
position:absolute;
top:50%;
left:50%;
transform: translate(-50%,-50%);
}
.footer .footer_menu .main_menu ul li.off .dropdownmenu_switch:after {
content:"";
width:18px;
height:18px;
display:block;
background:url(../images/ic_minus_wh.svg) no-repeat center center;
background-size:18px 18px;
}

/* ドロップダウンメニュー */
.footer .footer_menu .main_menu ul li > .dropdownmenu {
padding: 0 0 0 40px;
width: 100%;
position: relative;
border-top:1px solid #484848;
background:#000;

display:none;
opacity: 0;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu.openNav {
display:block;
opacity: 1;
}
.footer .footer_menu .main_menu ul li:hover > .dropdownmenu {
display:none;
opacity: 0;
}
.footer .footer_menu .main_menu ul li:hover > .dropdownmenu.openNav {
display:block;
opacity: 1;
}

.footer .footer_menu .main_menu ul li > .dropdownmenu .inner {
background:#fff;
width:100%;
padding:0;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu .dropdownmenu_title {
display:none;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu ul {
margin:0 auto;
padding:0;
width:1280px;
max-width:100%;
display: block;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu ul > li {
border:0;
border-bottom:1px solid #484848;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu ul > li.lv2 {
margin:0;
background:#000;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu ul > li.lv2 > ul {
margin:0;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu ul > li.lv2.parent {
margin-top:0;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu ul > li.lv2 a {
color:#fff;
font-size:1.2rem;
font-weight:400;
}
.footer .footer_menu .main_menu ul li > .dropdownmenu ul > li.lv2 a:hover {
color:#7F7978;
}

/*** TEL ***/
.footer .footer_menu .tel {
display: flex;
margin:0 20px 50px 20px;
}
.footer .footer_menu .tel a {
display:flex;
color:#45ADCB;
text-decoration:none;
}
.footer .footer_menu .tel a:hover {
color:#fff;
}
.footer .footer_menu .tel .type {
display:flex;
align-items: center;
font-size:1.2rem;
color:#ccc;
margin:0 .5em 0 0;
}
.footer .footer_menu .tel .type img {
margin:0 .5em 0 0;
}

/*** sub_menu ***/
.footer .footer_menu .sub_menu {
border-top:1px solid #484848;
margin:0 0 30px 0;
padding: 20px;
}
.footer .footer_menu .sub_menu ul {
display:flex;
justify-content: flex-start;
flex-wrap:wrap;
margin:0;
}
.footer .footer_menu .sub_menu ul li {
width:50%;
text-align:left;
margin: 0 0 .5em 0;
}
.footer .footer_menu .sub_menu ul li.sub_menu_sp_only {
display: block;
}
.footer .footer_menu .sub_menu ul li a {
color:#ccc;
font-size:1.2rem;
text-decoration:none;
display: block;
}
.footer .footer_menu .sub_menu ul li a:hover {
color:#fff;
}

/***** SNS・コピーライト *****/
.footer .footer_bottom {
display:block;
margin:0 ;
}
/*** sns_links ***/
.footer .footer_bottom .sns_links {
padding: 0 20px 20px 20px;
margin-bottom: 20px;
border-bottom: 1px solid #484848;
}
.footer .footer_bottom .sns_links ul {
justify-content: center;
}
.footer .footer_bottom .sns_links ul li {
margin:0 1em ;
}
/*** copyright ***/
.footer .footer_bottom .copyright {
text-align:center;
font-size:1rem;
}



}
