@import url('https://fonts.googleapis.com/css2?family=Klee+One:wght@400;600&family=Noto+Sans+JP:wght@100..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
.contact_line .hs-cta-embed-159000034676 {
 width: 100% !important;
}
/*--------------------------------------------------------------------------------
header
*/
.zen {
 font-family: "Zen Kaku Gothic New", sans-serif;
}
.noto {
 font-family: "Noto Sans JP", sans-serif;
}
.klee {
 font-family: "Klee One", cursive;
}
.wrap123 {
 max-width: 1230px;
 margin: 0 auto;
 width: 100%;
}
.wrap63 {
 max-width: 630px;
 margin: 0 auto;
 width: 100%;
}
.wrap95p {
 width: 94%;
}
a:hover {
 text-decoration: none;
}
#cover {
 padding-top: 80px;
 font-size: 17px;
 overflow: hidden;
 width: 99vw;
}
#header_rec {
 max-width: 1230px;
 position: relative;
 display: flex;
 margin: 6px auto;
}
.change_header {
 position: absolute;
 left: 5px;
 top: 19px;
 cursor: pointer;
 z-index: 12;
 transition: 0.3s ease-in-out;
}
.rec_change_header {
 z-index: 12;
}
.change_header.active {
 transform: rotate(90deg);
}
#header_cover {
 position: absolute;
 z-index: 10;
 background-color: #fff;
 top: 0;
 left: 0;
 width: 100%;
 height: 70px;
 transform: translateY(-95px);
 transition: 0.3s ease-in-out;
 font-size: 14px;
}
#header_cover #header_in {
 max-width: 1200px;
 width: 100%;
}
#header_cover #gobal_nav {
 top: 32px;
 right: 44px;
}
#header_cover #ss_search_btn {
 top: 28px;
}
#header_cover.active {
 transform: translateY(0px);
 box-shadow: 0 0 5px #00000024;
}
#header #header_cover h1 {
 padding-left: 20px;
 padding-top: 0;
}
#header_rec #site-logo img {
 width: 35px;
}
#header_rec #site-logo {
 padding-left: 35px;
 padding-right: 15px;
 padding-top: 7px;
}
#header_rec #site-name {
 text-align: center;
 padding: 0 15px;
 font-weight: 600;
}
#header_rec #site-name a {
 color: #124080;
 font-size: 12px;
}
#header_rec #site-name .en img {
 width: 85px;
 display: block;
 margin: 1px auto 0 auto;
 line-height: 1em;
}
#header_rec #in_nav ul li {
 float: left;
 position: relative;
 margin: 0 13px;
 font-size: 0.9em;
}
#header_rec #in_nav ul li.elink {
 margin: 0 2px;
}
#header_rec #in_nav {
 position: absolute;
 right: 0;
 top: 4px;
}
.page-template-page-recruit24-white-php #header {
 height: 75px;
 box-sizing: border-box;
}
#header_rec #in_nav ul li a {
 display: block;
 color: initial;
 font-weight: bold;
 text-decoration: none;
 padding: 12px 2px;
 position: relative;
 transition: 0.3s ease-in-out;
}
#header_rec #in_nav ul li.link_info a {
 background-color: #333;
 color: #fff;
 padding: 12px 30px;
 border-radius: 8px;
}
#header_rec #in_nav ul li.link_entry a {
 background-color: #124080;
 padding: 12px 10px;
 border-radius: 8px;
}
#header_rec #in_nav ul li.link_info a:hover {
 color: #fff;
 background-color: #636363;
}
#header_rec #in_nav ul li.link_entry a:hover {
 color: #fff;
 background-color: #225aa7;
}
#header_rec #in_nav ul li a:after {
 content: "";
 width: 0%;
 height: 3px;
 background-color: #124080;
 position: absolute;
 bottom: 3px;
 border-radius: 150px;
 left: 50%;
 transition: 0.3s ease-in-out;
}
#header_rec #in_nav ul li a:hover {
 color: #124080;
}
#header_rec #in_nav ul li:not(.elink):hover a:after, #header_rec #in_nav ul li:not(.elink).active a:after {
 width: 44%;
 left: 28%;
}
/*-----------------------------------
Top image
*/
.rec_mainimage {
 border-radius: 15px;
 overflow: hidden;
 position: relative;
 margin: 20px 0;
 z-index: 2 !important;
}
.slide_images p {
 position: absolute;
 z-index: 0;
 top: 0;
 height: 100%;
 transform: translateX(-100%);
 transition: 1s cubic-bezier(0.2, 0, 0.08, 1.03);
}
.slide_images p img {
 height: 100%;
}
.slide_images .s1 {
 z-index: 3;
}
.slide_images .s2 {
 z-index: 2;
}
.slide_images .s3 {
 z-index: 1;
}
.slide_images p.first {
 transform: translateX(0%);
}
.slide_images p.second {
 transform: translateX(100%);
}
.slide_images p.third {
 transform: translateX(200%);
}
.rec_mainimage .catch {
 position: absolute;
 right: 0.5em;
 bottom: 1em;
 z-index: 777;
 color: #fff;
 font-size: 4em;
 text-align: right;
 font-family: "Noto Sans JP", sans-serif;
 text-shadow: 1px 1px 8px #00000026, 1px 1px 8px #000;
 letter-spacing: 0px;
 line-height: 1.4em;
 font-weight: 900;
 transition: 1s cubic-bezier(0.2, 0, 0.08, 1.03);
 opacity: 0;
 filter: blur(7px);
}
.rec_mainimage .catch.active {
 opacity: 1;
 filter: blur(0px);
}
/*-----------------------------------
Message
*/
#rec_message {
 margin-top: 150px;
 position: relative;
 z-index: 1;
}
#rec_message:after {
 content: "";
 background-image: url(img/SVG/dia_b.svg);
 transform: rotate(45deg);
 position: absolute;
 background-position: center;
 background-size: 100%;
 background-repeat: no-repeat;
 top: 2em;
 width: 17em;
 height: 17em;
 left: -17em;
 opacity: 0;
 z-index: 6;
 transition: 2.3s ease-in-out;
}
#rec_message:before {
 content: "";
 background-image: url(img/SVG/dia_b.svg);
 transform: rotate(45deg);
 position: absolute;
 background-position: center;
 background-size: 100%;
 background-repeat: no-repeat;
 width: 17em;
 height: 17em;
 right: -17em;
 top: -9em;
 opacity: 0;
 z-index: 6;
 transition: 2.3s ease-in-out;
}
#rec_message.active:after {
 opacity: 1;
 left: -7em;
}
#rec_message.active:before {
 opacity: 1;
 right: -7em;
}
.rTitle {
 position: relative;
 z-index: 5;
 text-align: center;
 line-height: 1em;
}
.uppercase {
 text-transform: uppercase;
}
.rTitle.rStyle1 {
 margin-bottom: 110px;
}
.write_text, .rTitle .in {
 white-space: nowrap;
 overflow: hidden;
 display: inline-block;
 line-height: 1em;
 transition: 2s ease-in-out;
}
.write_text {
 width: 0%;
}
p.active .write_text {
 width: 100%;
}
.rTitle.rStyle2 .in {
 transition-delay: 0s;
 width: auto;
}
.write_text {
 transition-delay: 0s;
}
.rTitle .dia {
 position: absolute;
 left: calc(50% - 45px);
 width: 90px;
 height: 90px;
 top: -0.3em;
 background-image: url(img/SVG/dia.svg);
 background-position: center;
 background-repeat: no-repeat;
 background-size: 100% auto;
 transform: rotate(0deg);
 transition: 1s ease-in-out;
 z-index: 10;
}
.rTitle.active .dia {
 left: 17em;
 transform: rotate(45deg);
}
.rTitle .first .in {
 transition-duration: 6s;
}
.rTitle .first {
 text-align: center;
 font-size: 2.7em;
 padding-left: 3em;
 display: block;
}
.rTitle .back {
 font-size: 4.5em;
 position: absolute;
 display: block;
 left: 4em;
 text-align: center;
 color: #003e82;
 opacity: 0.05;
 box-sizing: border-box;
 top: -0.25em;
 padding-left: 1em;
}
.rec_message {
 font-weight: 900;
 font-size: 1.3em;
 line-height: 1.8em;
 margin: 80px 0;
}
#rec_message .message {
 position: relative;
 height: 4em;
 font-size: 1.1em;
}
#rec_message .message p {
 position: absolute;
 left: 0;
 top: 0;
 width: 100%;
}
.color_blue {
 color: #003174;
 font-size: 1.1em;
}
a.chro_message_a {
 color: initial;
 display: block;
 transition: 0.3s ease-in-out;
 opacity: 0;
 top: 20px;
 position: relative;
 z-index: 2;
}
a.chro_message_a.active {
 opacity: 1;
 top: 0;
}
a.chro_message_a:hover .chro_message:after {
 left: 60px;
}
a.chro_message_a:hover {
 background-color: #fdfdfb;
}
.chro_message {
 max-width: 1100px;
 margin: 0 auto;
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/05/chro.jpg);
 background-repeat: no-repeat;
 background-position: right top;
 box-sizing: border-box;
 padding: 50px 50px;
 min-height: 280px;
 background-size: auto 100%;
 position: relative;
}
.chro_message h3 {
 color: #124080;
 font-size: 1.8em;
 line-height: 1.4em;
 font-weight: 800;
 margin-bottom: 15px;
}
.chro_message .pickm {
 font-size: 1.7em;
 line-height: 1.5em;
 letter-spacing: 1px;
}
.chro_message:after {
 content: "";
 position: absolute;
 left: 50px;
 bottom: 10px;
 width: 50px;
 height: 50px;
 background-image: url(img/SVG/link_blue.svg);
 background-position: center;
 background-repeat: no-repeat;
 background-size: 100% auto;
 transition: 0.3s ease-in-out;
}
.v2 .chro_message {
 background-position: left top;
}
.v2 .chro_message h3, .v2 .chro_message .pickm {
 text-align: right;
}
.v2 .chro_message:after {
 left: auto;
 right: 50px;
}
a.chro_message_a.v2:hover .chro_message:after {
 right: 40px;
 left: auto;
}
/*-----------------------------------
About
*/
.bottom_text {
 line-height: 1.6em;
}
.align_center {
 align-items: center;
 display: flex;
}
article .ra_title {
 font-size: 1.8em;
 line-height: 1.6em;
 color: #124080;
}
.lineheight2 {
 line-height: 2em;
}
.lightblue_back {
 background-color: #f1f5fa;
 padding: 70px 0;
}
.lightblue_back h4 {
 margin-bottom: 1em;
 font-size: 1.3em;
}
.lightblue_back table td {
 border-left: none;
 border-right: none;
 border-top: 1px dotted #a7aecd;
 border-bottom: 1px dotted #a7aecd;
 padding: 15px;
 font-weight: 500;
}
.text-content p {
 margin-bottom: 1.5em;
}
.text-content h4 {
 margin: 1.5em 0 1em 0;
}
.fresh_about_history {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 margin: 100px 0 60px 0;
}
.grid {
 display: grid;
}
.fresh_about_history .grid {
 grid-column: 1 / 2;
 grid-template-rows: 8em 1fr 1.2fr 0.5fr;
 padding: 60px 30px 10px 30px;
 position: relative;
}
.fresh_about_history .grid:before {
 content: "";
 position: absolute;
 left: -35px;
 top: 86px;
 width: 70px;
 height: 20px;
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/04/yright.svg);
 background-repeat: no-repeat;
 background-size: 100% auto;
 z-index: 10;
}
.fresh_about_history .grid:first-child:before {
 display: none;
}
.fresh_about_history .grid .head h3 {
 font-size: 4em;
 line-height: 1em;
}
.fresh_about_history .grid .head h3.zen.ybe {
 position: relative;
 top: -0.7em;
}
.fresh_about_history .grid .head h3 .be {
 display: block;
 line-height: 1em;
 font-size: 0.5em;
}
.fresh_about_history .grid .head .sougyou {
 position: absolute;
 top: -22px;
 left: 0;
 width: 100%;
 font-weight: bold;
 text-align: center;
 font-size: 1.5em;
 line-height: 1em;
}
.fresh_about_history .grid:nth-child(odd) {
 background-color: #f1f5fa;
}
.fresh_about_history .grid .head {
 grid-row: 1 / 2;
 position: relative;
 text-align: center;
}
.fresh_about_history .grid .event {
 grid-row: 2 / 3;
 display: flex;
 flex-wrap: wrap;
 align-items: center;
}
.fresh_about_history .grid .service {
 grid-row: 3 / 4;
 border-top: 1px dotted#124080;
 padding-top: 10px;
 margin-top: 10px;
}
.fresh_about_history .grid .service h4 {
 margin: 15px 0;
 text-align: center;
 color: #6090cb;
}
.fresh_about_history .grid .img {
 grid-row: 4 / 5;
}
.fresh_about_history .grid:nth-child(2) {
 grid-column: 2 /3;
}
.fresh_about_history .grid:nth-child(3) {
 grid-column: 3 /4;
}
.fresh_about_history .grid:nth-child(4) {
 grid-column: 4 /5;
}
.fresh_about_history .grid .event p {
 padding-left: 20px;
 position: relative;
 line-height: 1.6em;
 width: 100%;
 font-weight: bold;
 margin: 7px 0;
}
.fresh_about_history .grid .event p:before {
 content: "";
 position: absolute;
 left: 0;
 top: 6px;
 width: 15px;
 height: 15px;
 border-radius: 5px;
 background-color: #124080;
}
.fres_about_service .desc li, .fresh_about_history .grid .service li {
 padding-left: 15px;
 margin: 8px 0;
 position: relative;
 font-weight: bold;
 line-height: 1.6em;
}
.fres_about_service .desc li:before, .fresh_about_history .grid .service li:before {
 content: "";
 position: absolute;
 left: 1px;
 top: 10px;
 width: 4px;
 background-color: #272727;
 height: 4px;
 border-radius: 150%;
}
.fresh_about_history .ass_toyama {
 position: absolute;
 top: -56px;
 left: -77px;
 text-align: center;
 background-color: #124080;
 color: #fff;
 padding: 10px;
 border-radius: 12px;
 font-weight: bold;
}
.fresh_about_history .ass_toyama span {
 display: block;
}
.fresh_about_history .ass_toyama .zen {
 font-size: 1.6em;
 line-height: 1em;
 margin-bottom: 6px;
}
.fresh_about_history .ass_toyama:after {
 content: "";
 left: calc(50% - 5px);
 border-width: 10px;
 border-style: solid;
 border-color: #124080 transparent transparent transparent;
 position: absolute;
 bottom: -19px;
}
.fres_about_service {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 column-gap: 10px;
}
.fres_about_service .grid {
 background-color: #124080;
 border-radius: 12px;
 padding: 15px;
 grid-template-rows: 4em 5em 8em 1fr 0.5fr;
}
.fres_about_service .head h3 {
 text-align: center;
 color: #fff;
 line-height: 1.6em;
}
.fres_about_service .catch {
 background-color: #fff;
 text-align: center;
 padding: 8px 1em;
 color: #124080;
 font-size: 1.1em;
 line-height: 1.3em;
 display: flex;
 justify-content: center;
 align-items: center;
}
.fres_about_service .text {
 background-color: #fff;
 padding: 1em;
}
.fres_about_service .desc {
 background-color: #fff;
 padding: 0 1em;
}
.fres_about_service .img {
 background-color: #fff;
 text-align: center;
 display: flex;
 align-items: center;
 justify-content: center;
 padding-right: 15px;
}
.fres_about_service .img img {
 width: 100px;
}
.fres_about_service .head {
 display: flex;
 justify-content: center;
 align-items: center;
}
.fresh_culture_grid li {
 background-color: #d8e6f4;
 text-align: center;
 font-weight: bold;
 display: flex;
 justify-content: center;
 align-items: center;
 color: #124080;
 border-radius: 12px;
 padding: 15px 0;
 line-height: 1.3em;
 font-size: 1.3em;
}
.fresh_culture_grid ul {
 gap: 10px;
 display: grid;
 grid-template-rows: repeat(3, 1fr);
 grid-template-columns: repeat(3, 1fr);
 max-width: 900px;
 margin: 0 auto;
 width: 90%;
}
.fresh_culture_grid {
 margin: 0 0 20px 0;
}
.fresh_culture_grid li.center {
 background-color: #ff8e50;
 color: #fff;
}
.fresh_work_style {
 display: flex;
 flex-wrap: wrap;
}
.fresh_work_style dl {
 width: 50%;
 position: relative;
}
.fresh_work_style dl img {
 width: 100%;
}
.fresh_work_style dd {
 position: absolute;
 bottom: 0;
 width: 100%;
 left: 0;
 font-weight: bold;
 color: #fff;
 text-align: center;
 font-size: 1.5em;
 line-height: 1.3em;
 padding: 24px 1em 15px 1em;
 background: linear-gradient(0deg, #000000a6 0%, #00000061 60%, transparent 100%);
 text-shadow: 0 0 5px #000;
 box-sizing: border-box;
}
.fresh_work_style {
 margin: 30px 0;
}
.fresh_about_bottom h3 {
 padding: 20px 0 0 0;
 font-size: 4em;
 line-height: 1.2em;
 background-color: #124080;
 color: #fff;
}
.fresh_about_bottom .text_p {
 padding: 10px 0 20px 0;
 font-size: 2em;
 font-weight: bold;
 line-height: 1.2em;
 background-color: #124080;
 color: #fff;
}
/*-----------------------------------
About Animation
*/
.hrt-joy img {
 transform: rotate3d(0, 1, 0, 0deg);
 animation: hrt 3.2s 0s ease infinite;
}
@keyframes hrt {
 0% {
  transform: rotate3d(0, 1, 0, 0deg);
 }
 50% {
  transform: rotate3d(0, 1, 0, 180deg);
 }
 100% {
  transform: rotate3d(0, 1, 0, 360deg);
 }
}
.add_ac.fade_up {
 opacity: 0;
 position: relative;
 top: 30px;
 transition: 0.3s ease-in-out;
}
.add_ac.fade_up.active {
 opacity: 1;
 top: 0;
}
.add_ac.ac_column > .wp-block-column {
 opacity: 0;
 position: relative;
 left: -30px;
 top: 30px;
 transition: 0.3s ease-in-out;
}
.add_ac.ac_column > .wp-block-column:last-child {
 left: auto;
 right: -30px;
}
.add_ac.ac_column.active > .wp-block-column {
 top: 0;
 left: 0;
 right: 0;
 opacity: 1;
}
.add_ac.ac_column.active > .wp-block-column:last-child {
 left: auto;
 right: 0;
}
.fresh_columns_animate4.add_ac .grid {
 opacity: 0;
 position: relative;
 left: -30px;
 transition: 0.3s ease-in-out;
}
.fresh_columns_animate4.fres_about_service.add_ac .grid {
 left: auto;
 right: -30px;
}
.fresh_columns_animate4.add_ac.active .grid {
 left: 0;
 opacity: 1;
}
.fresh_columns_animate4.fres_about_service.add_ac.active .grid {
 left: auto;
 right: 0;
}
.fresh_columns_animate4.add_ac.active .grid:nth-child(2) {
 transition-delay: 0.3s;
}
.fresh_columns_animate4.add_ac.active .grid:nth-child(3) {
 transition-delay: 0.6s;
}
.fresh_columns_animate4.add_ac.active .grid:nth-child(4) {
 transition-delay: 0.9s;
}
.fresh_columns_animate4.fres_about_service.add_ac.active .grid:nth-child(4) {
 transition-delay: 0s;
}
.fresh_columns_animate4.fres_about_service.add_ac.active .grid:nth-child(3) {
 transition-delay: 0.3s;
}
.fresh_columns_animate4.fres_about_service.add_ac.active .grid:nth-child(2) {
 transition-delay: 0.6s;
}
.fresh_columns_animate4.fres_about_service.add_ac.active .grid:nth-child(1) {
 transition-delay: 0.9s;
}
.fresh_culture_grid.add_ac li {
 opacity: 0;
 transition: 0.3s ease-in-out;
}
.fresh_culture_grid.add_ac li:nth-child(4), .fresh_culture_grid.add_ac li:nth-child(2) {
 transition-delay: 0.1s;
}
.fresh_culture_grid.add_ac li:nth-child(7), .fresh_culture_grid.add_ac li:nth-child(5), .fresh_culture_grid.add_ac li:nth-child(3) {
 transition-delay: 0.2s;
}
.fresh_culture_grid.add_ac li:nth-child(8), .fresh_culture_grid.add_ac li:nth-child(6) {
 transition-delay: 0.3s;
}
.fresh_culture_grid.add_ac li:nth-child(9) {
 transition-delay: 0.4s;
}
.fresh_culture_grid.add_ac.active li {
 opacity: 1;
}
/*-----------------------------------
Who we are
*/
#whoweare {
 margin: 90px 0 150px 0;
 position: relative;
 background-color: #fff;
 z-index: 2;
 padding-top: 60px;
}
#whoweare:after {
 content: "";
 position: absolute;
 background-color: rgb(18 64 128 / 10%);
 border-radius: 50px;
 width: 60vw;
 height: 38em;
 left: -8em;
 top: 9em;
 opacity: 0;
 transition: 1.8s ease-in-out;
}
#whoweare.active:after {
 opacity: 1;
 left: -5vw;
}
.rTitle.rStyle2 {
 text-align: right;
 margin-bottom: 80px;
}
.rTitle.rStyle2 .first {
 text-align: right;
 padding-left: 0;
 padding-right: 2em;
 position: relative;
}
.rTitle.rStyle2 .back {
 padding-right: 1em;
 left: 0;
 text-align: right;
 width: 100%;
}
.rTitle .first:after, .rTitle .back:after {
 content: "";
 position: absolute;
 right: 0;
 top: 0;
 width: 100%;
 height: 100%;
 background-color: #fff;
 z-index: 1;
 transition: 1.2s ease-in-out;
}
.rTitle.active .first:after, .rTitle.active .back:after {
 width: 0%;
}
.rTitle.rStyle2 .dia {
 left: auto;
 right: calc(50% - 45px);
 z-index: 2;
}
.rTitle.rStyle2.active .dia {
 right: -15px;
 transform: rotate(45deg);
}
.rTitle.rStyle2 .first .in {
 transition-duration: 4s;
}
#whoweare .whoBox {
 position: relative;
 z-index: 2;
 max-width: 900px;
 margin: 0 auto;
 padding: 150px 0 30px 0;
 box-sizing: border-box;
 width: 94%;
 height: 600px;
}
.whoBox ul {
 display: flex;
 position: relative;
 left: 0;
 column-gap: 30px;
 justify-content: center;
}
.whoBox ul li {
 width: 33.33%;
 position: relative;
 z-index: 1;
 transition: bottom 0.3s ease-in-out, opacity 0.6s 0.6s ease-in-out, transform 0.6s 0.6s ease-in-out;
 bottom: 0;
 opacity: 0;
}
.whoBox ul li.ad_right {
 transform: translateX(-50px);
}
.whoBox ul li.ad_left {
 transform: translateX(50px);
}
.whoBox ul li.ad_center {
 transform: translateY(50px);
}
#whoweare.active .whoBox ul li {
 opacity: 1;
 transform: translateX(0);
}
#whoweare.active .whoBox ul li.ad_center {
 transform: translateY(0);
}
.whoBox ul li img {
 max-width: 100%;
 height: auto;
}
.whoBox ul li a {
 display: block;
 overflow: hidden;
 box-shadow: 8px 8px 0 #124080, 8px 8px 15px #000000a8;
 border-radius: 15px;
 margin-left: 0;
 width: 100%;
 color: #fff;
 transition: 0.3s ease-in-out;
 position: absolute;
 left: 0;
}
.whoBox ul li a .in {
 position: absolute;
 left: 0;
 padding-top: 1em;
 top: 0;
 width: 100%;
 height: 100%;
 display: flex;
 justify-content: center;
 align-items: center;
}
.whoBox ul li h3 {
 text-align: center;
 line-height: 1em;
 font-size: 2.8em;
 text-shadow: 1px 1px 8px #00000026, 1px 1px 8px #000;
}
.whoBox ul li h3 span {
 display: block;
 font-size: 0.45em;
}
.whoBox ul li .in p {
 text-align: center;
 margin-top: 10px;
}
.whoBox ul li:hover a {
 width: 150%;
 left: -25%;
}
.whoBox ul li:hover {
 z-index: 3;
 bottom: 160px;
 height: 600px;
 font-size: 1.4em;
}
/*-----------------------------------
Interview
*/
#interview {
 margin: 150px 0 200px 0;
 position: relative;
}
#interview:after {
 content: "";
 transform: rotate(0deg);
 position: absolute;
 width: 55vw;
 height: 40em;
 right: -15em;
 top: 4em;
 background-color: rgb(18 64 128 / 10%);
 border-radius: 50px;
 opacity: 0;
 transition: 2s ease-in-out;
}
#interview.active:after {
 opacity: 1;
 right: 0;
}
.rTitle.rStyle3 {
 margin-bottom: 30px;
}
.rTitle.rStyle3.active .dia {
 left: 0;
 transform: rotate(45deg);
}
.rTitle.rStyle3.active .first:after, .rTitle.rStyle3.active .back:after {
 transition-delay: 1s;
}
.rTitle.rStyle3 .first {
 text-align: left;
 transform: rotate(90deg);
 transform-origin: 0 100%;
 padding-left: 1em;
}
.rTitle.rStyle3 .in {
 width: auto;
}
.rTitle.rStyle3 .back {
 text-align: left;
 transform: rotate(90deg);
 transform-origin: 0 100%;
 padding-left: 0px;
 left: -0.15em;
 top: 0;
}
#interview .intBox {
 position: relative;
 z-index: 2;
 margin: 0 auto;
 width: 90%;
 margin-left: 10%;
}
#interview .intBox ul {
 display: flex;
 gap: 30px;
}
#interview .intBox ul.slick_mode {
 display: block;
}
#interview .intBox ul.slick_mode .slick-list.draggable {
 padding-bottom: 60px !important;
}
#interview.active .intBox .slick_mode li {
 margin: 0 15px;
}
#interview .intBox ul.slick_mode button {
 position: absolute;
 left: 0;
 top: 45%;
 z-index: 10;
 background-image: url(img/SVG/link_blue.svg);
 background-position: center;
 background-repeat: no-repeat;
 background-size: 90% auto;
 border: none;
 text-indent: -1000px;
 width: 50px;
 height: 50px;
 border-radius: 150%;
 background-color: #12417f;
 overflow: hidden;
 transform: rotate(180deg);
 cursor: pointer;
}
#interview .intBox ul.slick_mode button.slick-next {
 right: 0;
 left: auto;
 transform: rotate(0deg);
}
#interview .intBox ul dt {
 overflow: hidden;
 border-radius: 15px;
 margin-bottom: 20px;
 box-shadow: 3px 3px 8px #0000005c;
 background-color: #dddddd96;
}
#interview .intBox ul dt img {
 transition: transform 0.3s ease-in-out;
 transform: scale(1);
}
#interview .intBox ul li:hover dt img {
 transform: scale(1.1);
}
#interview .intBox ul li:nth-child(3) dt img {
 transition: opacity 0.3s 2.4s ease-in-out, transform 0.3s ease-in-out;
}
#interview .intBox ul li:nth-child(2) dt img {
 transition: opacity 0.3s 2.7s ease-in-out, transform 0.3s ease-in-out;
}
#interview .intBox ul dd {
 text-align: center;
 color: initial;
 position: relative;
 padding-bottom: 5px;
}
#interview .intBox ul dd p {
 margin: 8px 0;
}
#interview .intBox ul li.center {
 top: 0;
}
#interview .intBox li {
 position: relative;
 transition: 0.3s 0.5s ease-in-out;
 top: -55px;
 opacity: 0;
}
#interview .intBox li:nth-child(2) {
 transition-delay: 0.8s;
}
#interview .intBox li:nth-child(3) {
 transition-delay: 1.1s;
}
#interview.active .intBox li {
 top: 0;
 opacity: 1;
 max-width: 320px;
}
#interview.active .intBox ul li:nth-child(even) {
 top: 55px;
}
#interview .intBox ul dd:after {
 content: "";
 position: absolute;
 right: 5px;
 bottom: 0;
 width: 30px;
 height: 30px;
 background-image: url(img/SVG/link_blue.svg);
 background-position: center;
 background-repeat: no-repeat;
 background-size: 100% auto;
}
#interview.bottom_page:after {
 display: none;
}
/*-----------------------------------
CrossTalk
*/
#crosstalk {
 position: relative;
 z-index: 6;
}
#crosstalk .wrap123 {
 width: 94%;
}
#crosstalk.active:after {
 opacity: 1;
 left: 0;
}
#crosstalk:after {
 content: "";
 transform: rotate(0deg);
 position: absolute;
 width: 55vw;
 height: 40em;
 left: -15em;
 top: 3em;
 background-color: rgb(18 64 128 / 10%);
 border-radius: 50px;
 opacity: 0;
 transition: 2s ease-in-out;
}
#crosstalk .intBoxCross {
 position: relative;
 z-index: 5;
 text-align: center;
 padding-right: 3em;
 padding-top: 7em;
}
#crosstalk .intBoxCross img {
 border-radius: 20px;
 box-shadow: 0 3px 12px #0000004d;
}
#crosstalk .intBoxCross h3 {
 font-weight: 900;
 position: absolute;
 left: 0;
 top: 4em;
 width: 100%;
 text-align: center;
 z-index: 7;
 font-size: 2.2em;
 text-shadow: 0 0 8px #fff, 0 0 8px #fff, 0 0 8px #fff;
 color: #124080;
 line-height: 1em;
}
#crosstalk .intBoxCross * {
 opacity: 0;
 transition: opacity 0.6s 0.6s ease-in-out;
}
#crosstalk .intBoxCross.active * {
 opacity: 1;
}
.rTitle.rStyle6 {
 margin-bottom: 30px;
}
.rTitle.rStyle6 .dia {
 left: auto;
 right: 40%;
}
.rTitle.rStyle6.active .dia {
 right: 0%;
 transform: rotate(45deg);
}
.rTitle.rStyle6.active .first:after, .rTitle.rStyle6.active .back:after {
 transition-delay: 1s;
}
.rTitle.rStyle6 .first {
 text-align: left;
 left: auto;
 transform: rotate(90deg);
 transform-origin: 100% 100%;
 padding-left: 0;
 position: absolute;
 right: 1em;
 top: 6.8em;
 line-height: 1em;
}
.rTitle.rStyle6 .in {
 width: auto;
}
.rTitle.rStyle6 .back {
 text-align: left;
 transform: rotate(90deg);
 transform-origin: 100% 100%;
 padding-left: 0px;
 top: 6em;
 right: 0.8em;
 left: auto;
 position: absolute;
 line-height: 1em;
}
/*-----------------------------------
Environment
*/
#environment {
 margin: 300px 0 200px 0;
 position: relative;
 z-index: 6;
}
#environment:after, #environment:before {
 content: "";
 position: absolute;
 width: 40em;
 height: 40em;
 left: -40em;
 transform: rotate(45deg);
 top: 2em;
 background-color: rgb(18 64 128 / 10%);
 border-radius: 50px;
 opacity: 0;
 transition: 2s ease-in-out;
}
#environment:before {
 right: -40em;
 left: auto;
 top: 5em;
}
#environment.active:after {
 opacity: 1;
 left: -25em;
}
#environment.active:before {
 opacity: 1;
 right: -25em;
}
.rTitle.rStyle4 .flex > span {
 position: relative;
 width: calc(50% - 75px);
}
.rTitle.rStyle4 .first, .rTitle.rStyle4 .back {
 padding: 0;
 text-align: right;
}
.rTitle.rStyle4 .flex {
 gap: 150px;
 flex-wrap: nowrap;
}
.rTitle.rStyle4.active .dia {
 left: calc(50% - 45px);
}
.rTitle.rStyle4 .right .first {
 text-align: left;
}
.rTitle.rStyle4 .left .back {
 right: 0;
 left: auto;
}
.rTitle.rStyle4 .right .back {
 left: -14px;
 right: auto;
}
.rTitle.rStyle4 .in {
 width: 100%;
}
.rTitle.rStyle4 .left .first:after, .rTitle.rStyle4 .left .back:after {
 left: 0;
 right: auto;
}
#environment .envBox {
 max-width: 900px;
 margin: 100px auto 0 auto;
 position: relative;
 padding-top: 50px;
}
#environment .envBox:after {
 content: "";
 position: absolute;
 width: 40em;
 height: 30em;
 left: -25em;
 top: 2em;
 border-radius: 50px;
 background-image: url("img/env_back.webp");
 background-position: center;
 background-repeat: no-repeat;
 background-size: cover;
 opacity: 0;
 z-index: 1;
 transition: 2.5s ease-in-out;
}
#environment.active .envBox:after {
 opacity: 1;
 left: -20em;
}
.envBox ul {
 position: relative;
 z-index: 2;
}
.envBox ul li {
 width: 280px;
 margin: 0 auto;
 position: relative;
 opacity: 0;
 transform: translateY(50px) rotate(45deg);
 transition: 0.3s 0.5s ease-in-out;
 overflow: hidden;
 border-radius: 20px;
 box-shadow: 3px 3px 8px #0000005c;
}
.envBox ul li:nth-child(2) {
 top: -3.5em;
 left: 13em;
 transition-delay: 0.8s;
}
.active .envBox ul li {
 opacity: 1;
 transform: translateY(0px) rotate(45deg);
}
.active .envBox ul li:hover img {
 transform: scale(1.1);
}
.envBox ul li h3 {
 transform: rotate(-45deg);
 position: absolute;
 width: 100%;
 height: 100%;
 left: 0;
 top: 0;
 display: flex;
 justify-content: center;
 align-items: center;
 z-index: 1;
 color: #fff;
 line-height: 1.1em;
 font-size: 3.6em;
 text-shadow: 1px 1px 8px #00000026, 1px 1px 8px #000;
 padding-top: 0.1em;
}
.envBox ul li h3 .icon {
 display: block;
 text-align: center;
 line-height: 1em;
 height: 30px;
}
/*-----------------------------------
Related Posts
*/
.rTitle.rStyle5.active .dia {
 left: 0;
}
.rTitle.rStyle5 .back, .rTitle.rStyle5 .first {
 left: 0;
 text-align: left;
 padding: 0 0 0 130px;
}
.rTitle.rStyle5.active .first:after, .rTitle.rStyle5.active .back:after {
 left: 0;
 right: auto;
}
.rec_related_box {
 max-width: 1000px;
 margin: 0 auto;
 width: 94%;
}
.rec_related_box .clGpost ul {
 gap: 30px;
 justify-content: center;
}
.rec_related_box .clGpost ul li {
 width: calc(25% - 22.5px);
 opacity: 0;
 transform: translateY(50px);
 padding: 0;
 transition: 0.3s 0.5s ease-in-out;
}
.rec_related_box .clGpost ul li:nth-child(2) {
 transition-delay: 0.8s;
}
.rec_related_box .clGpost ul li:nth-child(3) {
 transition-delay: 1.1s;
}
.rec_related_box .clGpost ul li:nth-child(4) {
 transition-delay: 1.4s;
}
.rec_related_box .clGpost ul li:nth-child(4) {
 transition-delay: 1.7s;
}
.rec_related_box.active .clGpost ul li {
 opacity: 1;
 transform: translateY(0px);
 padding-bottom: 18px;
 background-image: url(img/SVG/link_blue.svg);
 background-position: center bottom;
 background-repeat: no-repeat;
 background-size: 30px auto;
}
.rec_related_box .clGpost ul li dt {
 overflow: hidden;
 box-shadow: 10px 10px 0 #124080;
 margin-bottom: 15px;
 border-radius: 15px;
}
.rec_related_box .clGpost ul dl {
 overflow: visible;
}
.rec_related_box .clGpost ul li dd {
 position: static;
 opacity: 1;
 background-color: transparent;
 color: initial;
 width: auto;
}
.rec_related_box .clGpost ul li .ex, .rec_related_box .clGpost ul li .more {
 display: none;
}
.rec_related_box .clGpost ul li img {
 transition: 0.3s ease-in-out;
}
.rec_related_box .clGpost ul li:hover img {
 transform: scale(1.1);
}
.rec_related_box .clGpost ul li dd .title {
 font-weight: 500;
 text-align: center;
 font-size: 0.9rem;
 line-height: 1.8em;
}
/*-----------------------------------
bottom link
*/
.rec_bottom_links {
 background-color: rgb(0 62 130 / 10%);
 text-align: center;
 padding: 55px 0;
 margin-top: 60px;
}
.rec_bottom_links .flex {
 display: flex;
 flex-wrap: nowrap;
 justify-content: center;
 gap: 30px;
}
.rec_bottom_links a {
 display: block;
 background-color: #000;
 color: #fff;
 font-weight: bold;
 font-size: 2em;
 line-height: 1em;
 padding: 20px 1em;
 border-radius: 15px;
 max-width: 330px;
 width: 50%;
 box-sizing: border-box;
 letter-spacing: 0;
}
.rec_bottom_links a:hover {
 text-decoration: none;
 opacity: 0.7;
}
.rec_bottom_links a.entry {
 background-color: #124080;
}
/*-----------------------------------
Video
*/
.recruit_video_page {
 margin-bottom: 60px;
}
/*-----------------------------------
Interview page
*/
.rec_inter_titles .color_blue {
 font-size: 0.7em;
 line-height: 1em;
 display: block;
 margin: 3px 0;
}
.rec_inter_titles .color_blue {
 font-size: 0.7em;
 line-height: 1em;
 display: block;
 margin: 3px 0;
}
.recruit_interview_content {
 p, .wrap1080 {
  max-width: 1080px;
  width: 94%;
  margin: 0 auto 1.5em auto;
  padding-left: 12px;
  line-height: 1.8em;
  position: relative;
  z-index: 2;
  box-sizing: border-box;
 }
 .wrap1080 {
  padding-left: 0;
 }
 .wrap1080 p, .wp-block-column p {
  width: auto;
 }
 h3 {
  border-left: 4px solid #124080;
  color: #124080;
  font-size: 1.3em;
  line-height: 1.3em;
  padding: 25px 0 8px 15px;
  margin: 1em auto 25px auto;
  max-width: 1080px;
  width: 94%;
  position: relative;
  z-index: 2;
  box-sizing: border-box;
 }
 h3.mHeading {
  font-size: 1.4em;
  padding: 8px 0 8px 15px;
 }
 h4 {
  color: #124080;
  padding-left: 12px;
  font-size: 1.2em;
  line-height: 1.4em;
  margin: 0.5em auto 10px auto;
 }
 .wp-block-columns {
  max-width: 1080px;
  width: 94%;
  margin: 4em auto;
 }
 .fit_column .wp-block-columns {
  width: auto;
  margin: 1em auto;
 }
 .wp-block-image figure img, figure.wp-block-image img {
  border-radius: 15px;
  box-shadow: 2px 2px 5px #00000052;
 }
 .zadankai_photos .wp-block-column {
  padding: 50px;
 }
 .zadankai_photos .wp-block-column img {
  box-shadow: none;
  border-radius: 3px;
  margin-bottom: 10px;
 }
 figure.wp-block-image.icon img {
  box-shadow: none;
 }
 figure.wp-block-image.icon + p {
  padding-left: 0;
  font-weight: 600;
  margin-top: 9px;
 }
 h3 .name {
  position: relative;
  z-index: 2;
 }
 h3 .num {
  position: absolute;
  left: 10px;
  top: 14px;
  font-size: 3em;
  font-weight: 100;
  z-index: 1;
  color: #f1f1f1;
 }
 ol.easy-footnotes-wrapper {
  max-width: 1080px;
  margin: 0 auto;
  background-color: #f5f7f9;
  font-size: 0.8em;
  padding: 25px 25px 25px 40px;
  box-sizing: border-box;
 }
 ol.easy-footnotes-wrapper li {
  list-style: decimal;
 }
 ol.easy-footnotes-wrapper a {
  text-decoration: underline;
 }
}
.recruit_interview_page.active {
 header:after {
  opacity: 1;
  left: -20em;
 }
}
.recruit_interview_page {
 position: relative;
 header {
  margin-bottom: 60px;
 }
 header:after {
  content: "";
  position: absolute;
  width: 40em;
  height: 40em;
  left: -40em;
  transform: rotate(45deg);
  top: 2em;
  background-color: rgb(18 64 128 / 10%);
  border-radius: 50px;
  opacity: 0;
  transition: 1.2s ease-in-out;
 }
 .wp-image-wrap, .wp-columns-wrap {
  position: relative;
 }
 .wp-image-wrap {
  margin: 6em auto;
 }
 .wp-image-wrap .wp-block-image {
  width: 94%;
  margin: 0 auto;
 }
 .wp-image-wrap div, .wp-columns-wrap div {
  position: relative;
  z-index: 1;
 }
 .wp-columns-wrap.wrap_num_0:after {
  content: "";
  transform: rotate(0deg);
  position: absolute;
  width: 63vw;
  height: 95%;
  right: -15em;
  top: 4em;
  background-color: rgb(18 64 128 / 10%);
  border-radius: 50px;
  opacity: 0;
  transition: 1.2s ease-in-out;
 }
 .wp-columns-wrap.wrap_num_1:after {
  content: "";
  transform: rotate(45deg);
  position: absolute;
  width: 40em;
  height: 40em;
  right: -40em;
  top: -5em;
  background-color: rgb(18 64 128 / 10%);
  border-radius: 50px;
  opacity: 0;
  transition: 1.2s ease-in-out;
 }
 .wp-columns-wrap.wrap_num_0.active:after {
  opacity: 1;
  right: -2em;
 }
 .wp-columns-wrap.wrap_num_1.active:after {
  opacity: 1;
  right: -20em;
 }
 .wp-image-wrap:after {
  content: "";
  transform: rotate(0deg);
  position: absolute;
  width: 50vw;
  height: 120%;
  left: -15em;
  top: -10%;
  background-color: rgb(18 64 128 / 10%);
  border-radius: 50px;
  opacity: 0;
  transition: 1.2s ease-in-out;
 }
 .wp-image-wrap.active:after {
  opacity: 1;
  left: -2em;
 }
 .wp-image-wrap img, .wp-columns-wrap img {
  opacity: 0;
  transition: 1.2s ease-in-out;
  position: relative;
  left: -50px;
 }
 .wp-image-wrap.active img, .wp-columns-wrap.active img {
  left: 0;
  opacity: 1;
 }
 .wp-columns-wrap.wrap_num_1 img {
  right: -50px;
  left: auto;
 }
 .wp-columns-wrap.wrap_num_1 .icon img {
  right: 0;
  opacity: 1;
 }
 .wp-columns-wrap.wrap_num_1.active img {
  right: 0;
 }
 .wrap123 {
  max-width: 1080px;
  width: 94%;
  display: flex;
  position: relative;
  z-index: 2;
  min-height: 500px;
 }
 .wrap123 .box {
  width: 30%;
  display: flex;
  justify-content: left;
  align-items: center;
 }
 .wrap123 .rec_thumb {
  width: 70%;
 }
 .box .in {
  width: 100%;
  z-index: 1;
  position: absolute;
  top: 15em;
 }
 .rec_hx {
  font-size: 2.2em;
  line-height: 1.3em;
  margin: 20px 0 30px 0;
  color: #124080;
  font-weight: 800;
  text-shadow: 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff;
 }
 .interview_title24 {
  color: #124080;
  font-size: 1.6em;
  line-height: 1.3em;
  padding-left: 34px;
  position: relative;
 }
 .interview_title24:after {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 22px;
  height: 22px;
  background-image: url(img/SVG/dia.svg);
  background-position: center;
  background-color: #124080;
  border-radius: 5px;
  transform: rotate(45deg);
 }
 .rec_inter_titles {
  border-left: 4px solid #124080;
  padding: 5px 0 5px 20px;
  margin-left: 15px;
  line-height: 1.3em;
 }
 .z_intro {
  max-width: 430px;
  background-color: #fffffff2;
  line-height: 2.2em;
  padding: 15px;
 }
 .rec_thumb img {
  width: calc(90% + 50vw - 540px);
  max-width: 100vw;
  border-radius: 0 0 20px 20px;
 }
}
/*-----------------------------------
オフィスと福利厚生
*/
.office_content .office_name {
 width: 300px;
 background-color: #124080;
 color: #fff;
 display: flex;
 justify-content: center;
 align-items: center;
 font-size: 2em;
 line-height: 1em;
 letter-spacing: 9px;
}
.office_content .flex {
 flex-wrap: nowrap;
 margin: 60px 0 100px 0;
 position: relative;
}
.office_slick2.slick-slider, .office_slick.slick-slider {
 position: static;
}
.office_content .office_slick2, .office_content .office_slick {
 opacity: 0;
 width: calc(100% - 300px);
}
.office_content .office_slick2 p, .office_content .office_slick p {
 margin: 0 60px 0 0;
}
.office_content .office_slick2 p img, .office_content .office_slick p img {
 max-width: 1000px;
}
.office_content ul.slick-dots {
 position: absolute;
 left: 0;
 transform: translate(0, 25px);
 bottom: 0;
 width: 100%;
 text-align: center;
}
.office_content ul.slick-dots li {
 display: inline-block;
 margin: 0;
}
.office_content ul.slick-dots li button {
 text-indent: -99999px;
 overflow: hidden;
 width: 120px;
 height: 5px;
 cursor: pointer;
 background-color: #124080;
 margin: 0 2px;
 border: none !important;
}
.office_content ul.slick-dots li.slick-active button {
 background-color: #e31e1e;
}
.office_content .flex button.slick-arrow {
 position: absolute;
 bottom: 30px;
 left: 80px;
 border-style: solid;
 border-width: 10px 15px;
 border-color: transparent #fff transparent transparent;
 height: 0;
 width: 0;
 overflow: hidden;
 text-indent: -999px;
 background-color: transparent;
 cursor: pointer;
 z-index: 100;
}
.office_content .flex button.slick-arrow.slick-next {
 left: 180px;
 transform: rotate(180deg);
}
/*fukuri*/
body .column_fukuri_box, body .column_fukuri_box p {
 text-align: left;
 background-position: 2em 2em;
 background-repeat: no-repeat;
 background-size: 50px auto;
}
body .column_fukuri_box h2 {
 font-size: 1.6em;
 margin-bottom: 30px;
 padding-left: 72px;
}
body .column_fukuri_box h2:after {
 display: none;
}
body .column_fukuri_box.ficon1 {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/04/fs1.svg);
}
body .column_fukuri_box.ficon2 {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/04/fs2.svg);
}
body .column_fukuri_box.ficon3 {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/04/fs3.svg);
}
body .column_fukuri_box.ficon4 {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/04/fs4.svg);
}
.fukuri_list li {
 padding-left: 16px;
 position: relative;
 margin-left: 10px;
 margin-top: 7px;
 margin-bottom: 7px;
}
.fukuri_list li:after {
 content: "";
 position: absolute;
 left: 0;
 top: 7px;
 width: 5px;
 height: 5px;
 background-color: #003f84;
 border-radius: 150%;
}
.fukuri_list li li:after {
 border: 2px solid #003f84;
 background-color: transparent;
 box-sizing: border-box;
 width: 6px;
 height: 6px;
 top: 8px;
}
/*-----------------------------------
数字で
*/
.fresh_chid_title, #fresh_chid_title {
 font-size: 2.5em;
 line-height: 1em;
 padding-top: 30px;
}
.column_suuji_box, .column_suuji .wp-block-column {
 background-color: #e6ecf3;
 border-radius: 15px;
 padding: 30px;
 color: #003f84;
 font-weight: bold;
 background-repeat: no-repeat;
 background-position: calc(100% - 30px) 30px;
}
.column_suuji_box.add_ac, .column_suuji .wp-block-column.add_ac {
 opacity: 0;
 transition: 0.3s ease-in-out;
 position: relative;
}
.wp-block-column.column_suuji_box.add_ac.an_left, .column_suuji .wp-block-column.add_ac.an_left {
 left: -20px;
 top: 20px;
}
.wp-block-column.column_suuji_box.add_ac.an_right, .column_suuji .wp-block-column.add_ac.an_right {
 right: -20px;
 top: 20px;
}
.wp-block-column.column_suuji_box.add_ac.an_left.active, .column_suuji .wp-block-column.add_ac.an_left.active {
 left: 0;
 top: 0;
}
.wp-block-column.column_suuji_box.add_ac.an_right.active, .column_suuji .wp-block-column.add_ac.an_right.active {
 right: 0;
 top: 0;
}
.delay1 {
 transition-delay: 0.2s !important;
}
.delay2 {
 transition-delay: 0.4s !important;
}
.delay3 {
 transition-delay: 0.6s !important;
}
.delay4 {
 transition-delay: 0.8s !important;
}
.column_suuji_box.add_ac.active, .column_suuji .wp-block-column.add_ac.active {
 opacity: 1;
}
.column_suuji_box, .wp-block-columns.wrap123.column_suuji {
 margin-bottom: 35px;
}
.column_suuji_box h2, .column_suuji h2 {
 color: #003f84;
 font-size: 1.8em;
 padding-left: 40px;
 position: relative;
 margin: 0 0 50px 0;
 line-height: 1.3em;
}
.column_suuji_box p, .column_suuji p {
 text-align: center;
}
.column_suuji_box h2:after, .column_suuji h2:after {
 content: "";
 position: absolute;
 left: 0;
 top: 6px;
 width: 25px;
 height: 25px;
 border-radius: 5px;
 background-color: #003f84;
 transform: rotate(45deg);
}
.fs_s1 {
 font-size: 4em;
 line-height: 1.4em;
}
.fs_s2 {
 font-size: 5em;
 line-height: 1.4em;
}
.fs_s3 {
 font-size: 2em;
 line-height: 1.4em;
}
.s05 {
 font-size: 0.55em;
}
.column_suuji .flex {
 gap: 35px;
 justify-content: center;
}
.column_suuji .has-text-align-right {
 text-align: right;
 font-weight: 500;
}
.suuji_tech {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/03/suuji1.svg);
 background-size: 150px;
}
.suuji_juu {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/03/suuji2.svg);
 background-size: 150px;
}
.suuji_danjo {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/03/suuji3.svg);
 background-size: 100px;
}
.suuji_syoku {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/03/suuji8.svg);
 background-size: 190px;
}
.column_suuji .wp-block-column .wp-block-column {
 background-color: transparent;
}
.suuji_zangyou {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/03/suuji10.svg);
 background-size: 120px;
}
.suuji_ikuji {
 background-image: url(/tech-blog/cms_x3GWkuX/wp-content/uploads/2024/03/suuji11.svg);
 background-size: 80px;
}
/*-----------------------------------
footer
*/
#footer {
 margin-top: 0;
 position: relative;
 z-index: 5;
}
/*-----------------------------------
Mobile
*/
#smart_nav3 {
 background-color: rgb(18 64 128 / 98%);
 position: fixed;
 top: -100%;
 left: 0;
 width: 100%;
 height: 100%;
 z-index: 100;
 text-align: center;
 box-sizing: border-box;
 padding: 70px 1em 30px 1em;
 opacity: 0;
 visibility: hidden;
 transition: 0.3s ease-in-out;
}
@media only screen and (max-width: 1600px) {
 .recruit_interview_page .box .in {
  top: 6vw;
 }
 .recruit_page_24 .recruit_interview_page .box .in {
  top: 15em;
 }
 /*1600px*/
}
@media only screen and (max-width: 1230px) {
 .rec_mainimage .catch {
  font-size: 4.8vw;
 }
 .rec_mainimage {
  margin: 20px;
 }
 #cover {
  width: auto;
 }
 .recruit_interview_page {
  .box .in {
   position: static;
   width: 100%;
  }
  .wrap123 .box {
   width: 100%;
   padding-top: 3em;
  }
  .wrap123 .rec_thumb {
   position: absolute;
   right: 0;
   top: 0;
   width: 60%;
  }
  .rec_thumb img {
   width: 100%;
  }
  .rec_hx {
   font-size: 1.8em;
  }
 }
 /*1230*/
}
@media only screen and (max-width: 1160px) {
 #header_cover #gobal_nav {
  top: 44px;
 }
 #header_cover #ss_search_btn {
  top: 38px;
  right: 3px;
 }
 #header #header_cover h1 img {
  width: 290px;
 }
 /**/
 .rTitle.rStyle3.active .dia, .rTitle.rStyle5.active .dia, .rTitle.rStyle1.active .dia {
  left: 0.5em;
 }
 .rTitle.rStyle2.active .dia {
  right: 0.5em;
 }
 .rTitle .first, .rTitle .back {
  text-align: left;
  left: 0;
  padding-left: 132px;
 }
 .rTitle.rStyle2 .first, .rTitle.rStyle2 .back {
  padding-right: 131px;
 }
 .rTitle.active .first:after, .rTitle.active .back:after {
  width: 0;
  display: none;
 }
 .rTitle .first .in, .rTitle.rStyle4 .in, .rTitle.rStyle3 .in, .rTitle.rStyle2 .in, .rTitle .in {
  width: 0;
  transition-duration: 2s;
 }
 .rTitle.active .in {
  width: 100%;
 }
 .rTitle {
  font-size: 3vw;
 }
 .rTitle.rStyle4 {
  font-size: 2vw;
 }
 .rTitle.rStyle3 .first {
  padding-left: 40px;
 }
 .rTitle.rStyle3 .back {
  margin-top: -33px;
 }
 .write_text {
  white-space: normal;
  line-height: 2em;
 }
 #rec_message .message {
  min-height: 7em;
  height: auto;
  width: 95%;
  margin: 0 auto;
 }
 #crosstalk .intBoxCross {
  padding-right: 13vw;
  padding-top: 15vw;
 }
 /*1160px*/
}
@media only screen and (max-width: 1000px) {
 .recruit_interview_page .wrap123 {
  min-height: 0;
 }
 #header_rec #in_nav ul li:not(.elink) {
  display: none;
 }
 .whoBox ul.active li {
  font-size: 1.7vw;
 }
 .recruit_interview_content .zadankai_photos .wp-block-column {
  padding: 2vw;
 }
 .recruit_interview_page .z_intro {
  font-size: 0.8em;
  width: 44vw;
 }
 /*Office*/
 .office_content .flex {
  flex-wrap: wrap;
  margin: 50px 0;
 }
 .office_content .office_name {
  width: 100%;
  padding: 30px 1em;
  box-sizing: border-box;
 }
 .office_content .office_slick2, .office_content .office_slick {
  width: 100%;
 }
 .office_content .flex button.slick-arrow {
  bottom: 10px;
  left: 10px;
 }
 .office_content .flex button.slick-arrow.slick-next {
  left: 70px;
 }
 .office_content ul.slick-dots {
  display: flex !important;
  gap: 2px;
 }
 .office_content ul.slick-dots li button {
  width: 100%;
  margin: 0;
 }
 .office_content ul.slick-dots {
  transform: translate(0, 20px);
 }
 .office_content ul.slick-dots li {
  width: 25%;
 }
 /*1000px*/
}
@media only screen and (max-width: 900px) {
 .fresh_columns_animate4 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  row-gap: 20px;
 }
 .fresh_columns_animate4.fresh_about_history .grid {
  grid-template-rows: 8em 1fr 1fr auto;
  padding: 60px 10px 10px 15px;
 }
 .fresh_about_history .grid:before {
  width: 40px;
  left: -20px;
 }
 .fresh_columns_animate4.fres_about_service {
  row-gap: 10px;
 }
 .fresh_columns_animate4 .grid {
  grid-column: 1/1;
 }
 .fresh_columns_animate4 .grid:nth-child(2) {
  grid-column: 2/3;
 }
 .fresh_columns_animate4 .grid:nth-child(3) {
  grid-column: 1/1;
  grid-row: 2/3;
 }
 .fresh_columns_animate4 .grid:nth-child(4) {
  grid-column: 2/3;
  grid-row: 2/3;
 }
 /*900*/
}
@media only screen and (max-width: 800px) {
 .recruit_interview_page .z_intro {
  width: auto;
  background-color: transparent;
  max-width: 100%;
  padding: 0;
 }
 /*Navi*/
 #smart_btn3 {
  display: block;
  position: absolute;
  top: 15px;
  right: 15px;
  cursor: pointer;
  height: 30px;
  z-index: 1;
  width: 35px;
 }
 #smart_btn3 span.a, #smart_btn3 span.b, #smart_btn3 span.c {
  webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  cursor: pointer;
  display: block;
  height: 3px;
  width: 35px;
  border-radius: 10px;
  background-color: #12408f;
  content: "";
  position: absolute;
  left: 0;
  opacity: 1;
  top: 0;
 }
 #smart_btn3 span.a {
  top: 10px;
  opacity: 1;
 }
 #smart_btn3 span.b {
  top: 20px;
  opacity: 1;
 }
 #smart_btn3.active span.c {
  opacity: 0;
 }
 #smart_btn3.active span.a {
  transform: rotate(30deg);
  top: 11px;
 }
 #smart_btn3.active span.b {
  transform: rotate(-30deg);
  top: 11px;
 }
 #smart_nav3 {
  background-color: rgb(18 64 128 / 98%);
  position: fixed;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  text-align: center;
  box-sizing: border-box;
  padding: 70px 1em 30px 1em;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease-in-out;
 }
 .admin-bar #smart_nav3 {
  padding-top: 116px;
 }
 #smart_nav3.active {
  opacity: 1;
  visibility: visible;
  top: 0;
 }
 #smart_nav3 ul a {
  display: block;
  color: #fff;
  font-weight: bold;
  font-size: 1.1em;
  padding: 15px 0;
 }
 #smart_btn3.active {
  z-index: 101;
 }
 #smart_btn3.active span {
  background-color: #fff !important;
 }
 /**/
 #header_rec #in_nav {
  right: 60px;
 }
 .rec_mainimage {
  height: 50vw;
  background-image: url(img/main_back.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
 }
 .rec_mainimage .main_back {
  display: none;
 }
 .rTitle .dia {
  width: 50px;
  height: 50px;
  top: 0.5vw;
  transition-duration: 1.2s;
 }
 .rTitle.rStyle4.active .dia {
  right: 0.5em;
  left: auto;
 }
 .rTitle {
  font-size: 3vw;
 }
 .rTitle.rStyle5 .back, .rTitle.rStyle5 .first, .rTitle .first, .rTitle .back {
  padding-left: 82px;
 }
 .rTitle.rStyle2 .first, .rTitle.rStyle2 .back {
  padding-right: 82px;
 }
 .rTitle.rStyle4 {
  font-size: 3vw;
 }
 .rTitle.rStyle4 .flex {
  display: block;
 }
 .rTitle.rStyle4 .dia {
  right: calc(50% - 25px);
  left: auto;
 }
 .rTitle .first .in, .rTitle.rStyle4 .in, .rTitle.rStyle3 .in, .rTitle.rStyle2 .in, .rTitle .in {
  transition-duration: 1.5s;
 }
 .rTitle.rStyle4 .back, .rTitle.rStyle4 .right .first {
  text-align: right;
  padding-right: 82px;
 }
 .rTitle.rStyle4 .first {
  text-align: left;
  padding-left: 0.5em;
 }
 .rTitle.rStyle4 .right .back {
  left: 0;
 }
 #rec_message {
  margin-top: 60px;
 }
 #whoweare {
  margin: 30px 0 0 0;
 }
 .rec_related_box.active .clGpost ul li {
  width: calc(33.33333% - 21px);
 }
 .envBox ul li {
  width: 33.333%;
 }
 .envBox ul li:nth-child(2) {
  top: -8vw;
  left: 25%;
 }
 #environment.active .envBox:after {
  width: 70vw;
  height: 50vw;
  left: -20vw;
  top: 27vw;
  opacity: 0.5;
 }
 .envBox ul li {
  margin: 0;
  font-size: 2vw;
  width: 45%;
 }
 .envBox ul {
  margin-left: 19vw;
 }
 .envBox ul li:nth-child(2) {
  top: -8vw;
  left: 35%;
 }
 #environment .envBox {
  margin-top: 0;
  padding-top: 15px;
 }
 /*footer link*/
 .rec_bottom_links .flex {
  gap: 0;
 }
 .rec_bottom_links a {
  width: 100%;
  max-width: 100%;
  border-radius: 0;
  font-size: 2vw;
  padding: 0;
  height: 50px;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
 }
 .rec_bottom_links {
  position: fixed;
  bottom: 0;
  z-index: 101;
  width: 100%;
  background-color: transparent;
  padding: 0;
  margin-top: 0;
  padding-right: 51px;
  box-sizing: border-box;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease-in-out;
 }
 .scroll_body .rec_bottom_links {
  opacity: 1;
  visibility: visible;
 }
 #footer {
  margin-top: 60px;
 }
 .recruit_interview_page {
  .wrap123 {
   flex-wrap: wrap;
   flex-direction: column-reverse;
   row-gap: 30px;
  }
  .wrap123 .rec_thumb {
   position: static;
   width: auto;
   text-align: center;
  }
  .wrap123 .box {
   padding-top: 0;
  }
 }
 .chro_message {
  padding-top: 150px;
  background-size: 600px auto;
  padding: 187px 10px 10px 10px;
  margin-top: 35vw;
 }
 .chro_message:after {
  left: auto;
  right: 10px;
 }
 .v2 .chro_message:after {
  right: auto;
  left: 10px;
 }
 .v2 .chro_message {
  margin-top: 30px;
 }
 .chro_message .sm_br {
  display: block;
 }
 .rTitle.rStyle6 .first {
  top: 6.2em;
  right: 0.86em;
 }
 .rTitle.rStyle6 .back {
  top: 5.8em;
  right: 0.75em;
 }
 #crosstalk .intBoxCross h3 {
  text-align: left;
  top: 1.5em;
  font-size: 5vw;
 }
 /*800px*/
}
@media only screen and (max-width: 782px) {
 .admin-bar #header {
  top: 46px;
 }
 /*782px*/
}
@media only screen and (max-width: 700px) {
 .recruit_interview_content .zadankai_photos .wp-block-column p {
  font-size: 2.3vw !important;
  line-height: 1.4em;
 }
 #smart_btn {
  top: 17px;
 }
 .page-template-page-recruit24-white-php #header, #header_rec, #header_cover {
  height: 55px;
  margin: 0;
 }
 .change_header {
  top: 13px;
  left: 10px;
 }
 #header #header_cover h1 img {
  width: 230px;
 }
 #header #header_cover h1 {
  padding: 5px 0 0 30px;
 }
 #header_cover #ss_search_btn {
  right: 69px;
  top: 16px;
 }
 #header_rec #site-logo {
  padding-top: 6px;
 }
 #header_rec #in_nav ul li a, #header_rec #in_nav ul li.link_info a, #header_rec #in_nav ul li.link_entry a {
  padding: 8px 15px;
 }
 #header_rec #site-name {
  position: relative;
  top: -4px;
 }
 #header_cover #gobal_nav {
  height: 100vh;
  top: -5px;
  transform: translateX(230px);
 }
 .whoBox ul li:hover a {
  width: auto;
  left: 0;
 }
 .whoBox ul.active li {
  font-size: 2.2vw;
  max-width: 320px;
 }
 #whoweare .whoBox {
  padding: 060px 0 0 0;
  height: auto;
 }
 .whoBox ul li:hover {
  height: auto;
  bottom: 0;
 }
 .whoBox ul li {
  height: auto;
  width: 40%;
 }
 .whoBox ul li a {
  position: static;
 }
 .whoBox ul {
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
 }
 #interview {
  margin: 100px 0;
 }
 #interview.active:after {
  right: auto;
  left: 50%;
 }
 #interview .intBox li {
  width: calc(50% - 15px);
 }
 #interview .intBox ul {
  flex-wrap: wrap;
 }
 #interview .intBox {
  margin-left: 15vw;
  width: auto;
  margin-right: 1vw;
 }
 .rTitle.rStyle3 {
  font-size: 5vw;
  margin-bottom: 0;
 }
 .rTitle.rStyle3.active .dia {
  left: 9px;
  right: auto;
 }
 .rTitle.rStyle1 .first, .rTitle.rStyle2 .first {
  font-size: 11vw;
 }
 .rTitle.rStyle4 .first {
  font-size: 10vw;
 }
 .rTitle.rStyle3 .first {
  padding-left: 20px;
 }
 .rTitle.rStyle3 .back {
  top: -1vw;
 }
 .rTitle.rStyle1 {
  margin-bottom: 0;
 }
 .rec_message {
  margin-top: 60px;
 }
 .suuji_tech {
  background-size: 68px auto;
 }
 .suuji_juu {
  background-size: 95px auto;
 }
 .suuji_danjo {
  background-size: 70px auto;
 }
 .suuji_syoku {
  background-size: 120px auto;
 }
 .suuji_zangyou {
  background-size: 90px auto;
 }
 .suuji_ikuji {
  background-size: 57px auto;
 }
 #crosstalk {
  margin-top: 170px;
 }
 .rTitle.rStyle6 {
  font-size: 5vw;
 }
 .rTitle.rStyle6 .first {
  top: 5.5em;
  padding-top: 40px;
 }
 .rTitle.rStyle6 .back {
  top: 5.2em;
  padding-top: 40px;
 }
 .rTitle.rStyle6.active .dia {
  right: 1vw;
 }
 #crosstalk:after {
  height: 20em;
 }
 /*700px*/
}
@media only screen and (max-width:600px) {
 span.mv span, .admin-bar span.mv span {
  top: -60px;
 }
 article .ra_title br {
  display: none;
 }
 article .ra_title {
  text-align: left;
  font-size: 5vw;
 }
 .bottom_text {
  font-size: 3.2vw !important;
  text-align: left;
 }
 .bottom_text br {
  display: none;
 }
 .lightblue_back table tr td:first-child {
  width: 100px;
 }
 .fresh_culture_grid li {
  font-size: 3.5vw;
 }
 .fresh_work_style dd {
  font-size: 4vw;
 }
 .fres_about_service.add_ac.fresh_columns_animate4 {
  display: block;
 }
 .fres_about_service.add_ac.fresh_columns_animate4 .grid {
  margin-bottom: 20px;
 }
 .fresh_about_bottom h3 {
  font-size: 6vw;
 }
 .fresh_about_bottom .text_p {
  font-size: 3vw;
 }
 .chro_message {
  font-size: 2.7vw;
  font-weight: bold;
  line-height: 1.3em;
 }
 .chro_message * {
  line-height: 1.3em;
 }
 .chro_message h3 {
  margin-bottom: 5px;
 }
 /*600px*/
}
@media only screen and (max-width:550px) {
 #header_rec #in_nav ul li {
  display: none;
 }
 .rec_related_box.active .clGpost ul li {
  width: calc(50% - 15px);
 }
 .rec_bottom_links a {
  font-size: 4vw;
 }
 .whoBox ul li, .whoBox ul.active li {
  width: auto;
  font-size: 4vw;
  margin: 0 20px;
 }
 #interview .intBox li {
  width: auto;
 }
 #interview .intBox.active ul li.center {
  top: 0;
 }
 .envBox ul {
  margin-left: 10vw;
 }
 .envBox ul li {
  width: 50%;
  font-size: 3vw;
 }
 .envBox ul li:nth-child(2) {
  left: 40%;
 }
 /*550px*/
}
@media only screen and (max-width:500px) {
 .rec_related_box .clGpost ul {
  display: flex;
 }
 /*500px*/
}