@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600,700");
/* Eric Meyer's reset
	http://meyerweb.com/eric/tools/css/reset/ 
	v2.0b1 | 201101 
	NOTE: WORK IN PROGRESS
	USE WITH CAUTION AND TEST WITH ABANDON */
/* Use this reset as a starting point, and customize to your needs */
/* Slightly modified to prevent anchor elements from losing outline, as in HTML5 Boilerplate */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, button, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

q:before, q:after {
  content: "";
  content: none;
}

/* remember to define visible focus styles! 
:focus {
	outline: ?????;
} */
/* remember to highlight inserts somehow! */
ins {
  text-decoration: none;
}

del {
  text-decoration: line-through;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  text-align: left;
}

th, td {
  text-align: left;
}

/* Meyer's reset ends here */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important;
}

:where(html) {
  -webkit-text-size-adjust: none;
  color-scheme: dark light;
  -moz-tab-size: 2;
    -o-tab-size: 2;
       tab-size: 2;
  scrollbar-gutter: stable;
}

:where(html:has(dialog:modal[open])) {
  overflow: clip;
}

:where(body) {
  line-height: 1.5;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

:where(button) {
  all: unset;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(a) {
  color: inherit;
  text-underline-offset: 0.2ex;
}

:where(ul, ol) {
  list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg, video) {
  max-inline-size: 100%;
  block-size: auto;
  vertical-align: top;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem);
  text-wrap: balance;
}

:where(hr) {
  border: none;
  -webkit-border-before: 1px solid;
          border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(dialog) {
  border: none;
  background: none;
  inset: unset;
  max-width: unset;
  max-height: unset;
}

:where(dialog:not([open])) {
  display: none !important;
}

em {
  font-style: normal;
}

:root {
  color-scheme: light !important;
}

.is-la {
  display: none !important;
}
@media screen and (min-width: 865px) {
  .is-la {
    display: block !important;
  }
}

.is-md {
  display: none !important;
}
@media screen and (min-width: 601px) and (max-width: 864px) {
  .is-md {
    display: block !important;
  }
}

.is-sm {
  display: none !important;
}
@media screen and (max-width: 864px) {
  .is-sm {
    display: block !important;
  }
}

.is-pc {
  display: none !important;
}
@media screen and (min-width: 600px) {
  .is-pc {
    display: block !important;
  }
}

.is-sp {
  display: none !important;
}
@media screen and (max-width: 864px) {
  .is-sp {
    display: block !important;
  }
}

.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  -webkit-transition: all 1s;
  transition: all 1s;
}
.fadein.scrollin {
  opacity: 1 !important;
  -webkit-transform: translate(0, 0) !important;
          transform: translate(0, 0) !important;
}

@font-face {
  font-family: "Material Symbols";
  font-style: normal;
  font-display: swap;
  src: url(/recruit/assets/font/font.woff2) format("woff2");
}
.material-symbols {
  font-weight: normal;
  font-style: normal;
  font-size: 1.5em; /* = 24px */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  font-family: "Material Symbols";
}

/* ===================================
	File Name   : common.css
	Description : Base Layout CSS

	Update Description :
	[2024/03/01] 新規作成

====================================== */
/*========== Style Contents ==========

	1. Global Redefinition
	2. Font Redefinition
	3. Box Setting
	4. Form Setting
		- Brand image Items
	5. Common Items Setting
		- Basic Link
	 	- Header Items
		- Inner Right Navigation
		- Breadcrumbs
		- recaptcha badge
		- Title Items
		- top work style
		- Sub Menu
		- Side Menu
		- cookie Notice
		− Clear Fix
	6. Work - department
		- icon
		- font
		- box
		- backgraund image
		- Schedule bar
		- flex

====================================== */
/*===== ■1. Global Redefinition =====*/
body {
  color: #262520;
  line-height: 1.5;
  margin: 0px auto;
}
body:not(.toppage):before {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#E1E6ED), color-stop(50%, #F4E9E1), to(#E1E6ED));
  background: linear-gradient(to bottom, #E1E6ED 0%, #F4E9E1 50%, #E1E6ED 100%);
  z-index: -100;
  opacity: 1;
  content: "";
}

article img,
#article img {
  width: 100%;
}

article img.origin {
  width: auto;
}

#article img.origin, #article img.origin2, #article img.origin3 {
  width: auto;
}
#article img.aspect_message {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1/1;
}

@media screen and (max-width: 864px) {
  article img.origin {
    width: 100%;
  }
  #article img.origin {
    width: 100%;
  }
  #article img.aspect_message {
    -o-object-fit: cover;
       object-fit: cover;
    aspect-ratio: 13/10;
  }
}
@media only screen and (max-width: 1200px) {
  article img.origin3,
  #article img.origin3 {
    width: 100%;
  }
}
/*===== ■2. Font Redefinition =====*/
@font-face {
  font-family: "icon";
  src: url("fonts/sanyo.eot?izjl9a");
  src: url("fonts/sanyo.eot?izjl9a#iefix") format("embedded-opentype"), url("fonts/sanyo.ttf?izjl9a") format("truetype"), url("fonts/sanyo.woff?izjl9a") format("woff"), url("fonts/sanyo.svg?izjl9a#sanyo") format("svg");
  font-weight: normal;
  font-style: normal;
}
i,
cite,
var,
address,
dfn {
  font-style: italic;
}

[class^=ico-],
[class*=" ico-"] {
  width: 0;
  height: 0;
  text-indent: -9999px;
  font-family: "icon" !important;
  speak: none;
  color: rgb(99, 98, 98);
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-blank:before {
  content: "\e900";
}

.ico-lang:before {
  content: "\e901";
}

.ico-search:before {
  content: "\e902";
}

.entry-title:after {
  content: "\e901";
  display: inline-block;
  font-family: FontAwesome;
  font-weight: normal;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 62.5%;
}

body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  font-size: 1.5em;
  font-weight: 400;
  font-family: "Arial", "Yu Gothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

::-webkit-input-placeholder,
::-moz-placeholder,
:-ms-input-placeholder,
:placeholder-shown {
  color: #999;
}

@media only screen and (max-width: 260px) {
  body {
    min-width: 260px;
  }
}
/*===== ■3. Box Setting =====*/
main {
  display: block;
  position: relative;
  z-index: 2;
  margin: 0 auto;
  /*	margin: 70px auto 0;  ヘッダーFix分*/
}

article,
#article {
  clear: both;
  display: block;
  position: relative;
  padding: 30px 0px;
}

.outline,
.detail {
  margin: 0 auto;
  width: 100%;
  min-width: 1392px;
  padding: 0 calc((100% - 1104px) / 2);
}

.detail_nopadding {
  padding: 0;
}

.overlap_img {
  position: relative;
  padding: 0;
  margin-bottom: 400px;
}
.overlap_img > .image_set {
  position: absolute;
  width: 100%;
  height: auto;
  max-height: 500px;
  -o-object-fit: cover;
     object-fit: cover;
  padding: 0;
  left: 0;
  top: 100%;
  -webkit-transform: translate(0, -40%);
  transform: translate(0, -40%);
  z-index: -1;
}

#title {
  position: relative;
  padding: 100px 0 0 0;
  width: calc(100% - 40px);
  margin: 0px 20px;
}

#main_photo_title {
  position: relative;
  padding: 0 0 0 0;
  width: 100%;
  margin: 0;
  z-index: -1;
}

#main_photo {
  clear: both;
  position: relative;
  height: auto;
}
#main_photo #main_photo_visual {
  position: relative;
}
#main_photo #main_photo_visual img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0;
}
body.location #main_photo #main_photo_visual img, body.ueda #main_photo #main_photo_visual img {
  max-height: 400px;
  -webkit-filter: brightness(0.9);
          filter: brightness(0.9);
}
#main_photo #main_photo_visual img.__right {
  -o-object-position: right 20%;
     object-position: right 20%;
}
#main_photo #main_photo_visual img.__index_08.__right {
  -o-object-position: right 40%;
     object-position: right 40%;
}
#main_photo #main_photo_visual img.__center {
  -o-object-position: initial;
     object-position: initial;
}
#main_photo #main_photo_visual img.__left {
  -o-object-position: 0 0;
     object-position: 0 0;
}

#main_photo > h1.head_photo {
  position: absolute;
  top: calc(50% + 30px);
  left: 8%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #ffffff;
  font-weight: bold;
  font-size: 4.8rem;
  line-height: 1.2;
}
@media screen and (max-width: 864px) {
  #main_photo > h1.head_photo {
    top: calc(60px + 50% - 30px);
    left: 20px;
  }
}

#main_photo > h1.head_photo span {
  text-shadow: 2px 3px 2px #999;
}
#main_photo > h1.head_photo span.small_txt {
  font-size: 1.8rem;
}
@media screen and (max-width: 864px) {
  #main_photo > h1.head_photo span.small_txt {
    font-size: 1.6rem;
  }
}

#env_erea li {
  position: relative;
  display: inline-block;
  height: 192px;
}
#env_erea li a {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 192px;
}
#env_erea li a > .photo img {
  position: absolute;
  width: 100%;
  height: 192px;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 25/11;
  border-radius: 16px;
  -webkit-filter: brightness(90%);
          filter: brightness(90%);
}
#env_erea li a:hover > .photo img {
  -webkit-filter: brightness(100%);
          filter: brightness(100%);
}
#env_erea li a > .message {
  position: absolute;
  top: 50%;
  left: 12%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #ffffff;
  font-weight: bold;
}
#env_erea li > .photo img {
  position: absolute;
  width: 100%;
  height: 192px;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 25/11;
  border-radius: 16px;
}
#env_erea li > .message {
  position: absolute;
  top: 50%;
  left: 12%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #ffffff;
  font-weight: bold;
}
#env_erea li .message span:first-child {
  font-size: 1.8rem;
}
#env_erea li .message span.erea_name {
  font-size: 3rem;
}
#env_erea li .message span:nth-child(3) {
  font-size: 1.6rem;
}
#env_erea li a > .arrow {
  position: absolute;
  bottom: 4%;
  right: 4%;
  font-weight: bold;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
#env_erea li a > .arrow {
  padding-right: 30px;
  font-size: 2rem;
  color: #ffffff;
}
#env_erea li > .coming_soon {
  position: absolute;
  bottom: 4%;
  right: 4%;
  font-weight: bold;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
#env_erea li > .coming_soon {
  font-size: 4rem;
  color: rgba(255, 255, 255, 0.5);
}
#env_erea li .arrow::before {
  bottom: 50%;
  width: 12px;
  height: 2px;
  background: #262520;
}
#env_erea li .arrow::after {
  bottom: calc(50% - 2px);
  width: 6px;
  height: 6px;
  border-top: 2px solid #262520;
  border-right: 2px solid #262520;
  -webkit-transform: rotate(45deg) translate(0, 0);
  transform: translate(0, 0) rotate(45deg);
}
#env_erea li .arrow.cl_white::before {
  background: #ffffff;
}
#env_erea li .arrow::after {
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
}
#env_erea li .arrow::before, #env_erea li .arrow::after {
  position: absolute;
  right: 4%;
  margin: auto;
  vertical-align: middle;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  content: "";
}
#env_erea .message span,
#env_erea p.arrow {
  text-shadow: 2px 3px 2px #999;
}

.area_flexlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.area_flexlist > li {
  margin-bottom: 20px;
  width: calc(50% - 10px);
}
@media screen and (max-width: 864px) {
  .area_flexlist > li {
    width: 100%;
  }
}
.area_flexlist > li.w100 {
  width: 100%;
}

#main_wrapper {
  margin-bottom: 30px;
}

#title .frame {
  position: relative;
  border-radius: 16px;
  border: 1px solid #ffffff;
  background: #ffffff;
  height: 240px;
}
#title .frame > h1 span:first-child {
  position: absolute;
  top: 50%;
  left: 70px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  font-size: 8rem;
  font-weight: 700;
  line-height: 1;
}
#title .frame > h1 span:first-child + span {
  position: absolute;
  top: 100%;
  left: 0;
  -webkit-transform: translate(30%, -50%);
  transform: translate(30%, -50%);
  border-radius: 0 2px 2px 0;
}

.join_us_all .speech_bubble,
#main_menu_voice .speech_bubble {
  position: absolute;
  padding: 20px 15px;
  font-size: 1.6rem;
  font-weight: 600;
  text-align: left;
  line-height: 1.5;
  border-radius: 20px 20px 20px 0px;
  border: 1px solid #676660;
  background: #484741;
  color: #ffffff;
}

#join_us_all .speech_bubble,
.modal_join_us .speech_bubble {
  top: 0;
  left: calc(50% + 5rem);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

#main_menu_voice .speech_bubble {
  top: 0;
  left: 12%;
  -webkit-transform: translate(0%, -100%);
  transform: translate(0%, -100%);
}

ul.img_lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

li.img_list {
  list-style: none;
  margin-left: 20px;
}

#select-category ul {
  display: table;
  padding: 10px 0;
  font-size: 2rem;
  font-weight: 500;
}
#select-category ul li {
  display: table-cell;
  padding: 0 0.5em;
}
#select-category ul li.select a {
  display: inline-block;
  border-bottom: solid 5px #262520;
}

@media only screen and (max-width: 1392px) {
  .outline,
  .detail {
    min-width: auto;
    max-width: none;
    padding: 0 calc((100% - 1104px) / 2);
  }
}
@media only screen and (max-width: 1277px) {
  .outline,
  .detail {
    padding: 0px 20px;
  }
}
@media screen and (max-width: 864px) {
  article,
  #article {
    clear: both;
    display: block;
    position: relative;
    padding: 32px 0px;
  }
  .outline,
  .detail,
  .overlap_img {
    padding: 0px 20px;
    max-width: none;
  }
  .detail_nopadding {
    padding: 0;
  }
  #title {
    padding: 0px 0 0 0;
    width: 100%;
    margin: 0 auto;
  }
  #main_photo_title #main_photo #main_photo_visual img {
    height: 250px;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
  }
  .overlap_img {
    margin-bottom: 150px;
  }
  #title .frame {
    border-radius: 0px;
    height: 230px;
  }
  #title .frame > h1 span:first-child {
    left: 29px;
    font-size: 4rem;
    font-weight: 700;
    top: calc(50% + 40px);
  }
  #title .frame > h1 span:first-child + span {
    -webkit-transform: translate(15%, -50%);
            transform: translate(15%, -50%);
  }
  #join_us_all p,
  .modal_join_us p {
    font-size: 7.5rem;
    line-height: 1.2;
  }
  #join_us_all .speech_bubble,
  .modal_join_us .speech_bubble {
    top: 0;
    left: calc(50% + 5rem);
    padding: 15px 10px;
    font-size: 1.2rem;
    -webkit-transform: translate(-50%, -70%);
    transform: translate(-50%, -70%);
  }
  #main_menu_voice .speech_bubble {
    padding: 15px 10px;
    font-size: 1.2rem;
    top: 0;
    left: 15%;
  }
  #env_erea div .message span:first-child {
    font-size: 1.6rem;
  }
  #env_erea div .message span.erea_name {
    font-size: 2.5rem;
  }
  #env_erea div .message span:nth-child(3) {
    font-size: 1.3rem;
  }
  #env_erea div a > .arrow {
    font-size: 2rem;
  }
}
/*===== ■4. Form Setting =====*/
/* Brand image Items */
.brand_ditail {
  position: relative;
  text-align: center;
  width: 100%;
  min-height: 900px;
}

.triangle_ditail {
  position: relative;
  text-align: center;
  width: 100%;
}

#article .brande_logo .image img {
  width: 100%;
  height: auto;
}
#article .brande_logo .image .sp img {
  width: auto;
  height: 48px;
}

.brande_logo figure {
  width: 120px;
}
.brande_logo .text {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
}

.brand_ditail .brande_logo,
.brand_ditail .brande_ditail {
  text-align: left;
}
.brand_ditail::before {
  display: block;
  position: absolute;
  margin: 0 auto;
  top: 255px;
  left: 50%;
  width: 43%;
  /* height: 17%; */
  border-radius: 50%;
  padding-top: 14%;
  border: 8px solid #ffffff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform: rotate(-15deg) translate(-50%, -50%);
  transform: rotate(-15deg) translate(-50%, -50%);
  content: "";
}

.brande_logo {
  width: 300px;
  border-radius: 16px;
  padding: 50px 15px;
  color: #ffffff;
}

.brand_sc .brande_logo {
  position: relative;
  background-color: #c9a700;
  margin-bottom: 0;
}

.brand_sp .brande_logo {
  position: relative;
  background-color: #ac232f;
  margin-bottom: 20px;
}

.brand_sm .brande_logo {
  position: relative;
  background-color: #1c6ecd;
  margin-bottom: 20px;
}

.brand_sc .brande_logo::after,
.brand_sp .brande_logo::after,
.brand_sm .brande_logo::after {
  position: absolute;
  display: inline-block;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 8px solid #ffffff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  content: "";
}

.brand_sc .brande_logo::after {
  bottom: 0;
  right: 0;
  background-color: #c9a700;
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
}

.brand_sp .brande_logo::after {
  top: 0;
  right: 0;
  background-color: #ac232f;
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
}

.brand_sm .brande_logo::after {
  top: 0;
  left: 0;
  background-color: #1c6ecd;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.triangle_ditail > .brand_sc {
  position: absolute;
  top: 150px;
  left: calc(54% - 200px);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.triangle_ditail > .brand_sp {
  position: absolute;
  top: 475px;
  left: 26.6%;
  padding-top: 22.5%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.triangle_ditail > .brand_sm {
  position: absolute;
  top: 470px;
  left: 82%;
  padding-top: 10%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.brand_sc > .brande_ditail {
  position: absolute;
  top: 0;
  left: 320px;
  -webkit-transform: translateY(-30%);
  transform: translateY(-30%);
}
.brand_sc .brande_logo > figure {
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.brand_sm .brande_logo > figure {
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.brand_sp .brande_logo > figure {
  position: absolute;
  bottom: 0;
  right: 0;
  -webkit-transform: translateY(50%);
  transform: translateY(50%);
}

.brande_ditail {
  width: 400px;
  border-radius: 0;
  border: none;
  color: #262520;
}

.brand_sc .brande_ditail {
  background-color: transparent;
  padding: 0 0 0 16px;
  margin-bottom: 10px;
}

.brand_sp .brande_ditail,
.brand_sm .brande_ditail {
  background-color: transparent;
  margin-bottom: 10px;
}

.brande_ditail .title {
  font-size: 1.8rem;
  font-weight: 600;
  color: #262520;
  margin-bottom: 16px;
}
.brande_ditail .text {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  color: #262520;
}

@media only screen and (max-width: 1279px) {
  .triangle_ditail > .brand_sp {
    top: 485px;
  }
  .triangle_ditail > .brand_sm {
    top: 470px;
  }
}
@media only screen and (max-width: 1060px) {
  .triangle_ditail > .brand_sm {
    top: 490px;
    left: 83.4%;
  }
}
@media only screen and (max-width: 1024px) {
  .triangle_ditail > .brand_sm {
    top: 495px;
    left: 84%;
  }
  .triangle_ditail > .brand_sp {
    top: 485px;
  }
}
@media only screen and (max-width: 899px) {
  .triangle_ditail > .brand_sm {
    top: 515px;
    left: 85%;
  }
  .triangle_ditail > .brand_sp {
    top: 490px;
  }
}
@media only screen and (max-width: 750px) {
  .brand_ditail,
  .triangle_ditail {
    min-height: auto;
  }
  .brand_ditail::before {
    content: none;
  }
  .brande_logo {
    width: 100%;
    border-radius: 0;
    padding: 0;
    color: #262520;
  }
  .brand_sc .brande_logo,
  .brand_sp .brande_logo,
  .brand_sm .brande_logo {
    margin-bottom: 10px;
    background-color: transparent;
  }
  .brand_sc .brande_logo::after,
  .brand_sp .brande_logo::after,
  .brand_sm .brande_logo::after {
    content: none;
  }
  .brande_logo figure {
    display: inline-block;
    vertical-align: middle;
  }
  .brande_logo .text {
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 145px);
  }
  .triangle_ditail > .brand_sc,
  .triangle_ditail > .brand_sp,
  .triangle_ditail > .brand_sm {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  .brand_sc > .brande_ditail {
    position: relative;
    left: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  .brand_sc .brande_logo > figure {
    position: relative;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  .brand_sm .brande_logo > figure,
  .brand_sp .brande_logo > figure {
    position: relative;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  .brande_ditail {
    width: 100%;
    border-radius: 16px;
    color: #ffffff;
  }
  .brand_sc .brande_ditail {
    padding: 32px;
    background-color: #c9a700;
    margin-bottom: 32px;
  }
  .brand_sp .brande_ditail {
    padding: 32px;
    background-color: #ac232f;
    margin-bottom: 32px;
  }
  .brand_sm .brande_ditail {
    padding: 32px;
    background-color: #1c6ecd;
    margin-bottom: 32px;
  }
  .brande_ditail .title,
  .brande_ditail .text {
    color: #ffffff;
  }
}
/*===== ■5. Common Items Setting =====*/
/* Basic Link */
a {
  color: rgb(36, 7, 0);
  text-decoration: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

#main_wrapper a:not(.button) {
  text-decoration: none;
}

a:visited {
  color: rgb(36, 7, 0);
  text-decoration: underline;
}
a.white:visited {
  color: #ffffff;
}
a:hover {
  color: #999;
  text-decoration: underline;
}

.op85:hover {
  opacity: 85%;
}

a.icon_white[target=_blank]:not(.img)::after {
  color: #ebebeb;
}
a[target=_blank]:not(.img):after {
  margin-left: 5px;
  content: "open_in_new";
  font-family: "Material Symbols";
  font-weight: 200;
  font-size: 1.25em;
  line-height: 1;
}
a[target=_blank]:not(.img):hover {
  opacity: 0.75;
}
a[target=_blank][href$=".pdf"]::after, a[target=_blank][href$=".zip"]::after, a[target=_blank][href$=".txt"]::after, a[target=_blank][href$=".doc"]::after, a[target=_blank][href$=".xls"]::after, a[target=_blank][href$=".xlsx"]::after {
  display: inline-block;
  position: relative;
  top: 1px;
  width: 16px;
  height: 14px;
  content: "";
}
a[target=_blank][href$=".pdf"]::after {
  background: url(/recruit/assets/img/ico-pdf.webp) no-repeat right center/16px auto;
}
a[target=_blank][href$=".zip"]::after {
  background: url(/recruit/assets/img/ico-zip.webp) no-repeat right center/16px auto;
}
a[target=_blank][href$=".txt"]::after {
  background: url(/recruit/assets/img/ico-txt.webp) no-repeat right center/16px auto;
}
a[target=_blank][href$=".doc"]::after {
  background: url(/recruit/assets/img/ico-word.webp) no-repeat right center/16px auto;
}
a[target=_blank][href$=".xls"]::after, a[target=_blank][href$=".xlsx"]::after {
  background: url(/recruit/assets/img/ico-excel.webp) no-repeat right center/16px auto;
}
a:not(.button) {
  opacity: 1;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  text-decoration: none;
}
a.entry_logo {
  padding: 10px;
  display: inline-block;
  border: 1px solid #CCCCCC;
}

.hamb {
  position: relative;
  width: 72px;
  height: 72px;
  border-left: 2px solid #e5e5e5;
}
.hamb > span {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 2px;
  margin-top: -2px;
  background: #262520;
  -webkit-transform: translate(-50%);
  transform: translate(-50%);
}
.hamb > span::before, .hamb > span::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #262520;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  content: "";
}
.hamb span::before {
  margin-top: -8px;
}
.hamb span::after {
  margin-top: 8px;
}
.hamb:hover span::before {
  margin-top: -6px;
}
.hamb:hover span::after {
  margin-top: 6px;
}
.hamb:active span {
  opacity: 0.6;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/*#main_menu_what .outline_text*/
#main_menu_works .outline_text,
#main_menu_voice .outline_text,
#main_menu_works_style .outline_text {
  margin-bottom: 120px;
  z-index: 1;
}

.outline_more {
  display: inline-block;
  margin-right: 24%;
}

p:has(a.more_circle) {
  position: relative;
}

.more_circle {
  position: absolute;
  display: inline-block;
  top: -10px;
  right: 0;
  width: 144px;
  height: 144px;
  border-radius: 50%;
  border: 1px solid #CCCCCC;
  color: #262520;
  background: #ffffff;
}
.more_circle span {
  position: absolute;
  top: calc(50% + 5px);
  left: 50%;
  padding-bottom: 30px;
  font-size: 1.6rem;
  font-weight: 700;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.more_circle .arrow::before {
  right: 44px;
  width: 12px;
  height: 2px;
  background: #262520;
}
.more_circle .arrow::after {
  right: 45px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #262520;
  border-right: 2px solid #262520;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.more_circle .arrow::before, .more_circle .arrow::after {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  vertical-align: middle;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  content: "";
}
.more_circle:hover {
  background-color: #f8f6ef;
}
.more_circle:hover .arrow {
  color: #262520;
}

.type_name span.more_circle_override, .type_dept span.more_circle_override {
  position: absolute;
  right: 0;
  top: 50%;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 1px solid #CCCCCC;
  color: #262520;
  background: #ffffff;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.type_name span.arrow, .type_dept span.arrow {
  position: absolute;
  right: 30px;
  top: 50%;
  padding-right: 20px;
  font-size: 1.6rem;
  font-weight: 700;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.type_name span.arrow::before, .type_dept span.arrow::before {
  right: 44px;
  width: 12px;
  height: 2px;
  background: #262520;
}
.type_name span.arrow::after, .type_dept span.arrow::after {
  right: 45px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #262520;
  border-right: 2px solid #262520;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.type_name span.arrow::before, .type_name span.arrow::after, .type_dept span.arrow::before, .type_dept span.arrow::after {
  position: absolute;
  top: 10%;
  right: 0;
  bottom: 0;
  margin: auto;
  vertical-align: middle;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  content: "";
}

@media screen and (max-width: 864px) {
  .more_circle {
    top: 95%;
    right: 0;
    width: 96px;
    height: 96px;
  }
  /*#main_menu_what .outline_text,*/
  #main_menu_works .outline_text,
  #main_menu_voice .outline_text,
  #main_menu_works_style .outline_text {
    margin-bottom: 40px;
  }
  .outline_more {
    margin-right: 0;
  }
}
/* Header Items */
/* Inner Right Navigation */
/* Breadcrumbs */
#footmark {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 20px;
}

#main_photo_title #footmark {
  -webkit-box-align: unset;
      -ms-flex-align: unset;
          align-items: unset;
  position: relative;
  float: right;
  padding: 20px;
}

body#lower #footmark {
  width: 100%;
}
body#lower #footmark::after {
  display: none;
}

#footmark ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
#footmark li {
  color: #262520;
  font-size: 1.6rem;
  font-weight: 400;
}
#footmark li:not(:first-child) {
  position: relative;
  margin-left: 10px;
  padding-left: 25px;
}
#footmark li:not(:first-child)::before {
  position: absolute;
  top: 0%;
  left: 0;
  width: 15px;
  height: 0px;
  text-align: center;
  color: #999999;
  content: "•";
}
#footmark a {
  color: #065fd4;
  text-decoration: underline;
}
#footmark a:hover {
  color: #065fd4;
}

@media screen and (max-width: 864px) {
  #footmark {
    left: 0;
    top: 70px;
    padding: 10px 20px 10px !important;
  }
  #footmark li {
    font-size: 1.2rem;
  }
  #main_photo_title #footmark {
    float: left;
    top: 0px;
  }
}
/* recaptcha badge */
a.pagetop {
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 auto;
  padding: 15px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
a.pagetop span {
  display: block;
  position: relative;
  width: 32px;
  height: 2px;
  margin: 30px auto 0;
  background: rgb(99, 98, 98);
}
a.pagetop span::before {
  position: absolute;
  top: -20px;
  left: 4px;
  width: 22px;
  height: 22px;
  border-top: 2px solid rgb(99, 98, 98);
  border-right: 2px solid rgb(99, 98, 98);
  opacity: 1;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  -webkit-animation-duration: 0.2s;
          animation-duration: 0.2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  content: "";
}
a.pagetop:hover span::before {
  top: -15px;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
a.pagetop:active span::before {
  -webkit-animation-name: top-on;
          animation-name: top-on;
}

@-webkit-keyframes top-on {
  100% {
    top: -30px;
    opacity: 0;
  }
}

@keyframes top-on {
  100% {
    top: -30px;
    opacity: 0;
  }
}
/* Title Items */
h2 {
  font-size: 3rem;
  font-weight: 600;
}
h2.main_title span {
  display: inline-block;
}
h2.main_title span:first-child {
  font-size: 14rem;
  font-weight: 700;
  line-height: 1;
  color: #ffffff;
}
h2.main_title.fsmall span:first-child {
  font-size: 8rem;
}

/* top work style */
#article #main_menu_works_style h2.main_title {
  width: 100%;
  margin: 0 auto;
}

#main_menu_works_style h2.main_title .top_text {
  position: relative;
  text-align: center;
}
#main_menu_works_style h2.main_title .bottom_text {
  position: relative;
  text-align: right;
}
#main_menu_works_style h2.main_title span.box_polygon_white.pc {
  display: block;
}
#main_menu_works_style h2.main_title span.box_polygon_white.sp {
  display: none;
}
#main_menu_works_style h2.main_title .top_text img,
#main_menu_works_style h2.main_title .bottom_text img {
  display: inline-block;
  position: relative;
  width: 40%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 8/5;
}
#main_menu_works_style h2.main_title .top_text p {
  display: inline-block;
  position: relative;
  font-size: 14rem;
  font-weight: 700;
  line-height: 1;
  margin-right: 20px;
  color: #ffffff;
}
#main_menu_works_style h2.main_title .bottom_text p {
  display: inline-block;
  position: relative;
  font-size: 14rem;
  font-weight: 700;
  line-height: 1;
  margin-right: 20px;
  color: #ffffff;
  line-height: 0.5;
  margin: 20px 20px 0 0;
  color: #ffffff;
}
#main_menu_works_style h2.main_title .top_text p {
  vertical-align: bottom;
}
#main_menu_works_style h2.main_title .bottom_text p {
  vertical-align: top;
}
#main_menu_works_style h2.main_title .bottom_text span.box_polygon_white.pc {
  position: relative;
  margin: 60px 75px 0 0;
}

#main_menu_voice h2.main_title {
  position: relative;
}

h2.boder_title {
  text-align: center;
  font-size: 2.5rem;
  font-weight: 600;
}
h2 span.underline {
  display: inline-block;
  border-bottom: 8px solid #262520;
}
h2.bottomspace {
  padding: 80px 0 60px 0;
}

h3 {
  font-size: 2.5rem;
  font-weight: 600;
}
h3.sub_title {
  font-size: 4rem;
  font-weight: 600;
}
h3.step_title, h3.step_title_big {
  position: relative;
}
h3.step_title span:first-child {
  font-size: 8rem;
}
h3.step_title_big span:first-child {
  font-size: 10rem;
}
h3.step_title span:first-child, h3.step_title_big span:first-child {
  color: #ffffff;
  font-weight: 700;
  line-height: 1;
}
h3.step_title span:first-child + span {
  font-size: 2.5rem;
}
h3.step_title_big span:first-child + span {
  font-size: 4rem;
}
h3.step_title span:first-child + span, h3.step_title_big span:first-child + span {
  position: absolute;
  top: 50%;
  left: 0;
  font-weight: 600;
}
h3.step_title > .white_logo {
  position: absolute;
  bottom: -20px;
  right: 35px;
  text-shadow: 1px 1px 1px #999;
}
h3.pickup_title span:first-child {
  display: block;
  font-size: 5rem;
  font-weight: 700;
}
h3.pickup_title span:first-child + span {
  display: block;
  font-size: 2rem;
  font-weight: 600;
}

h4 {
  font-size: 2.8rem;
  font-weight: bold;
}
h4.sub_title {
  font-size: 4rem;
  font-weight: bold;
}
h4.underline {
  text-align: center;
}
h4.underline.left {
  font-size: 3rem;
  text-align: left;
}
h4.underline span {
  display: inline-block;
  border-bottom: 8px solid #262520;
}

h5 span.underline {
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  display: inline-block;
  border-bottom: 8px solid #262520;
}
h5 span.text_flash {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
}

.block_title {
  display: inline-block;
  --x-gradient: linear-gradient(90deg, #262520 0 20px, transparent 0 calc(100% - 20px), #262520 calc(100% - 20px));
  --y-gradient: linear-gradient(#262520 0 20px, transparent 0 calc(100% - 20px), #262520 calc(100% - 20px));
  position: relative;
  margin: 0 auto;
  min-width: 50%;
  max-width: 1104px;
  padding: 3rem 5rem;
  margin-bottom: 0.2rem;
  background-image: var(--x-gradient), var(--y-gradient), var(--x-gradient), var(--y-gradient);
  background-repeat: no-repeat;
  background-size: 100% 3px, 3px 100%, 100% 3px, 3px 100%;
  background-position: top, right, bottom, left;
  text-align: center;
}
.block_title.nonwide {
  min-width: auto;
  max-width: none;
  padding: 1rem 7.2rem;
}
.block_title span.title_nomal {
  display: inline-block;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.5;
}
.block_title span.title_smale {
  display: inline-block;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
}
.block_title span.title_big {
  display: inline-block;
  font-size: 3.5rem;
  font-weight: 500;
  line-height: 1.5;
}

.move_step_title {
  position: relative;
  font-size: 2.5rem;
  font-weight: 700;
}
.move_step_title span:last-child {
  margin: 0 0 0 5px;
}
.move_step_title span:first-child {
  position: relative;
  display: inline-block;
  margin: 0;
  padding-top: 40px;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}

.outline p,
.detail p {
  font-size: 1.6rem;
}

.outline .outline_title,
.detail .detail_title {
  font-size: 2rem;
}

#main_photo .main_photo_text {
  display: block;
  font-size: 2.5rem;
  margin-bottom: 100px;
  padding: 0 144px;
}

.outline .outline_text,
.detail .detail_text {
  font-size: 1.6rem;
}

.remarks {
  font-size: 1.3rem;
}

em.strong {
  font-weight: bold;
  display: inline;
}

.title_more {
  font-size: 14rem;
  font-weight: 700;
  color: #ffffff;
}

@media only screen and (max-width: 1277px) {
  #main_photo .main_photo_text {
    padding: 0px 5px;
  }
}
@media only screen and (max-width: 1170px) {
  #main_menu_works_style h2.main_title .top_text p,
  #main_menu_works_style h2.main_title .bottom_text p {
    font-size: 12rem;
  }
}
@media only screen and (max-width: 1024px) {
  #main_menu_works_style h2.main_title .top_text p,
  #main_menu_works_style h2.main_title .bottom_text p {
    font-size: 10rem;
  }
}
@media screen and (max-width: 864px) {
  h2 {
    font-size: 2.5rem;
  }
  #article #main_menu_works_style h2.main_title {
    margin: 0 auto 50px;
  }
  h2.main_title span:first-child, h2.main_title.fsmall span:first-child {
    font-size: 7.5rem;
  }
  #main_menu_works_style h2.main_title .top_text p,
  #main_menu_works_style h2.main_title .bottom_text p {
    font-size: 7.5rem;
  }
  h2.main_title span.pc {
    display: none;
  }
  #main_menu_works_style h2.main_title .top_text {
    text-align: right;
    padding-bottom: 60px;
  }
  #main_menu_works_style h2.main_title .bottom_text {
    text-align: left;
  }
  #main_menu_works_style h2.main_title .top_text img,
  #main_menu_works_style h2.main_title .bottom_text img {
    width: 70%;
    min-width: 240px;
  }
  #main_menu_works_style h2.main_title .top_text > p {
    position: absolute;
    bottom: 10px;
    left: 30%;
    z-index: 2;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  #main_menu_works_style h2.main_title .bottom_text > p {
    position: absolute;
    top: -45px;
    right: 0.5rem;
    z-index: 2;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
  #main_menu_works_style h2.main_title span.box_polygon_white.pc {
    display: none;
  }
  #main_menu_works_style h2.main_title span.box_polygon_white.sp {
    display: block;
  }
  #main_menu_works_style h2.main_title .bottom_text > span.box_polygon_white.sp {
    position: absolute;
    bottom: 10px;
    left: 0;
    z-index: 2;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
  }
  h2.bottomspace {
    padding: 40px 0 25px 0;
  }
  h3 {
    font-size: 2rem;
  }
  h3.step_title span:first-child {
    font-size: 6rem;
  }
  h3.step_title_big span:first-child {
    font-size: 4rem;
  }
  h3.step_title span:first-child + span {
    font-size: 2rem;
  }
  h3.step_title_big span:first-child + span {
    font-size: 2.5rem;
  }
  h3.step_title > .white_logo {
    font-size: 6rem;
  }
  h3.sub_title {
    font-size: 2.5rem;
  }
  h3.pickup_title span:first-child {
    font-size: 4rem;
  }
  h3.pickup_title span:first-child + span {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  h4.sub_title {
    font-size: 2.6rem;
  }
  .move_step_title {
    font-size: 2rem;
  }
  .move_step_title span:first-child {
    font-size: 1.8rem;
    padding: 35px 0px 15px;
  }
  .outline p,
  .detail p {
    font-size: 1.5rem;
  }
  .outline .outline_title,
  .detail .detail_title {
    font-size: 1.8rem;
  }
  .pickup_title {
    font-size: 4rem;
  }
  .title_more {
    font-size: 6rem;
  }
  .block_title {
    width: 100%;
  }
  .block_title.nonwide {
    padding: 1rem 5.2rem;
    width: auto;
  }
  .block_title span.title_nomal {
    font-size: 1.8rem;
  }
  .block_title span.title_smale {
    font-size: 1.6rem;
  }
  .block_title span.title_big {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 1279px) {
  .shape_outside_R .block_title.nonwide,
  .shape_outside_L .block_title.nonwide {
    padding: 1rem 5.2rem;
    width: auto;
  }
  .shape_outside_R .block_title span.title_nomal,
  .shape_outside_L .block_title span.title_nomal {
    font-size: 1.8rem;
  }
  .shape_outside_R .block_title span.title_smale,
  .shape_outside_L .block_title span.title_smale {
    font-size: 1.6rem;
  }
  .shape_outside_R .block_title span.title_big,
  .shape_outside_L .block_title span.title_big {
    font-size: 2.5rem;
  }
}
/* Sub Menu */
@media screen and (max-width: 864px) {
  .sp_menu .select_navi {
    display: block;
  }
  .sp_menu .select_navi ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .sp_menu .select_navi li {
    position: relative;
    display: block;
    text-align: left;
    margin: 2px;
    width: calc(50% - 4px);
    background-color: #ffffff;
  }
  .sp_menu .select_navi li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 16px;
    padding-right: 45px;
    font-size: 1.6rem;
    height: 48px;
    font-weight: 600;
    line-height: 48px;
    line-height: 1.2;
  }
  .sp_menu .select_navi li > a:after {
    position: absolute;
    left: inherit;
    right: 10px;
    font-size: 1.5em;
    content: "arrow_forward";
    font-family: "Material Symbols";
    font-weight: 200;
    font-weight: 400;
  }
  #main_photo .main_photo_text {
    margin-bottom: 30px;
    padding: 0 24px;
  }
}
/* Side Menu */
#text_step2 {
  width: 100%;
}

#side_bar.bar_list {
  position: sticky;
  top: 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(100% - 40px);
  /*180px%;*/
  margin: 0;
}
#side_bar.bar_list li {
  position: relative;
  text-align: left;
  font-size: 1.6rem;
  font-weight: 400;
  display: block;
}
#side_bar.bar_list li a {
  display: block;
  padding: 5px 40px 5px 0;
  border-bottom: 1px solid #CCCCCC;
  -webkit-box-shadow: 0px 1px 0px 0px #ffffff;
          box-shadow: 0px 1px 0px 0px #ffffff;
}
#side_bar.bar_list li a span:first-child {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 5px;
}
#side_bar.bar_list li a::after {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #262520;
  border-left: 1px solid #262520;
  -webkit-transform: translate(-50%, -50%) rotate(-135deg);
  transform: translate(-50%, -50%) rotate(-135deg);
  content: "";
}

@media screen and (max-width: 864px) {
  #side_bar.bar_list {
    width: 100%;
    margin-bottom: 60px;
  }
}
/* cookie Notice */
/* Clear Fix */
/*===== ■6. Work - department =====*/
.depts_section {
  position: relative;
  padding-top: 50px;
  padding-bottom: 50px;
}
.depts_section#management .flexbox2 {
  gap: 20px;
}
.depts_section#management .flexbox2 .dept_lists {
  padding: 17px 20px;
  background-color: #ffffff;
  border-radius: 16px;
}
.depts_section .outline {
  position: relative;
}
.depts_section .depts_icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.depts_section .depts_icon figure.pc {
  display: inline-block;
  vertical-align: middle;
}
.depts_section .depts_icon figure.pc img {
  width: 72px;
  height: 72px;
}
.depts_section .depts_icon p {
  display: inline-block;
  vertical-align: middle;
  width: calc(100% - 100px);
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  margin-left: 20px;
}
@media screen and (max-width: 864px) {
  .depts_section .depts_icon p {
    width: 100%;
  }
}
.depts_section .outline > figure.top_img {
  position: absolute;
  top: 0;
  left: 50%;
}
.depts_section h1 {
  font-size: 4rem;
  font-weight: 600;
}
.depts_section h1 span.underline {
  display: inline-block;
  border-bottom: 8px solid #262520;
}
.depts_section p.nomal {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
}

@media screen and (max-width: 864px) {
  .depts_section {
    padding-top: 100px;
    padding-bottom: 32px;
  }
  .depts_section .detail.pd00sp {
    padding: 0;
    border-bottom: 1px solid;
  }
  .depts_section .framsp {
    padding: 20px 0 0;
  }
  .depts_section .framsp .detail {
    padding: 50px 0 0;
  }
}
/* icon */
@media screen and (max-width: 864px) {
  #article .depts_section > img.sp {
    position: absolute;
    left: 29px;
    top: 30px;
    width: 30%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
  .depts_section .depts_icon p {
    margin-left: 0px;
  }
}
/* font */
h2.work_depts_title .mein_title {
  font-size: 4rem;
  font-weight: 600;
  line-height: 1.2;
}
h2.work_depts_title .title_bable {
  display: inline-block;
  padding: 10px;
  font-size: 2.5rem;
  font-weight: 600;
  text-align: center;
  border-radius: 20px 20px 20px 0px;
  border: 1px solid #262520;
  background: #262520;
  color: #ffffff;
  line-height: 1.5;
}
h2.work_depts_title .sub_title {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.5;
}

h3.depts_step_title {
  position: relative;
  width: 100%;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.8;
  border-bottom: 1px solid #c9bbb5;
  -webkit-box-shadow: 0px 1px 0px #ffffff;
          box-shadow: 0px 1px 0px #ffffff;
}
h3.depts_step_title span:first-child {
  position: relative;
  z-index: 2;
}
h3.depts_step_title > span:last-child {
  position: absolute;
  font-size: 6rem;
  font-weight: 600;
  color: #262520;
  text-align: right;
  bottom: -23px;
  right: 0;
  -webkit-transform: translate(-50% -50%);
  transform: translate(-50% -50%);
  z-index: 1;
}

p.depts_step_bol {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.6;
}
p.depts_step {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
}

/* box */
.depts_section .case_box {
  padding: 15px;
  font-size: 1.6rem;
  font-weight: 400;
  text-align: center;
  border-radius: 10px 10px 10px 10px;
  border: 1px solid #676660;
  background: #676660;
  color: #ffffff;
  line-height: 1.5;
  text-align: left;
}

/* backgraund image */
.backimage {
  padding: 100px 80px;
  background-color: #676660;
  color: #ffffff;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 864px) {
  .backimage {
    padding: 30px 20px;
  }
}
/* flex */
.flexbox3_depts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 20px;
}
.flexbox3_depts > * {
  width: calc(33.3% - 20px);
}
.flexbox3_depts::after {
  display: block;
  width: calc(33.3% - 20px);
  content: "";
}

#main_wrapper .prev_next .flexbox2_wide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#main_wrapper .prev_next .flexbox2_wide > * {
  font-size: 2rem;
  font-weight: 600;
  margin: 0 auto;
}

/* ===================================
	File Name   : module.css
	Description : Each parts settings

	Update Description :
	[2024/03/01] 新規作成

====================================== */
/*========== Style Contents ==========

	1. Switch
	2. margin / padding
	3. Font Style
	4. Box Layout
	5. Flow
	6. Image Layout
	7. Message Bubble & Message Box

====================================== */
/*===== ■1. Switch =====*/
.pc,
.block {
  display: block;
}

.sp {
  display: none;
}

@media screen and (max-width: 864px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
/*===== ■2. margin / padding =====*/
.ml05 {
  margin-left: 5px;
}

.ml10 {
  margin-left: 10px;
}

.ml15 {
  margin-left: 15px;
}

.ml20 {
  margin-left: 20px;
}

.ml30 {
  margin-left: 30px;
}

.ml40 {
  margin-left: 40px;
}

.ml50 {
  margin-left: 50px;
}

.ml100 {
  margin-left: 100px;
}

.mlauto {
  margin-left: auto;
}

.mr05 {
  margin-right: 5px;
}

.mr10 {
  margin-right: 10px;
}

.mr15 {
  margin-right: 15px;
}

.mr20 {
  margin-right: 20px;
}

.mr30 {
  margin-right: 30px;
}

.mr40 {
  margin-right: 40px;
}

.mrauto {
  margin-right: auto;
}

.mlr05 {
  margin: 0 5px;
}

.mlr10 {
  margin: 0 10px;
}

.mlr15 {
  margin: 0 15px;
}

.mlr20 {
  margin: 0 20px;
}

.mlr30 {
  margin: 0 30px;
}

.mlr40 {
  margin: 0 40px;
}

.mlr75 {
  margin: 0 75px;
}

.mlrauto {
  margin: 0 auto;
}

.mtb10 {
  margin: 10px 0;
}

.mtb20 {
  margin: 20px 0;
}

.mtb30 {
  margin: 30px 0;
}

.mtb40 {
  margin: 40px 0;
}

.mtb50 {
  margin: 50px 0;
}

.mtb60 {
  margin: 60px 0;
}

.mtb70 {
  margin: 70px 0;
}

.mtb80 {
  margin: 80px 0;
}

.mtb90 {
  margin: 90px 0;
}

.mtb100 {
  margin: 100px 0;
}

.mb05 {
  margin-bottom: 5px;
}

.mb10 {
  margin-bottom: 10px;
}

.mb15 {
  margin-bottom: 15px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb25 {
  margin-bottom: 25px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb80 {
  margin-bottom: 80px;
}

.mb90 {
  margin-bottom: 90px;
}

.mb100 {
  margin-bottom: 100px;
}

.mb190 {
  margin-bottom: 190px;
}

.mt05 {
  margin-top: 5px;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt20 {
  margin-top: 20px;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mt50 {
  margin-top: 50px;
}

.mt100 {
  margin-top: 100px;
}

.pd05 {
  padding: 5px;
}

.pd10 {
  padding: 10px;
}

.pd15 {
  padding: 15px;
}

.pd20 {
  padding: 20px;
}

.pd30 {
  padding: 30px;
}

.pd40 {
  padding: 40px;
}

.pd50 {
  padding: 50px;
}

.pd100 {
  padding: 100px;
}

.pl10 {
  padding-left: 10px;
}

.pl20 {
  padding-left: 20px;
}

.pl30 {
  padding-left: 30px;
}

.pl40 {
  padding-left: 40px;
}

.pl50 {
  padding-left: 50px;
}

.pl100 {
  padding-left: 100px;
}

.pr10 {
  padding-right: 10px;
}

.pr20 {
  padding-right: 20px;
}

.pr30 {
  padding-right: 30px;
}

.pr40 {
  padding-right: 40px;
}

.pr50 {
  padding-right: 50px;
}

.pr100 {
  padding-right: 100px;
}

.pt10 {
  padding-top: 10px;
}

.pt20 {
  padding-top: 20px;
}

.pt30 {
  padding-top: 30px;
}

.pt40 {
  padding-top: 40px;
}

.pt50 {
  padding-top: 50px;
}

.pt100 {
  padding-top: 100px;
}

.pb05 {
  padding-bottom: 5px;
}

.pb10 {
  padding-bottom: 10px;
}

.pb15 {
  padding-bottom: 15px;
}

.pb20 {
  padding-bottom: 20px;
}

.pb30 {
  padding-bottom: 30px;
}

.pb40 {
  padding-bottom: 40px;
}

.pb50 {
  padding-bottom: 50px;
}

.pb100 {
  padding-bottom: 100px;
}

.w10 {
  width: 10%;
}

.w15 {
  width: 15%;
}

.w20 {
  width: 20%;
}

.w25 {
  width: 25%;
}

.w30 {
  width: 30%;
}

.w35 {
  width: 35%;
}

.w40 {
  width: 40%;
}

.w45 {
  width: 45%;
}

.w50 {
  width: 50%;
}

.w55 {
  width: 55%;
}

.w60 {
  width: 60%;
}

.w65 {
  width: 65%;
}

.w70 {
  width: 70%;
}

.w75 {
  width: 75%;
}

.w80 {
  width: 80%;
}

.w85 {
  width: 85%;
}

.w90 {
  width: 90%;
}

.w95 {
  width: 95%;
}

.w100 {
  width: 100%;
}

.floatr {
  float: right;
}

.floatl {
  float: left;
}

.indent07 {
  padding-left: 1em;
  text-indent: -0.7em;
}

.indent27 {
  padding-left: 3em;
  text-indent: -2.7em;
}

.indent1 {
  padding-left: 1em;
  text-indent: -1em;
}

.indent2 {
  padding-left: 2em;
  text-indent: -2em;
}

.indent3 {
  padding-left: 3em;
  text-indent: -3em;
}

.indent4 {
  padding-left: 4em;
  text-indent: -4em;
}

.indent5 {
  padding-left: 5em;
  text-indent: -5em;
}

.indentation1 {
  text-indent: 1em;
}

.indent_remarks {
  padding-left: 1.5em;
  text-indent: -1em;
  margin-left: 15px;
  font-size: 0.9em;
}

.indent_no {
  padding-left: 1.2em;
  text-indent: -1.2em;
}

br.mb05 {
  display: block;
  content: "";
  margin-bottom: 5px;
}
br.mb10 {
  display: block;
  content: "";
  margin-bottom: 10px;
}

@media screen and (max-width: 864px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .mb25,
  .mb30 {
    margin-bottom: 20px;
  }
  .mr15,
  .mr20 {
    margin-right: 10px;
  }
  .mlr15,
  .mlr20 {
    margin: 0 10px;
  }
  .ml00sp {
    margin-left: 0px;
  }
  .ml05sp {
    margin-left: 5px;
  }
  .ml10sp {
    margin-left: 10px;
  }
  .ml15sp {
    margin-left: 15px;
  }
  .ml20sp {
    margin-left: 20px;
  }
  .mr00sp {
    margin-right: 0px;
  }
  .mr05sp {
    margin-right: 5px;
  }
  .mr10sp {
    margin-right: 10px;
  }
  .mr15sp {
    margin-right: 15px;
  }
  .mr20sp {
    margin-right: 20px;
  }
  .ml30sp {
    margin-left: 30px;
  }
  .ml40sp {
    margin-left: 40px;
  }
  .ml50sp {
    margin-left: 50px;
  }
  .ml100sp {
    margin-left: 100px;
  }
  .m00sp {
    margin: 0px;
  }
  .mlr05sp {
    margin: 0 5px;
  }
  .mlr10sp {
    margin: 0 10px;
  }
  .mlr15sp {
    margin: 0 15px;
  }
  .mlr20sp {
    margin: 0 20px;
  }
  .mlr25sp {
    margin: 0 25px;
  }
  .mlr30sp {
    margin: 0 30px;
  }
  .mlr40sp {
    margin: 0 40px;
  }
  .mtb10sp {
    margin: 10px 0;
  }
  .mtb20sp {
    margin: 20px 0;
  }
  .mtb30sp {
    margin: 30px 0;
  }
  .mtb40sp {
    margin: 40px 0;
  }
  .mtb50sp {
    margin: 50px 0;
  }
  .mtb60sp {
    margin: 60px 0;
  }
  .mtb70sp {
    margin: 70px 0;
  }
  .mtb80sp {
    margin: 80px 0;
  }
  .mtb90sp {
    margin: 90px 0;
  }
  .mtb100sp {
    margin: 100px 0;
  }
  .mb00sp {
    margin-bottom: 0px;
  }
  .mb05sp {
    margin-bottom: 5px;
  }
  .mb10sp {
    margin-bottom: 10px;
  }
  .mb15sp {
    margin-bottom: 15px;
  }
  .mb20sp {
    margin-bottom: 20px;
  }
  .mb25sp {
    margin-bottom: 25px;
  }
  .mb30sp {
    margin-bottom: 30px;
  }
  .mb40sp {
    margin-bottom: 40px;
  }
  .mb45sp {
    margin-bottom: 45px;
  }
  .mb50sp {
    margin-bottom: 50px;
  }
  .mb60sp {
    margin-bottom: 60px;
  }
  .mb70sp {
    margin-bottom: 70px;
  }
  .mb80sp {
    margin-bottom: 80px;
  }
  .mb90sp {
    margin-bottom: 90px;
  }
  .mb100sp {
    margin-bottom: 100px;
  }
  .mt00sp {
    margin-top: 0px;
  }
  .mt05sp {
    margin-top: 5px;
  }
  .mt10sp {
    margin-top: 10px;
  }
  .mt15sp {
    margin-top: 15px;
  }
  .mt20sp {
    margin-top: 20px;
  }
  .mt25sp {
    margin-top: 25px;
  }
  .mt30sp {
    margin-top: 30px;
  }
  .mt40sp {
    margin-top: 40px;
  }
  .mt50sp {
    margin-top: 50px;
  }
  .mt100sp {
    margin-top: 100px;
  }
  .pd00sp {
    padding: 0px;
  }
  .pd05sp,
  .pd10sp {
    padding: 10px;
  }
  .pd15sp {
    padding: 15px;
  }
  .pd20sp {
    padding: 20px;
  }
  .pd30sp {
    padding: 30px;
  }
  .pd40sp {
    padding: 40px;
  }
  .pd50sp {
    padding: 50px;
  }
  .w10sp {
    width: 10%;
  }
  .w15sp {
    width: 15%;
  }
  .w20sp {
    width: 20%;
  }
  .w25sp {
    width: 25%;
  }
  .w30sp {
    width: 30%;
  }
  .w35sp {
    width: 35%;
  }
  .w40sp {
    width: 40%;
  }
  .w50sp {
    width: 50%;
  }
  .w60sp {
    width: 60%;
  }
  .w70sp {
    width: 70%;
  }
  .w80sp {
    width: 80%;
  }
  .w90sp {
    width: 90%;
  }
  .w100sp {
    width: 100%;
  }
  br.mb05sp {
    display: block;
    content: "";
    margin-bottom: 5px;
  }
  br.mb10sp {
    display: block;
    content: "";
    margin-bottom: 10px;
  }
}
/*===== ■3. Font Style =====*/
.red {
  color: #c00;
}

.white {
  color: #ffffff;
}

.gray {
  color: #636262;
}

.black {
  color: #000;
}

.basecoler {
  color: #262520;
}

.lightgray01 {
  color: #ccc;
}

.lightgray02 {
  color: #ebebeb;
}

.bol {
  font-weight: bold;
}

/* 700 */
.bol_300 {
  font-weight: 300;
}

/* Light */
.bol_400 {
  font-weight: 400;
}

/* Normal (Regular) */
.bol_500 {
  font-weight: 500;
}

/* Medium */
.bol_600 {
  font-weight: 600;
}

/* Semi Bold (Demi Bold) */
.bol_700 {
  font-weight: 700;
}

/* Bold */
.under {
  text-decoration: underline;
}

.over {
  border-top: 1px dotted #262520;
  border-left: none;
  padding: 15px 0px 0px;
}

.f_c_sc {
  color: #c9a700;
}

.f_c_sp {
  color: #ac232f;
}

.f_c_sm {
  color: #1c6ecd;
}

.b_c_sc {
  background-color: #c9a700;
}

.b_c_sp {
  background-color: #ac232f;
}

.b_c_sm {
  background-color: #1c6ecd;
}

.b_c_white {
  background-color: #ffffff;
}

.b_c_none {
  background-color: unset;
}

.text_r70 {
  padding-left: 350px;
}

.fs09em {
  font-size: 0.9em;
}

.fs10 {
  font-size: 1rem;
}

.fs12 {
  font-size: 1.2rem;
}

.fs14 {
  font-size: 1.4rem;
}

.fs15 {
  font-size: 1.5rem;
}

.fs16 {
  font-size: 1.6rem;
}

.fs18 {
  font-size: 1.8rem;
}

.fs20 {
  font-size: 2rem;
}

.fs24 {
  font-size: 2.4rem;
}

.fs25 {
  font-size: 2.5rem;
}

.fs26 {
  font-size: 2.6rem;
}

.fs28 {
  font-size: 2.8rem;
}

.fs30 {
  font-size: 3rem;
}

.fs32 {
  font-size: 3.2rem;
}

.fs34 {
  font-size: 3.4rem;
}

.fs35 {
  font-size: 3.5rem;
}

.fs36 {
  font-size: 3.6rem;
}

.fs48 {
  font-size: 4.8rem;
}

.fs64 {
  font-size: 6.4rem;
}

.left {
  text-align: left;
}

.center,
.center_img {
  text-align: center;
}

.right_img,
.right {
  text-align: right;
}

.top {
  vertical-align: top;
}

.middle {
  vertical-align: middle;
}

.bottom {
  vertical-align: bottom;
}

.flex_center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.flex_end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.opensans {
  font-family: "Open Sans", sans-serif;
}

.remarks {
  font-size: 1.3rem !important;
}

.line_H1 {
  line-height: 1;
}

.line_H2 {
  line-height: 2;
}

li.dotlist {
  list-style: disc inside;
  padding-left: 1em;
  text-indent: -1em;
}

.section_boder {
  position: relative;
  border-bottom: 1px solid #c9bbb5;
}
.section_boder:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -2px;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #ffffff;
  z-index: 0;
}

.footer_boder {
  border-bottom: 1px solid #ffffff;
  /* box-shadow: 0px 1px 0px #767575; */
}

ol {
  padding-left: 25px;
  list-style-type: decimal;
}
ol li {
  margin-bottom: 10px;
}

.nowrap {
  white-space: nowrap;
}

.black_border {
  text-align: center;
  text-decoration: underline;
  text-decoration-thickness: 7px;
  text-decoration-color: rgb(5, 5, 5);
}

@media screen and (max-width: 864px) {
  .whitesp {
    color: #ffffff;
  }
  .basecolersp {
    color: #262520;
  }
  .f_c_scsp {
    color: #c9a700;
  }
  .f_c_sasp {
    color: #ac232f;
  }
  .f_c_smsp {
    color: #1c6ecd;
  }
  .b_c_scsp {
    background-color: #c9a700;
  }
  .b_c_sasp {
    background-color: #ac232f;
  }
  .b_c_smsp {
    background-color: #1c6ecd;
  }
  .b_c_nonesp {
    background-color: unset;
  }
  .center,
  .right,
  .leftsp {
    text-align: left;
  }
  .centersp {
    text-align: center;
  }
  .rightsp {
    text-align: right;
  }
  .fs10sp {
    font-size: 1rem;
  }
  .fs12sp {
    font-size: 1.2rem;
  }
  .fs14sp {
    font-size: 1.4rem;
  }
  .fs15sp {
    font-size: 1.5rem;
  }
  .fs16sp {
    font-size: 1.6rem;
  }
  .fs18sp {
    font-size: 1.8rem;
  }
  .fs20sp {
    font-size: 2rem;
  }
  .fs24sp {
    font-size: 2.4rem;
  }
  .fs25sp {
    font-size: 2.5rem;
  }
  .text_r70 {
    padding-left: 0;
  }
}
sup {
  font-size: 75.5%;
  vertical-align: top;
  position: relative;
  top: -0.1em;
}

sub {
  font-size: 75.5%;
  vertical-align: bottom;
  position: relative;
  top: 0.1em;
}

nobor {
  text-decoration: none;
}

/*===== ■4. Box Layout =====*/
.brad05 {
  border-radius: 5px;
}

.brad10 {
  border-radius: 10px;
}

.brad15 {
  border-radius: 15px;
}

.brad16 {
  border-radius: 16px;
}

.brad20 {
  border-radius: 20px;
}

.brad25 {
  border-radius: 25px;
}

.brad30 {
  border-radius: 30px;
}

.brad35 {
  border-radius: 35px;
}

.circle {
  border-radius: 50%;
}

.circle_Right {
  border-radius: 0 50% 50% 0;
}

.circle_Left {
  border-radius: 50% 0 0 50%;
}

.brad05_nonLeft {
  border-radius: 0 5px 5px 5px;
}

.brad10_nonLeft {
  border-radius: 0 16px 16px 16px;
}

.brad05_top {
  border-radius: 5px 5px 0 0;
}

.brad10_top {
  border-radius: 10px 10px 0 0;
}

.brad25_top {
  border-radius: 25px 25px 0 0;
}

.brad05_btm {
  border-radius: 0 0 5px 5px;
}

.brad10_btm {
  border-radius: 0 0 10px 10px;
}

.brad25_btm {
  border-radius: 0 0 25px 25px;
}

#main_wrapper .flex2,
#main_wrapper .flex2_5050,
#main_wrapper .flexbox2,
#main_wrapper .flexbox2_wide,
#main_wrapper .flex3,
#main_wrapper .flexbox3,
#main_wrapper .flexbox3_wide,
#main_wrapper .flexbox3_mlr50,
#main_wrapper .flexbox3_block,
#main_wrapper .flexbox4,
#main_wrapper .flex4,
#main_wrapper .flex5 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#main_wrapper .flexbox3_mlr30 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#main_wrapper .flexbox3.menu_btn {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
#main_wrapper .flexbox3_block {
  margin: 0 auto;
  width: 86%;
  max-width: 960px;
}
#main_wrapper .flex2 > *,
#main_wrapper .flex2_5050 > *,
#main_wrapper .flexbox2 > * {
  width: calc(50% - 10px);
}
#main_wrapper .flex3 > *,
#main_wrapper .flexbox3 > * {
  width: calc(32.5% - 10px);
}
#main_wrapper .flexbox3_mlr30 > * {
  width: calc(33.3% - 20px);
}
#main_wrapper .flexbox3_mlr50 > * {
  width: calc(33.3% - 50px);
}
#main_wrapper .flexbox3.menu_btn > * {
  min-width: 250px;
  width: 30%;
}
@media screen and (max-width: 864px) {
  #main_wrapper .flexbox3.menu_btn > * {
    width: 100%;
  }
}
#main_wrapper .flexbox3.menu_tab_btn > * {
  width: calc(33.3% - 4px);
}
#main_wrapper .flexbox3.non_gap {
  margin-top: 0px;
}
#main_wrapper .flexbox3.non_gap > * {
  width: 33.3333333333%;
  row-gap: 0;
}
#main_wrapper .flexbox3_block > * {
  width: calc(34% - 18px);
}
#main_wrapper .flexbox4 > * {
  width: calc(25% - 10px);
}
#main_wrapper .flexbox4.menu_tab_btn > * {
  width: calc(25% - 4px);
}
#main_wrapper .flex4 > * {
  width: calc(25% - 10px);
}
#main_wrapper .flex5 > * {
  width: calc(20% - 10px);
}
#main_wrapper .flex2_5050 div:nth-child(odd) {
  padding-right: 20px;
}
#main_wrapper .flex2_5050 div:nth-child(even) {
  padding-left: 20px;
}
#main_wrapper .flexbox2_wide .w50.sp15 {
  width: calc(50% - 15px);
}
#main_wrapper .flexbox2_wide .w50.sp40 {
  width: calc(50% - 40px);
}
#main_wrapper .flexbox2_wide .w50.sp80 {
  width: calc(50% - 80px);
}

.benefits #main_wrapper .flexbox2_wide {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.blockbox3 div {
  display: inline-block;
  margin-bottom: 5px;
  vertical-align: top;
}

#main_wrapper .flexbox3.menu_btn div {
  margin-right: 48px;
  margin-bottom: 25px;
}
@media screen and (max-width: 864px) {
  #main_wrapper .flexbox3.menu_btn div {
    margin-right: 0;
  }
}
#main_wrapper .flexbox3.menu_btn div:last-child {
  margin-right: 0;
}

.footer_menu.blockbox2 div.blockbox3 p {
  display: inline-block;
  width: calc(33.3% - 13px);
  margin-bottom: 20px;
  /* text-align: center; */
  vertical-align: top;
  min-width: 176px;
}

#main_wrapper .flexbox3_block div {
  position: relative;
  display: block;
  height: 288px;
  text-align: center;
}
#main_wrapper .flexbox3_block.wide div:not(:last-child)::after {
  position: absolute;
  border-right: 1px dotted #262520;
  right: 0;
  top: 20%;
  content: "";
  width: 1px;
  height: 70%;
}
#main_wrapper .flexbox3_block .year {
  text-align: right;
  padding: 2rem 2rem 0 0;
}
#main_wrapper .flexbox3_block p:has(img) {
  width: 40%;
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 16/9;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
#main_wrapper .flexbox3_block .text {
  position: absolute;
  width: 100%;
  left: 50%;
  top: calc(288px - 8rem);
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  line-height: 1;
}
#main_wrapper .flexbox3_block .flexdata .text:first-child {
  width: 50%;
  left: 25%;
  top: calc(288px - 10rem);
  line-height: 1;
}
#main_wrapper .flexbox3_block .flexdata .text:first-child + p.text {
  width: 50%;
  left: 75%;
  top: calc(288px - 10rem);
  line-height: 1;
}
#main_wrapper .flexbox3_block .flexdata .text:first-child::after {
  content: "";
  position: absolute;
  left: 100%;
  top: 20%;
  border-right: 1px dotted #262520;
  width: 1px;
  height: 80%;
}

.footer_menu.blockbox2 div.footer_menu_right {
  padding-right: 40px;
}
.footer_menu.blockbox2 div.blockbox3 p {
  font-size: 1.5rem;
  font-weight: 500;
  margin-right: 10px;
}
.footer_menu.blockbox2 div.blockbox3 p::nth-of-type(3n) {
  margin-right: 0;
}
.footer_menu.blockbox2 div.blockbox3 a {
  color: #ffffff;
}

.blockbox3 div:last-child,
.footer_menu.blockbox2 div.blockbox3 p:last-child {
  margin-right: 0px;
}

.blockbox2 div {
  display: inline-block;
  width: calc(50% - 20px);
  padding: 10px 0 10px 10px;
  margin-bottom: 5px;
  text-align: center;
  text-decoration: none;
}

.footer_menu.blockbox2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer_menu.blockbox2 div {
  display: inline-block;
  width: 50%;
  margin: 0;
  padding: 0;
  text-align: left;
  text-decoration: none;
}

.boxtype_person,
.boxtype_message {
  background-color: #ffffff;
  background-clip: padding-box;
  margin-bottom: 48px;
  padding: 48px;
}
@media screen and (max-width: 864px) {
  .boxtype_person,
  .boxtype_message {
    padding: 20px 20px 40px;
  }
}

.boxtype_person {
  border-right: 1px solid transparent;
}
.boxtype_person .type_career span:nth-child(1) {
  font-size: 2rem;
  font-weight: 400;
}
.boxtype_person .type_career span:nth-child(2) {
  font-size: 2.5rem;
  font-weight: 400;
}
.boxtype_person .type_career span:nth-child(3) {
  font-size: 2.5rem;
  font-weight: 600;
}
.boxtype_person .type_career {
  margin-bottom: 16px;
}
.boxtype_person .type_photo {
  position: relative;
  margin-bottom: 10px;
}
.boxtype_person .type_photo img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 8/5;
}
.boxtype_person .type_photo > span {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 6px 9px;
  border: 2px solid #262520;
  background-color: #262520;
  color: #ffffff;
  border-radius: 0 0 0 10px;
  font-size: 1.5rem;
  font-weight: 600;
  -webkit-transform: translateY(-6px);
  transform: translateY(-6px);
}
.boxtype_person .type_name {
  clear: both;
  font-size: 2.5rem;
  font-weight: 600;
  margin-bottom: 8px;
}
.boxtype_person .type_dept {
  display: block;
  font-size: 1.5rem;
  font-weight: 400;
}

.boxtype_message {
  border-left: 1px solid transparent;
}
.boxtype_message .title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 24px;
}
.boxtype_message .message {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
}

.box_polygon,
.box_polygon_white {
  position: relative;
  width: 248px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  font-size: 2rem;
  font-weight: 600;
}

.box_polygon_small {
  display: block;
  position: relative;
  top: 16px;
  width: calc(60% - 16px);
  height: 32px;
  text-align: center;
  line-height: 32px;
  font-size: 1.5rem;
  font-weight: 500;
}

.box_polygon,
.box_polygon_small {
  border: 1px solid #262520;
  background: #262520;
  color: #ffffff;
}

.box_polygon_white {
  border: 1px solid #ffffff;
  background: #ffffff;
  color: #262520;
}

.box_polygon::after,
.box_polygon_white::after {
  position: absolute;
  top: -1px;
  right: -40px;
  border-top: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid transparent;
  content: "";
}

.box_polygon_small::after {
  position: absolute;
  top: -1px;
  right: -32px;
  border-top: 16px solid transparent;
  border-right: 16px solid transparent;
  border-bottom: 16px solid transparent;
  content: "";
}

.box_polygon::after {
  border-left: 20px solid #262520;
}

.box_polygon_small::after {
  border-left: 16px solid #262520;
}

.box_polygon_white::after {
  border-left: 20px solid #ffffff;
}

.box_rounded {
  border-radius: 15px 15px 15px 0px;
  background: #262520;
  color: #ffffff;
  padding: 16px 24px;
  font-size: 4rem;
  font-weight: bold;
}

.move_stap {
  font-size: 1.5rem;
  font-weight: 700;
}

.move_step_title span {
  margin: 0 0 0 5px;
}

.bottom_downArr {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 14px 32px 14px 16px;
  border-radius: 16px;
  border: 2px solid #262520;
  background-color: #ffffff;
  font-size: 2rem;
  font-weight: 600;
}
.bottom_downArr::after {
  position: absolute;
  top: 46%;
  right: 24px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #262520;
  border-left: 2px solid #262520;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-135deg);
  transform: translateX(-50%) translateY(-50%) rotate(-135deg);
  content: "";
}

.number_circle span {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}
.number_circle span:first-child {
  width: 33px;
  height: 33px;
  border-radius: 50%;
  background: #ffffff;
  text-align: center;
  font-weight: bold;
  display: inline-block;
  line-height: 33px;
  margin-right: 10px;
}
.number_circle span:first-child + span {
  font-size: 3rem;
}

.padSize {
  padding: 92px 48px 40px 48px;
}
@media screen and (max-width: 864px) {
  .padSize {
    padding: 68px 32px 20px;
  }
}

.workstyle_white_box_np {
  position: relative;
  height: auto;
  background-color: #ffffff;
  padding: 0px;
  border-radius: 16px;
}

.workstyle_white_box {
  padding: 32px;
  height: auto;
  background-color: #ffffff;
  border-radius: 16px;
}
.workstyle_white_box > a {
  margin: -32px;
  display: block;
  padding: 32px;
}

.workstyle_white_box div {
  display: inline-block;
}

.workstyle_logo_black_box {
  font-size: 1.5rem;
  font-weight: bold;
  background-color: #262520;
  color: #ffffff;
  text-align: center;
  border-radius: 5px 1px;
  padding: 16px 24px;
  position: absolute;
  top: 0px;
  left: 0px;
}

.workstyle_black_box {
  background-color: #262520;
  border-radius: 16px;
  color: #ffffff;
  display: inline-block;
  font-size: 1.5rem;
  left: 50%;
  padding: 15px 16px;
  position: absolute;
  transform: translate(-50%, -50%);
  text-align: center;
  top: 0%;
  width: 70%;
  -webkit-transform: translate(-50%, -50%);
  z-index: 1000;
}

.workstyle_black_box2 {
  background-color: #262520;
  border-radius: 16px;
  color: #ffffff;
  display: inline-block;
  font-size: 1.5rem;
  left: 50%;
  padding: 15px 16px;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 0%;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
  width: 45%;
  z-index: 1001;
}

.workstyle_white_box2 {
  position: relative;
  background-color: #ffffff;
  padding: 60px 40px 30px;
  border-radius: 16px;
}

.workstyle_white_box3 {
  display: block;
  background-color: #ffffff;
  border: solid 2px;
  border-radius: 16px;
  padding: 20px;
  text-align: center;
  width: 40%;
  margin: 0 auto;
}

#article .icon_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
#article .icon_box img {
  display: block;
  width: 48px;
  height: 48px;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
#article .icon_box span {
  line-height: 1.2;
}

.img_fit {
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 2/1;
  height: 100%;
  border-radius: 0px 8px 8px 0px;
  -webkit-transform: none;
  transform: none;
  margin: 0 auto;
}
.img_fit.absl_center {
  -webkit-transform: translate(-30%, 80%);
  transform: translate(-30%, 80%);
}

.benefits .img_fit {
  aspect-ratio: 300/287;
}

.photo_workstyle {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 25/14;
}

@media only screen and (max-width: 1279px) {
  #main_wrapper .flexbox3_mlr50 > * {
    margin-bottom: 10px;
    width: 45%;
  }
}
@media only screen and (max-width: 1191px) {
  #main_wrapper .flexbox3_block {
    width: 100%;
    max-width: none;
  }
  #main_wrapper .flexbox3_block .year {
    text-align: left;
    padding: 60px 0 0 24px;
  }
  #main_wrapper .flexbox3_block .year.pc {
    display: none;
  }
  #main_wrapper .flexbox3_block .text .sp {
    display: block;
  }
  #main_wrapper .flexbox3_mlr30 > * {
    width: calc(50% - 30px);
  }
}
@media only screen and (max-width: 1104px) {
  .number_circle span:first-child + span {
    font-size: 2.5rem;
  }
  #main_wrapper .flex5 {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media only screen and (max-width: 1024px) {
  .footer_menu.blockbox2 div.blockbox3 p {
    width: calc(50% - 15px);
    min-width: 152px;
  }
  .number_circle span:first-child + span {
    font-size: 2rem;
  }
  /*#main_wrapper .flex4 > *{
  	width: calc(50% - 10px);
  	margin-bottom: 24px;
  	}*/
}
@media only screen and (max-width: 849px) {
  .footer_menu.blockbox2 {
    display: inline-block;
  }
  .blockbox2 div {
    width: calc(100% - 20px);
  }
  .footer_menu.blockbox2 div {
    width: 100%;
  }
  .blockbox3 div {
    width: calc(100% - 20px);
  }
  .footer_menu.blockbox2 div.blockbox3 p:not(:last-child) {
    margin-right: 0;
  }
  .footer_menu.blockbox2 div.blockbox3 p:nth-child(odd) {
    margin-right: 24px;
  }
  .footer_menu.blockbox2 div.blockbox3 p {
    width: calc(50% - 15px);
    min-width: auto;
  }
  .footer_menu.blockbox2 div.footer_menu_right {
    padding-right: 0;
  }
}
@media screen and (max-width: 864px) {
  .brad05sp {
    border-radius: 5px;
  }
  .brad10sp {
    border-radius: 16px;
  }
  .brad15sp {
    border-radius: 15px;
  }
  .brad20sp {
    border-radius: 20px;
  }
  .brad25sp {
    border-radius: 25px;
  }
  .brad30sp {
    border-radius: 30px;
  }
  .brad35sp {
    border-radius: 35px;
  }
  .circlesp {
    border-radius: 50%;
  }
  .brad05_nonLeftsp {
    border-radius: 0 5px 5px 5px;
  }
  .brad10_nonLeftsp {
    border-radius: 0 16px 16px 16px;
  }
  .brad05_topsp {
    border-radius: 5px 5px 0 0;
  }
  .brad10_topsp {
    border-radius: 10px 10px 0 0;
  }
  .brad25_topsp {
    border-radius: 25px 25px 0 0;
  }
  .brad05_btmsp {
    border-radius: 0 0 5px 5px;
  }
  .brad10_btmsp {
    border-radius: 0 0 10px 10px;
  }
  .brad25_btmsp {
    border-radius: 0 0 25px 25px;
  }
  #main_wrapper .flex2 > *,
  #main_wrapper .flex3 > * {
    width: calc(50% - 10px);
    margin-bottom: 10px;
  }
  #main_wrapper .flex5 > *, #main_wrapper .flex5.crosstalk > * {
    width: calc(50% - 10px);
    margin-bottom: 10px;
  }
  #main_wrapper .flex4 > * {
    width: 100%;
    margin-bottom: 24px;
  }
  #main_wrapper .flex4 > *:last-child {
    margin-bottom: 0px;
  }
  #main_wrapper .flex2sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #main_wrapper .flex2_5050 > *,
  #main_wrapper .flexbox2 > *,
  #main_wrapper .flexbox2_wide > *,
  #main_wrapper .flexbox3 > *,
  #main_wrapper .flexbox3_wide > * {
    width: 100%;
    margin-bottom: 10px;
  }
  #main_wrapper .flexbox4 > * {
    width: 100%;
    margin-bottom: 10px;
  }
  #main_wrapper .flexbox4.menu_tab_btn > * {
    width: calc(100% - 4px);
  }
  #main_wrapper .flexbox3_mlr30 > *,
  #main_wrapper .flexbox3_mlr50 > * {
    width: 100%;
    margin-bottom: 10px;
  }
  #main_wrapper .flexbox3_block > * {
    width: 100%;
  }
  #main_wrapper .flexbox3_block.wide div:nth-child(1), #main_wrapper .flexbox3_block.wide div:nth-child(2) {
    width: 50%;
  }
  #main_wrapper .flexbox3_block.wide div:nth-child(3) {
    width: 100%;
  }
  #main_wrapper .flexbox3_block.wide div:nth-child(2)::after {
    content: "";
    border-right: none;
  }
  #main_wrapper .flexbox2_wide .w50.sp15.w100sp, #main_wrapper .flexbox2_wide .w50.sp40.w100sp, #main_wrapper .flexbox2_wide .w50.sp80.w100sp {
    width: 100%;
  }
  #main_wrapper .flex2_5050,
  #main_wrapper .flexbox2,
  #main_wrapper .flexbox2_wide,
  #main_wrapper .flexbox3,
  #main_wrapper .flexbox3_wide,
  #main_wrapper .flexbox4 {
    display: block;
  }
  #main_wrapper .flex2_5050 div:nth-child(odd) {
    padding-right: 0;
  }
  #main_wrapper .flex2_5050 div:nth-child(even) {
    padding-left: 0;
  }
  #main_wrapper .flexbox3.menu_btn div {
    margin-right: 0;
  }
  #main_wrapper .flexbox3.non_gap {
    margin-top: -20px;
  }
  #main_wrapper .flexbox3.non_gap > * {
    width: 100%;
  }
  .bottom_downArr {
    font-size: 1.8rem;
    padding: 10px 12px 10px 16px;
  }
  .box_polygon {
    font-size: 1.5rem;
    font-weight: 600;
    width: 176px;
    height: 32px;
    line-height: 32px;
  }
  .box_polygon_white {
    font-size: 1.5rem;
    font-weight: 600;
    width: 160px;
  }
  .box_polygon_small {
    top: 12px;
    width: calc(80% - 12px);
    height: 24px;
    line-height: 24px;
    font-size: 1.5rem;
  }
  .box_polygon::after {
    position: absolute;
    top: -1px;
    right: -32px;
    border-top: 16px solid transparent;
    border-right: 16px solid transparent;
    border-bottom: 16px solid transparent;
    content: "";
    border-left: 16px solid #262520;
  }
  .box_polygon_small::after {
    top: -1px;
    right: -24px;
    border-top: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 12px solid transparent;
    content: "";
    border-left: 12px solid #262520;
  }
  #main_wrapper .boxtype_person,
  #main_wrapper .boxtype_message {
    padding: 24px 24px 48px 24px;
  }
  #main_wrapper .boxtype_person.message_op {
    margin-bottom: 0px;
  }
  #main_wrapper .boxtype_person {
    clear: both;
    border-right: none;
    border-radius: 25px;
    position: relative;
  }
  #main_wrapper .boxtype_person.message_op {
    border-radius: 25px 25px 0 0;
  }
  #main_wrapper .boxtype_person #type_message_op {
    display: block;
  }
  #main_wrapper .boxtype_person.message_op #type_message_op {
    display: none;
  }
  #main_wrapper .boxtype_person .type_career {
    margin-bottom: 12px;
  }
  #main_wrapper .boxtype_person .type_photo {
    margin-bottom: 20px;
  }
  #main_wrapper .boxtype_person .type_photo span {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
  }
  #main_wrapper .boxtype_person .type_name {
    float: left;
    margin-bottom: 0;
    padding-right: 34px;
  }
  #main_wrapper .boxtype_person .type_dept {
    display: inline-block;
    vertical-align: middle;
  }
  #main_wrapper .boxtype_message {
    border-left: none;
    position: relative;
  }
  #main_wrapper .boxtype_message.message_cl {
    display: none;
  }
  #main_wrapper .boxtype_message #type_message_cl {
    display: block;
  }
  #main_wrapper .boxtype_message.message_cl #type_message_cl {
    display: none;
  }
  #main_wrapper .boxtype_person > #type_message_op,
  #main_wrapper .boxtype_message > #type_message_cl {
    position: absolute;
    height: 48px;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 24px);
    transform: translate(-50%, 24px);
    display: inline-block;
    margin: 0 auto;
    height: 48px;
    line-height: 48px;
    padding: 0px 80px 0px 13px;
    border: 1px solid #676660;
    background-color: #484741;
    color: #ffffff;
    border-radius: 24px;
    font-size: 1.5rem;
    font-weight: 600;
    cursor: pointer;
    min-width: 16em;
  }
  #main_wrapper .boxtype_person #type_message_op span::before, #main_wrapper .boxtype_person #type_message_op span::after {
    position: absolute;
    top: 50%;
    right: 13px;
    width: 16px;
    height: 2px;
    background: #ffffff;
    content: "";
  }
  #main_wrapper .boxtype_person #type_message_op span::before {
    -webkit-transform: translate(-50%) rotate(0deg);
    transform: translate(-50%) rotate(0deg);
  }
  #main_wrapper .boxtype_person #type_message_op span::after {
    -webkit-transform: translate(-50%) rotate(90deg);
    transform: translate(-50%) rotate(90deg);
  }
  #main_wrapper .boxtype_message #type_message_cl span::before, #main_wrapper .boxtype_message #type_message_cl span::after {
    position: absolute;
    top: 50%;
    right: 13px;
    width: 16px;
    height: 2px;
    background: #ffffff;
    content: "";
  }
  #main_wrapper .boxtype_message #type_message_cl span::before {
    -webkit-transform: translate(-50%) rotate(45deg);
    transform: translate(-50%) rotate(45deg);
  }
  #main_wrapper .boxtype_message #type_message_cl span::after {
    -webkit-transform: translate(-50%) rotate(-45deg);
    transform: translate(-50%) rotate(-45deg);
  }
  #main_wrapper .flexbox3_block div {
    height: 171px;
  }
  #main_wrapper .flexbox3_block.wide div:nth-child(1), #main_wrapper .flexbox3_block.wide div:nth-child(2) {
    height: 230px;
    margin-bottom: 30px;
  }
  #main_wrapper .flexbox3_block .spflex {
    height: 228px;
    margin-bottom: 30px;
  }
  #main_wrapper .flexbox3_block p:has(img) {
    width: 24%;
    left: 85%;
    top: 30%;
  }
  #main_wrapper .flexbox3_block.wide div:nth-child(1) p:has(img), #main_wrapper .flexbox3_block.wide div:nth-child(2) p:has(img) {
    width: 48%;
    left: 50%;
    top: 50%;
  }
  #main_wrapper .flexbox3_block .spflex p:has(img) {
    width: 28%;
    left: 50%;
    top: 28%;
  }
  #main_wrapper .flexbox3_block .text {
    top: 65%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  #main_wrapper .flexbox3_block.wide div:nth-child(1) .text, #main_wrapper .flexbox3_block.wide div:nth-child(2) .text {
    top: calc(300px - 14rem);
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
  }
  #main_wrapper .flexbox3_block .flexdata .text:first-child {
    top: calc(288px - 14rem);
  }
  #main_wrapper .flexbox3_block .flexdata .text:first-child + p.text {
    top: calc(288px - 14rem);
  }
  .img_fit {
    border-radius: 0px 0px 8px 8px;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  .img_fit.absl_center {
    -webkit-transform: none;
    transform: none;
  }
}
/*===== ■5. Flow =====*/
.workstyle_arrow {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  position: relative;
  width: 2px;
  height: 48px;
  background: currentColor;
}
.workstyle_arrow::before {
  content: "";
  width: 12px;
  height: 0.65em;
  border: 2px solid currentColor;
  border-top: 0;
  border-right: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
  position: absolute;
  left: 40%;
  bottom: -1px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.workstyle_arrow2 {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  position: relative;
  width: 0.1em;
  height: 35em;
  background: currentColor;
  margin: 0 30px;
}
.workstyle_arrow2::before {
  content: "";
  width: 0.65em;
  height: 0.65em;
  border: 0.1em solid currentColor;
  border-top: 0;
  border-right: 0;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
  position: absolute;
  left: 50%;
  bottom: -0.1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media only screen and (max-width: 1060px) {
  .recruit_flow.item8 {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media only screen and (max-width: 948px) {
  .recruit_flow.item7 {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media only screen and (max-width: 838px) {
  .recruit_flow.item6 {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
/*===== ■6. Image Layout =====*/
.img_override {
  position: relative;
}
.img_override img {
  z-index: -1;
}
.img_override > p.move_step_title {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(0, -70px);
  transform: translate(0, -70px);
}

.correlation_diagram_img {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.correlation_diagram_img > .img_zoom {
  position: absolute;
  bottom: -35px;
}
.correlation_diagram_img {
  overflow: auto;
  -ms-overflow-style: none;
}
.correlation_diagram_img::-webkit-scrollbar {
  display: none;
}
.correlation_diagram_img.active {
  position: relative;
  display: inline-block;
  overflow: scroll;
}

img[usemap] {
  width: 100%;
  min-width: auto;
  max-width: 100%;
  height: auto;
}

#article .correlation_diagram_img.active > img {
  min-width: 100%;
  max-width: initial;
  width: auto;
  height: auto;
  overflow: hidden;
}
#article .correlation_diagram_img.active > img:hover {
  cursor: move;
}

#zoom_inout {
  display: none;
  position: relative;
  width: 72px;
  height: 72px;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #ffffff;
  background-color: #737375;
  border: 1px solid #737375;
  border-radius: 10%;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  padding-top: 42px;
  cursor: pointer;
}
#zoom_inout span.tglText {
  font-size: 1.2rem;
}
#zoom_inout span.tglText:before {
  position: absolute;
  top: 10px;
  left: 50%;
  width: 24px;
  height: 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 2px solid #ffffff;
  border-radius: 50%;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
#zoom_inout span.tglText:after {
  position: absolute;
  top: 34px;
  left: 60%;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 12px;
  height: 2px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #ffffff;
  content: "";
}
#zoom_inout span.tlgarrow::before {
  position: absolute;
  left: inherit;
  top: 21px;
  left: 50%;
  width: 12px;
  height: 2px;
  border: none;
  background: #ffffff;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
#zoom_inout span.tlgarrow::after {
  position: absolute;
  left: inherit;
  top: 16px;
  left: 50%;
  border: none;
  background: #ffffff;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
#zoom_inout.active span.tlgarrow::after {
  top: 21px;
  left: 50%;
  width: 12px;
  height: 2px;
}
#zoom_inout span.tlgarrow::after {
  width: 2px;
  height: 12px;
}

img[usemap] {
  max-width: 100%;
  height: auto;
}

div:has(.aspect_message) p {
  display: block;
  position: relative;
}
div:has(.aspect_message) p > span:nth-child(2) {
  font-size: 1.5rem;
  position: absolute;
  top: 37%;
  left: 68%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
div:has(.aspect_message) p > span:nth-child(3) {
  font-size: 2.5rem;
  position: absolute;
  top: calc(37% + 2.5rem);
  left: 68%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

#zoom_in,
#zoom_out {
  display: none;
}

@media only screen and (max-width: 1028px) {
  div:has(.aspect_message) p > span:nth-child(2) {
    font-size: 1.1rem;
  }
  div:has(.aspect_message) p > span:nth-child(3) {
    font-size: 2rem;
  }
}
@media screen and (max-width: 864px) {
  .img_override > p.move_step_title {
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(0, -50px);
    transform: translate(0, -50px);
  }
  #zoom_inout {
    display: block;
    z-index: 1;
  }
}
/*===== ■7. Message Bubble & Message Box =====*/
.message_image_side_box {
  max-width: 1300px;
  display: block;
  padding: 0 215px;
  margin: 0 auto;
}

.talk_session {
  display: block;
  width: 100%;
}

.talk_session_r {
  text-align: right;
}

.talk_session_l {
  text-align: left;
}

.message_image_side_box h5,
.message_image_right_box h5,
.message_image_left_box h5 {
  text-align: center;
  position: relative;
  width: 100%;
  height: auto;
}

.message_image_side_box h5 {
  padding-bottom: 50px;
}
.message_image_side_box h5 > p:nth-child(2) {
  position: absolute;
  height: auto;
  top: 25%;
  left: calc(50% - 448px);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.message_image_side_box h5 > p:nth-child(3) {
  position: absolute;
  height: auto;
  top: 25%;
  right: calc(50% - 448px);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

#article .message_image_right_box h5 > img,
#article .message_image_left_box h5 > img {
  position: absolute;
  top: 0;
  width: 20%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -1;
}
#article .message_image_right_box h5 > img {
  right: 0;
}
#article .message_image_left_box h5 > img {
  left: 0;
}

.speech_bubble_gray {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  padding: 15px 24px;
  margin-left: 38%;
  border-radius: 20px;
  border: 1px solid #676660;
  background: #484741;
  color: #ffffff;
  font-weight: bold;
  font-size: 1.8rem;
}
.speech_bubble_gray::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 70%;
  border-top: 0px solid transparent;
  border-right: 12px solid #484741;
  border-left: 6px solid transparent;
  border-bottom: 12px solid transparent;
}

.speech_bubble_list,
.speech_bubble_list_3less {
  text-align: center;
  max-width: none;
  border: none;
}

.world_bubble_list {
  text-align: left;
  max-width: none;
  border: none;
}

.speech_bubble_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  vertical-align: middle;
}

.speech_bubble_list_3less li {
  text-align: center;
  vertical-align: middle;
  display: inline-block;
}

.speech_bubble_list li p,
.speech_bubble_list_3less li p,
.world_bubble_list p {
  padding: 0 20px;
  margin: 0;
}

.speech_bubble_list li span,
.speech_bubble_list_3less li span,
.world_bubble_list p span {
  position: relative;
  display: inline-block;
  padding: 25px 40px;
  margin-right: 24px;
  height: auto;
  border-radius: 100vh;
  border: 1px solid #ffffff;
  background: #ffffff;
  color: #262520;
  font-weight: bold;
  font-size: 1.8rem;
}

.speech_bubble_list.Internship li span {
  padding: 36px 48px;
  border-radius: 100vh;
}

.bubble_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.bubble_list li {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0 0 24px;
  width: calc(32.5% - 10px);
}
.bubble_list li p {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 16px;
  padding: 16px 24px;
  background-color: #ffffff;
  box-sizing: border-box;
  width: 100%;
}
.bubble_list li p::before {
  position: absolute;
  content: "";
  top: 100%;
  left: 50%;
  border-top: 0px solid transparent;
  border-right: 18px solid transparent;
  border-left: 15px solid #ffffff;
  border-bottom: 18px solid transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.bubble_list li p.right_arrow::before {
  border-right: 15px solid #ffffff;
  border-left: 18px solid transparent;
}
.bubble_list.overlay li p {
  margin-left: auto;
  width: 90%;
  z-index: 10;
}
.bubble_list.overlay li span:has(img) {
  margin-left: 0;
  width: 90%;
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}
.bubble_list img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 15/8;
  -webkit-filter: brightness(0.9);
  filter: brightness(0.9);
}

.before_after_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.before_after_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.before_after_list li.title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
}
.before_after_list li.title div:first-child {
  position: relative;
  width: calc(50% - 36px);
  text-align: center;
}
.before_after_list li.title div:first-child::after, .before_after_list li.title div:first-child::before {
  content: "";
  position: absolute;
  top: 50%;
  right: -36px;
}
.before_after_list li.title div:first-child::after {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 72px;
  height: 4px;
  background: #262520;
  border-radius: 4px;
}
.before_after_list li.title div:first-child::before {
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  width: 16px;
  height: 16px;
  border-top: 4px solid #262520;
  border-right: 4px solid #262520;
}
.before_after_list li.title div:last-child {
  width: calc(50% + 36px);
  text-align: center;
}
.before_after_list li > * {
  position: relative;
  text-align: left;
}
.before_after_list li > *.before_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(50% - 36px);
  padding: 16px 24px 16px 24px;
  border-radius: 16px 0 0 16px;
  color: #ffffff;
  background-color: #262520;
}
.before_after_list li > *.before_item::after {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 36px; /* 三角形の横幅 */
  height: 100%; /* 親の高さに合わせる！ */
  background: #262520;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  -webkit-transform: translate(100%, 0);
  transform: translate(100%, 0);
  z-index: 10;
}
.before_after_list li > *.after_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(50% + 36px);
  padding: 16px 24px 16px 60px;
  border-radius: 0 16px 16px 0;
  color: #262520;
  background-color: #ffffff;
}

/* 左向き */
.speech_bubble_list li p span::before,
.speech_bubble_list_3less li p span:before,
.world_bubble_list p span:before {
  position: absolute;
  content: "";
  top: 100%;
  left: 50%;
  border-top: 0px solid transparent;
  border-right: 18px solid transparent;
  border-left: 15px solid #ffffff;
  border-bottom: 18px solid transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.speech_bubble_list_3less.ellipse li p span:before {
  content: none;
}

/* 右向き */
.shape_outside_L .speech_bubble_list p span:before,
.world_bubble_list p.right span:before {
  border-left: 18px solid transparent;
  border-right: 15px solid #ffffff;
}

.shape_outside_R,
.shape_outside_L {
  clear: both;
}

#article .shape_outside_R figure.pc img,
#article .shape_outside_L figure.pc img {
  width: auto;
  height: 100%;
}

.shape_outside_R .image_left {
  float: left;
  shape-outside: circle();
  padding: 120px 120px 120px 0;
}

.shape_outside_L .image_right {
  float: right;
  shape-outside: circle();
  padding: 120px 0 120px 120px;
}

.talk_bubble_gray, .talk_bubble_gray__right, .talk_bubble_gray__left {
  display: inline-block;
  text-align: left;
  padding: 16px 22px;
  height: auto;
  font-size: 1.8rem;
  font-weight: 600;
  border: 1px solid #636262;
  background: #636262;
  color: #ffffff;
}
.talk_bubble_gray__left {
  border-radius: 0 40px 40px 40px;
}
.talk_bubble_gray__right {
  border-radius: 40px 0 40px 40px;
}

.talk_bubble_White, .talk_bubble_White__right, .talk_bubble_White__left {
  display: inline-block;
  text-align: left;
  padding: 16px 22px;
  height: auto;
  font-size: 1.8rem;
  border: 1px solid #ffffff;
  background: #ffffff;
  color: #262520;
}
.talk_bubble_White__left {
  border-radius: 0 40px 40px 40px;
}
.talk_bubble_White__right {
  border-radius: 40px 0 40px 40px;
}

.bubble_black {
  display: inline-block;
  text-align: left;
  padding: 16px 24px;
  height: auto;
  border-radius: 40px 40px 40px 0px;
  border: 1px solid #262520;
  background: #262520;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 600;
}
.bubble_black.title_on {
  position: absolute;
  top: -24px;
  left: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.move_step_title .bubble_black {
  padding: 16px 24px;
}
.move_step_title .bubble_black.title_on {
  position: absolute;
  top: 30px;
  left: 0;
}

.cross_talk_message div {
  display: block;
  position: relative;
}
.cross_talk_message p span {
  display: inline-block;
  text-align: left;
  vertical-align: top;
  display: inline-block;
}
.cross_talk_message div:nth-child(odd) p.p_ptext {
  width: auto;
  margin: 0 20% 0 calc(15% + 20px);
}
.cross_talk_message div:nth-child(odd) p.p_photo {
  display: inline-block;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 15%;
  margin-right: 20px;
}
.cross_talk_message div:nth-child(even) p.p_ptext {
  width: auto;
  margin: 0 calc(15% + 20px) 0 20%;
}
.cross_talk_message div:nth-child(even) p.p_photo {
  display: inline-block;
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  width: 15%;
  margin-left: 20px;
}

@media only screen and (max-width: 1279px) {
  .shape_outside_R .text_right,
  .shape_outside_L .text_left {
    clear: both;
  }
  .shape_outside_R .pc,
  .shape_outside_L .pc {
    display: none;
  }
  .shape_outside_R .sp,
  .shape_outside_L .sp,
  .world_bubble_image.sp {
    display: block;
  }
  .shape_outside_R .centersp,
  .shape_outside_L .centersp {
    text-align: center;
  }
  .shape_outside_R .leftsp,
  .shape_outside_L .leftsp {
    text-align: left;
  }
  .shape_outside_R .rightsp,
  .shape_outside_L .rightsp {
    text-align: right;
  }
  .shape_outside_R .image_left,
  .shape_outside_L .image_right {
    clear: both;
    shape-outside: none;
    padding: 0;
    margin-right: 0;
  }
  .world_bubble_list p {
    padding: 0 20%;
  }
  .world_bubble_list p.rightsp span:before {
    border-right: 15px solid #ffffff;
    border-left: 18px solid transparent;
  }
  .world_bubble_list p.leftsp span:before {
    border-right: 18px solid transparent;
    border-left: 15px solid #ffffff;
  }
  /* 右向き */
  /* 左向き */
}
@media screen and (max-width: 864px) {
  .speech_bubble_list li,
  .speech_bubble_list_3less li {
    display: block;
  }
  .speech_bubble_list li span,
  .speech_bubble_list_3less li span {
    margin-right: 0;
  }
  .speech_bubble_list.circle_type li p {
    width: auto;
    margin-right: 0;
  }
  .speech_bubble_list.circle_type li span {
    width: 60%;
    height: auto;
    display: inline-block;
  }
  /* 右向き */
  .speech_bubble_list li p.rightsp span::before,
  .speech_bubble_list_3less li p.rightsp span:before {
    border-right: 15px solid #ffffff;
    border-left: 18px solid transparent;
  }
  /* 左向き */
  .speech_bubble_list li p.leftsp span::before,
  .speech_bubble_list_3less li p.leftsp span:before {
    border-right: 18px solid transparent;
    border-left: 15px solid #ffffff;
  }
  .message_image_side_box {
    padding: 0px 29px;
  }
  .message_image_side_box h5 {
    padding-bottom: 150px;
  }
  .message_image_side_box h5 > p:nth-child(2) {
    top: auto;
    bottom: -80px;
    left: calc(50% - 140px);
  }
  .message_image_side_box h5 > p:nth-child(3) {
    top: auto;
    bottom: -80px;
    right: calc(50% - 140px);
  }
  .world_bubble_list p {
    padding: 0 20px;
  }
  .bubble_black {
    padding: 7px 12px;
    font-size: 1.2rem;
  }
  .cross_talk_message div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .cross_talk_message div:nth-child(odd) p.p_ptext, .cross_talk_message div:nth-child(even) p.p_ptext {
    width: 90%;
    margin: 0;
  }
  .cross_talk_message div:nth-child(odd) p.p_photo {
    position: relative;
  }
  .cross_talk_message div:nth-child(even) p.p_photo {
    position: relative;
    margin-left: 0;
    margin-right: 20px;
  }
  .bubble_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .bubble_list li {
    width: 100%;
  }
  .bubble_list li.right_arrow::before {
    border-right: 18px solid transparent;
    border-left: 15px solid #ffffff;
  }
  .bubble_list li p {
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  .before_after_list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .before_after_list li.title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .before_after_list li > * {
    position: relative;
    text-align: left;
  }
  .before_after_list li > *.before_item {
    width: 100%;
    border-radius: 16px 16px 0 0;
  }
  .before_after_list li > *.before_item::after {
    top: 100%;
    left: 0;
    width: 100%;
    height: 24px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    z-index: 10;
  }
  .before_after_list li > *.after_item {
    width: 100%;
    padding: 34px 24px 16px;
    border-radius: 0 0 16px 16px;
  }
}
@media screen and (max-width: 864px) {
  .over {
    border-top: none;
    border-left: 1px dotted #262520;
    padding: 5px 10px;
  }
  .workstyle_black_box2 {
    width: 70%;
  }
  .workstyle_white_box3 {
    width: 100%;
  }
  .workstyle_white_box2 {
    padding: 50px 30px 30px;
  }
  .workstyle_white_box2 > .flex4 > .flex2sp > p:first-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-right: 1em;
    line-height: 1.2;
  }
  .workstyle_black_box2,
  .workstyle_black_box {
    padding: 12px 16px;
  }
}
.benefits .padSize {
  padding: 20px 48px 40px 48px;
}
@media only screen and (max-width: 849px) {
  .benefits .padSize {
    padding: 68px 32px 20px;
  }
}
.benefits .health_challenges {
  position: relative;
  width: -webkit-fill-available;
  width: -moz-available;
  width: stretch;
  margin: 0 -10px 0px;
  padding: 28px 24px 18px;
  border: 1px solid #c9bbb5;
}
@media only screen and (max-width: 849px) {
  .benefits .health_challenges {
    padding: 28px 10px 18px;
  }
}
.benefits .health_challenges p.__title {
  position: absolute;
  top: 0px;
  left: 16px;
  padding: 10px 16px;
  font-size: 1.8rem;
  color: #484741;
  background-color: #ffffff;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
@media only screen and (max-width: 849px) {
  .benefits .health_challenges p.__title {
    padding: 10px 5px;
  }
}
.benefits .health_challenges p.__remarks {
  margin-left: 5px;
}
.benefits .health_challenges ol li {
  margin-bottom: 0.25em;
}

.pagenation {
  width: 100%;
  margin-top: 2em;
}
.pagenation ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: stretch;
      align-content: stretch;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.pagenation ul li {
  width: 25em;
  min-width: calc(30% - 0px);
}
@media screen and (max-width: 864px) {
  .pagenation ul li {
    width: 100%;
  }
  .pagenation ul li + li {
    margin-top: 0.5em;
  }
}
.pagenation ul li a {
  border-radius: 1em;
  border: 2px solid #262520;
  background-color: #ffffff;
  text-decoration: none;
  position: relative;
  padding: 0.75em;
  display: block;
  height: 100%;
}
@media screen and (max-width: 864px) {
  .pagenation ul li a {
    padding: 1em;
  }
}
.pagenation ul li a:hover {
  background-color: #F5F5F5;
  color: #262520;
}
.pagenation ul li span {
  position: relative;
}
.pagenation ul li span:before {
  position: absolute;
  font-size: 2em;
  top: 1px;
}
@media screen and (max-width: 864px) {
  .pagenation ul li span:before {
    top: -2px;
  }
}
.pagenation ul li em {
  font-size: 1.5em;
  display: block;
  line-height: 1.2;
  font-weight: bold;
}
@media screen and (max-width: 864px) {
  .pagenation ul li em {
    font-size: 1.25em;
  }
}
.pagenation ul li.prev a {
  padding-left: 4.5em;
}
.pagenation ul li.prev span:before {
  content: "arrow_back";
  font-family: "Material Symbols";
  font-weight: 200;
  left: -1.5em;
}
.pagenation ul li.next {
  text-align: right;
}
.pagenation ul li.next a {
  padding-right: 4.5em;
}
.pagenation ul li.next span:before {
  content: "arrow_forward";
  font-family: "Material Symbols";
  font-weight: 200;
  right: -1.5em;
}
.pagenation ul:has(.next:only-child) {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.pager ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.pager ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #484741;
  text-decoration: none;
  height: 2.5em;
  width: 2.5em;
}
.pager ul li a:hover {
  background-color: #F5F5F5;
}
.pager ul li + li {
  margin-left: 0.5em;
}
@media screen and (max-width: 864px) {
  .pager ul li + li {
    margin-left: 0.25em;
  }
}
.pager ul li.current a {
  background-color: #484741;
  color: #ffffff;
  pointer-events: none;
}
.pager ul li.prev em, .pager ul li.next em {
  display: none;
}
.pager ul li.prev a:before, .pager ul li.next a:before {
  font-size: 1.5em;
  font-weight: 200;
}
.pager ul li.prev li a:before {
  margin-right: 0.1em;
}
.pager ul li.prev li:first-child a:before {
  content: "keyboard_double_arrow_left";
  font-family: "Material Symbols";
  font-weight: 200;
}
.pager ul li.prev li:last-child a:before {
  content: "keyboard_arrow_left";
  font-family: "Material Symbols";
  font-weight: 200;
}
.pager ul li.next li a:before {
  margin-left: 0.1em;
}
.pager ul li.next li:first-child a:before {
  content: "keyboard_arrow_right";
  font-family: "Material Symbols";
  font-weight: 200;
}
.pager ul li.next li:last-child a:before {
  content: "keyboard_double_arrow_right";
  font-family: "Material Symbols";
  font-weight: 200;
}
@media screen and (max-width: 864px) {
  .pager ul li.number li:first-child, .pager ul li.number li:last-child {
    display: none;
  }
  .pager ul li.number li:nth-child(2) {
    margin-left: 0;
  }
}

/* ローディング画面 */
#loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f8f6ef;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 9999;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
#loading-screen.hidden {
  opacity: 0;
  visibility: hidden;
}
#loading-screen {
  /* ドットコンテナ */
}
#loading-screen .dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#loading-screen .dots .dot {
  width: 10px;
  height: 10px;
  margin: 0 5px;
  background-color: #484741;
  border-radius: 50%;
  -webkit-animation: dot-pulse 1.5s ease-in-out infinite;
          animation: dot-pulse 1.5s ease-in-out infinite;
}
#loading-screen .dots .dot:nth-child(1) {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
#loading-screen .dots .dot:nth-child(2) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
#loading-screen .dots .dot:nth-child(3) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

@-webkit-keyframes dot-pulse {
  0%, 100% {
    -webkit-transform: scale(0.7);
            transform: scale(0.7);
    opacity: 0.7;
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}

@keyframes dot-pulse {
  0%, 100% {
    -webkit-transform: scale(0.7);
            transform: scale(0.7);
    opacity: 0.7;
  }
  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
}
.sdfw_back_top {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.sdfw_back_top.is-show {
  opacity: 1;
  pointer-events: all;
}
.sdfw_back_top a {
  position: fixed;
  bottom: 1em;
  right: 1em;
  background-color: #484741;
  height: 3.5em;
  width: 3.5em;
  border-radius: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 9;
}
.sdfw_back_top a:before {
  content: "keyboard_arrow_up";
  font-family: "Material Symbols";
  font-weight: 200;
  font-size: 2em;
  color: #ffffff;
}
.sdfw_back_top a em {
  display: none;
}
.sdfw_back_top a img {
  width: 2em;
}
.sdfw_back_top a:hover {
  background-color: #ffffff;
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
}
.sdfw_back_top a:hover:before {
  color: #484741;
}

.fadein_1,
.fadein_2,
.fadein_3 {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease, -webkit-transform 0.8s ease;
}
.fadein_1.active,
.fadein_2.active,
.fadein_3.active {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
@media screen and (min-width: 865px) {
  .fadein_1.active,
  .fadein_2.active,
  .fadein_3.active {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
}

@media screen and (max-width: 864px) {
  .fadein_1.active {
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
  }
  .fadein_2.active {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .fadein_3.active {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
}
header .header_menu_back_logo img, header .header_left img {
  height: 24px;
}
@media screen and (max-width: 864px) {
  header .header_menu_back_logo img, header .header_left img {
    height: 20px;
  }
}
header .header_menu_back_logo span, header .header_left span {
  display: inline-block;
  border: 1px solid;
  padding: 0.1em 0.25em;
  font-size: 0.8em;
  letter-spacing: 1px;
  line-height: 1;
}
@media screen and (max-width: 864px) {
  header .header_menu_back_logo span, header .header_left span {
    margin: 0.75em 0 0 0;
    font-size: 12px;
    padding: 0;
    border: none;
  }
}

header {
  z-index: 3;
  position: relative;
}
header a[target=_blank]:not(.img)::after {
  display: none;
}
header:before {
  content: "";
  display: block;
  position: fixed;
  top: -20px;
  pointer-events: none;
  height: 20px;
  width: 100%;
  background-color: #ffffff;
  mix-blend-mode: lighten;
}
@media screen and (max-width: 864px) {
  header {
    font-size: 16px;
  }
}
header .header_left, header .header_right {
  position: fixed;
  top: 0;
}
header .header_left {
  left: 0;
  background-color: #262520;
  color: #ffffff;
  padding: 28px 30px;
  border-radius: 0 0 16px 0;
  border: 1px solid #ffffff;
  border-width: 0 1px 1px 0;
}
@media screen and (max-width: 864px) {
  header .header_left {
    padding: 15px 15px 0;
    height: 70px;
    width: calc(100% - 151px);
  }
}
header .header_left_logo a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 864px) {
  header .header_left_logo a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
header .header_left span {
  color: #ffffff;
  border-color: #ffffff;
}
@media screen and (min-width: 865px) {
  header .header_left span {
    margin-left: 1em;
  }
}
header .header_left_h1 {
  height: 0;
  overflow: hidden;
  -webkit-transition: height 0.3s, opacity 1.5s;
  transition: height 0.3s, opacity 1.5s;
  margin-top: 10px;
  margin-bottom: -15px;
  opacity: 0;
  position: relative;
}
header .header_left_h1 em {
  padding-left: 1.25em;
}
@media screen and (max-width: 864px) {
  body:not(.toppage) header .header_left.is-open {
    height: 100px;
    font-size: 14px;
  }
}
body:not(.toppage) header .header_left.is-open .header_left_h1 {
  height: 1.5em;
  opacity: 1;
}
body:not(.toppage) header .header_left.is-open .header_left_h1 em:before {
  content: "";
  color: #CCCCCC;
  position: absolute;
  left: -3px;
  top: -5px;
  content: "keyboard_arrow_right";
  font-family: "Material Symbols";
  font-weight: 200;
  -webkit-transform: rotateZ(135deg);
          transform: rotateZ(135deg);
  font-size: 1.25em;
}
header .header_right {
  right: 0;
  z-index: 11;
}
header .header_right ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
header .header_right ul li {
  width: 60px;
  height: 60px;
  margin: 20px 20px 0 0;
  border-radius: 16px;
  background-color: #262520;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  position: relative;
  border: 1px solid #ffffff;
}
@media screen and (max-width: 864px) {
  header .header_right ul li {
    margin: 10px 10px 0 0;
  }
}
header .header_right ul li span {
  color: #ffffff;
  font-size: 0.75em;
  padding-top: 35px;
  display: inline-block;
  font-weight: bold;
}
@media screen and (max-width: 864px) {
  header .header_right ul li span {
    padding-top: 37px;
    font-size: 11px;
  }
}
header .header_right ul li span:before {
  display: block;
  font-size: 3em;
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  top: -2px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-weight: 300;
}
header .header_right ul li.entry {
  background-color: #1c6ecd;
}
header .header_right ul li.entry span:before {
  content: "join";
  font-family: "Material Symbols";
  font-weight: 200;
}
header .header_right ul li.entry:hover {
  background-color: rgb(213.2081545064, 229.9248927039, 249.2918454936);
}
header .header_right ul li.entry:hover span {
  color: #1c6ecd;
}
header .header_right ul li.menu {
  z-index: 10000;
}
header .header_right ul li.menu > span:before {
  content: "menu";
  font-family: "Material Symbols";
  font-weight: 200;
}
header .header_right ul li.menu .is-open {
  display: none;
}
header .header_right ul li.menu .is-closed {
  display: inline-block;
}
header .header_right ul li.menu:hover {
  background-color: #ffffff;
}
header .header_right ul li.menu:hover span {
  color: #262520;
}
header .header_right ul li a {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header .header_menu {
  position: fixed;
  display: block;
  width: 100%;
  min-height: 100vh;
  left: 0;
  top: 0;
  z-index: 10;
  opacity: 0;
  pointer-events: none;
}
header .header_menu:after {
  content: "";
  width: 100vw;
  height: 100vh;
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  clip-path: circle(0% at 100% 0%);
  position: fixed;
  left: 0;
  top: 0;
  z-index: -1;
}
header .header_menu_inner {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  -ms-grid-columns: 30% 70%;
  grid-template-columns: 30% 70%;
  height: 100vh;
  margin-right: auto;
  margin-left: auto;
  overscroll-behavior-y: none;
  overflow-y: auto;
  max-height: 100vh;
  overflow-x: hidden;
  opacity: 0;
  pointer-events: none;
}
header .header_menu_inner > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
header .header_menu_inner > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
header .header_menu_inner > *:nth-child(3) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
header .header_menu_inner > *:nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
}
@media screen and (max-width: 864px) {
  header .header_menu_inner {
    display: block;
    padding: 15px 15px 0;
  }
}
header .header_menu_inner a,
header .header_menu_inner em {
  font-style: normal;
}
header .header_menu_back {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
@media screen and (min-width: 865px) {
  header .header_menu_back {
    margin: 30px 28px;
  }
}
header .header_menu_back_logo {
  margin-bottom: 1em;
}
header .header_menu_back_logo span {
  color: #262520;
  border-color: #262520;
}
header .header_menu_back_logo .comp_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
}
header .header_menu_back_logo .comp_text em,
header .header_menu_back_logo .comp_text span {
  display: inline-block;
  margin: 0.25em 0;
}
@media screen and (min-width: 865px) {
  header .header_menu_back_logo .comp_text span {
    margin-left: 0.5em;
  }
}
@media screen and (max-width: 864px) {
  header .header_menu_back_logo .comp_text span {
    margin: 0.75em 0;
  }
}
@media screen and (max-width: 864px) {
  header .header_menu_back_logo .comp_text em {
    display: none;
  }
}
header .header_menu_back_button a {
  padding: 0.5em 1em;
  color: #ffffff;
  display: inline-block;
  background-color: #262520;
  position: relative;
  margin-left: 20px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
header .header_menu_back_button a:after {
  content: "";
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
  width: 20px;
  height: 37.5px;
  display: inline-block;
  background-color: #262520;
  position: absolute;
  left: -19px;
  top: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 864px) {
  header .header_menu_back_button a:after {
    height: 40px;
  }
}
header .header_menu_back_button a:hover {
  background-color: #1c6ecd;
}
header .header_menu_back_button a:hover:after {
  background-color: #1c6ecd;
}
header .header_menu_contents {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
@media screen and (min-width: 865px) {
  header .header_menu_contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 30px 28px;
  }
}
@media screen and (max-width: 864px) {
  header .header_menu_contents .nav_menu_contents_number {
    gap: 20px;
  }
}
header .header_menu_contents .nav_menu_contents_list li.current > a {
  color: #1c6ecd;
}
header .header_menu_entry {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
  background-color: #F5F5F5;
  position: relative;
}
header .header_menu_entry:after {
  content: "Entry";
  font-size: 10rem;
  color: #ffffff;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  left: 0;
  top: -15px;
}
@media screen and (max-width: 864px) {
  header .header_menu_entry:after {
    left: auto;
    right: 0;
  }
}
@media screen and (min-width: 865px) {
  header .header_menu_entry {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (max-width: 864px) {
  header .header_menu_entry {
    margin: 20px -15px 0;
    padding: 60px 15px 0;
  }
}
header .header_menu_entry dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
header .header_menu_entry dd > div {
  margin-bottom: 1em;
  z-index: 1;
}
header .header_menu_entry dd .title {
  font-weight: bold;
  padding: 0.5em 0 0.5em 0;
  position: relative;
  font-size: 14px;
  overflow: hidden;
}
header .header_menu_entry dd .title em {
  background-color: #F5F5F5;
  z-index: 3;
  display: inline-block;
  padding: 0 0.5em;
}
header .header_menu_entry dd .title:after {
  content: "";
  background-color: #CCCCCC;
  width: 100%;
  position: absolute;
  top: 50%;
  height: 1px;
}
header .header_menu_entry .button_list a {
  display: block;
  padding: 1em 1em;
  border-radius: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
}
header .header_menu_entry .button_list a:hover {
  text-decoration: none;
}
header .header_menu_entry .button_list ._detail a {
  background-color: #ffffff;
  color: #262520;
}
header .header_menu_entry .button_list ._detail a:hover {
  background-color: rgb(235.643776824, 243.3862660944, 252.356223176);
  color: #1c6ecd;
}
header .header_menu_entry .button_list ._entry a {
  background-color: #262520;
  color: #ffffff;
}
header .header_menu_entry .button_list ._entry a:hover {
  background-color: #1c6ecd;
}
@media screen and (min-width: 865px) {
  header .header_menu_entry_graduate, header .header_menu_entry_internship {
    width: calc(66% - 10px);
  }
}
@media screen and (max-width: 864px) {
  header .header_menu_entry_graduate, header .header_menu_entry_internship {
    width: 100%;
  }
}
header .header_menu_entry_graduate ul, header .header_menu_entry_internship ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header .header_menu_entry_graduate ul li, header .header_menu_entry_internship ul li {
  width: calc(50% - 5px);
}
@media screen and (min-width: 865px) {
  header .header_menu_entry_career, header .header_menu_entry_diversity {
    width: calc(33% - 10px);
  }
}
@media screen and (max-width: 864px) {
  header .header_menu_entry_career, header .header_menu_entry_diversity {
    width: calc(50% - 10px);
  }
}
header .header_menu_contents dt.title, header .header_menu_entry dt.title {
  font-size: 1.5em;
  border-left: 10px solid #262520;
  padding-left: 0.75em;
  line-height: 1.4;
  margin: 0.25em 0;
}
@media screen and (max-width: 864px) {
  header .header_menu_contents dt.title, header .header_menu_entry dt.title {
    margin-top: 1em;
  }
}
header.is-open .header_menu {
  opacity: 1;
  pointer-events: all;
}
header.is-open .header_menu_inner {
  -webkit-animation: showMenu 0.5s ease-in-out 0.3s forwards;
          animation: showMenu 0.5s ease-in-out 0.3s forwards;
}
header.is-open .header_menu:after {
  -webkit-animation: showCircle 0.5s ease-in-out 0s forwards;
          animation: showCircle 0.5s ease-in-out 0s forwards;
}
header.is-open .header_right ul li.entry {
  opacity: 0;
  pointer-events: none;
}
header.is-open .header_right ul li.menu {
  background-color: #F5F5F5;
  -webkit-animation: toggleMenu 1s ease-in-out 0s forwards;
          animation: toggleMenu 1s ease-in-out 0s forwards;
}
header.is-open .header_right ul li.menu span {
  color: #262520;
}
header.is-open .header_right ul li.menu span:before {
  content: "close";
}
header.is-open .header_right ul li.menu span .is-open {
  display: inline-block;
}
header.is-open .header_right ul li.menu span .is-closed {
  display: none;
}

@-webkit-keyframes toggleMenu {
  from {
    background-color: #ffffff;
  }
  to {
    background-color: #F5F5F5;
  }
}

@keyframes toggleMenu {
  from {
    background-color: #ffffff;
  }
  to {
    background-color: #F5F5F5;
  }
}
@-webkit-keyframes showCircle {
  from {
    clip-path: circle(0% at 100% 0%);
  }
  to {
    clip-path: circle(150% at 100% 0%);
  }
}
@keyframes showCircle {
  from {
    clip-path: circle(0% at 100% 0%);
  }
  to {
    clip-path: circle(150% at 100% 0%);
  }
}
@-webkit-keyframes showMenu {
  from {
    opacity: 0;
    pointer-events: none;
  }
  to {
    opacity: 1;
    pointer-events: all;
  }
}
@keyframes showMenu {
  from {
    opacity: 0;
    pointer-events: none;
  }
  to {
    opacity: 1;
    pointer-events: all;
  }
}
body.no-scroll {
  overflow: hidden;
  -ms-touch-action: none;
      touch-action: none;
}

.nav_menu_contents {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
}
.nav_menu_contents_number {
  display: -ms-grid;
  display: grid;
}
@media screen and (max-width: 864px) {
  .nav_menu_contents_number {
    -ms-grid-rows: 110px 20px 1fr;
    grid-template-rows: 110px 1fr;
    -ms-grid-columns: 50% 0 50%;
    grid-template-columns: 50% 50%;
    gap: 20px 0;
  }
  .nav_menu_contents_number > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .nav_menu_contents_number > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .nav_menu_contents_number > *:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .nav_menu_contents_number > *:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
}
@media screen and (min-width: 865px) {
  .nav_menu_contents_number {
    -ms-grid-columns: 200px 20px 1fr 20px 1fr;
    grid-template-columns: 200px 1fr 1fr;
    -ms-grid-rows: 100px 0 1fr;
    grid-template-rows: 100px 1fr;
    gap: 0 20px;
  }
  .nav_menu_contents_number > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .nav_menu_contents_number > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .nav_menu_contents_number > *:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .nav_menu_contents_number > *:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .nav_menu_contents_number > *:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .nav_menu_contents_number > *:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
}
.nav_menu_contents_number > li.one {
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
}
.nav_menu_contents_number > li.two {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
.nav_menu_contents_number > li.three {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
}
.nav_menu_contents_number > li.four {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2/3;
}
@media screen and (min-width: 865px) {
  .nav_menu_contents_number > li.one {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 1/1/2/2;
  }
  .nav_menu_contents_number > li.two {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-area: 2/1/3/2;
  }
  .nav_menu_contents_number > li.three {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
    -ms-grid-column-span: 1;
    grid-area: 1/2/3/3;
  }
  .nav_menu_contents_number > li.four {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-area: 1/3/3/4;
  }
}
.nav_menu_contents_number > li dt {
  font-size: 1.25em;
  font-weight: bold;
  margin-top: 0.5em;
}
@media screen and (max-width: 864px) {
  .nav_menu_contents_number > li dt {
    font-size: 1em;
  }
}
.nav_menu_contents_number > li .department > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: auto;
}
.nav_menu_contents_number > li .department > ul > li {
  width: 7em;
}
@media screen and (max-width: 864px) {
  .nav_menu_contents_number > li .department > ul > li {
    width: auto;
  }
}
.nav_menu_contents_number > li .department > ul > li.materials, .nav_menu_contents_number > li .department > ul > li.management {
  width: auto;
}
.nav_menu_contents_list {
  margin-top: 0.25em;
}
.nav_menu_contents_list li {
  padding-left: 1em;
  position: relative;
}
.nav_menu_contents_list li:before {
  content: "";
  color: #CCCCCC;
  position: absolute;
  left: -3px;
  top: -5px;
  content: "keyboard_arrow_right";
  font-family: "Material Symbols";
  font-weight: 200;
  -webkit-transform: rotateZ(135deg);
          transform: rotateZ(135deg);
  font-size: 1.25em;
}
.nav_menu_contents_list li a:hover {
  color: #1c6ecd;
}
.nav_menu_contents_list li.current > a {
  pointer-events: none;
  font-weight: bold;
}
.nav_menu_contents_list > li {
  margin-bottom: 0.25em;
}
.nav_menu_contents_list > li ul {
  margin: 0.25em 0 0.5em;
}
.nav_menu_contents_list > li ul > li {
  font-size: 14px;
}

.footer {
  background: #484741;
  color: #ffffff;
  font-size: 1.6rem;
}
.footer_menu {
  padding: 60px calc((100% - 1064px) / 2) 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 0 20px 20px;
}
@media screen and (max-width: 864px) {
  .footer_menu {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 70px 0px 0px;
  }
}
@media screen and (max-width: 864px) {
  .footer_menu_logo {
    width: 100%;
  }
}
.footer_menu_logo .image {
  width: 210px;
  height: 24px;
  margin-bottom: 0.5em;
}
.footer_menu_logo span {
  color: #ffffff;
  display: inline-block;
  border: 1px solid #ffffff;
  padding: 0.1em 0.25em;
  font-size: 0.8em;
  letter-spacing: 1px;
  margin-bottom: 30px;
}
@media screen and (max-width: 864px) {
  .footer_menu_logo span {
    margin-bottom: 10px;
  }
}
.footer_menu_logo em {
  color: #ffffff;
  display: block;
}
.footer_menu_nav {
  font-size: 16px;
  width: 100%;
}
@media screen and (min-width: 865px) {
  .footer_menu_nav {
    width: calc(100% - 210px);
    padding-left: 50px;
    max-width: 800px;
  }
}
@media screen and (max-width: 864px) {
  .footer_menu_nav {
    margin: 30px 0 0;
  }
}
.footer_menu_nav .nav_menu_contents_number > li dt {
  margin-top: 0;
  color: #CCCCCC;
}
.footer_menu_nav .nav_menu_contents_number > li a {
  color: #ffffff;
}
.footer_menu_nav .nav_menu_contents_number > li a:hover {
  color: #ffffff;
  text-decoration: underline;
}
.footer_menu_nav .nav_menu_contents_number > li li.current > a {
  color: #c9a700;
}
.footer_menu_nav .nav_menu_contents_list li:before {
  color: #676660;
}
.footer_sitemap {
  padding: 10px 20px;
}
.footer_sitemap ul {
  color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.footer_sitemap li {
  margin-right: 20px;
}
.footer_sitemap li a {
  display: inline-block;
  position: relative;
  padding-left: 10px;
  color: #ffffff;
  font-size: 1.4rem;
  line-height: 1.3;
}
.footer_sitemap li a::before {
  position: absolute;
  top: 5px;
  left: 0;
  border: 4px solid transparent;
  border-left: 5px solid #ffffff;
  content: "";
}
.footer_sitemap li a:hover {
  text-decoration: underline;
}
.footer_copyright {
  max-width: 100%;
  background-color: #262520;
}
.footer_copyright p {
  font-size: 1.2rem;
  font-weight: 300;
  padding: 0.5em 0;
  text-align: center;
}

.join_us_all {
  position: relative;
  padding: 100px 20px 24px;
  text-align: center;
  font-weight: 700;
}
.join_us_all p {
  position: relative;
  color: #ffffff;
  font-size: 14rem;
  line-height: 1.2;
}
.join_us_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 864px) {
  .join_us_box {
    display: block;
  }
}
.join_us_item {
  width: calc(50% - 10px);
  padding: 0px;
  margin-bottom: 0px;
}
@media screen and (max-width: 864px) {
  .join_us_item {
    display: block;
    width: 100%;
    text-align: left;
  }
}
.join_us_item a {
  position: relative;
  display: block;
  width: 100%;
  padding: 120px 0px;
  border-radius: 16px;
  border: 12px solid #ffffff;
  background-color: #ffffff;
  font-size: 5rem;
  font-weight: 700;
}
@media screen and (max-width: 864px) {
  .join_us_item a {
    width: 100%;
    padding: 25px 20px;
    margin: 0px auto 10px;
    font-size: 3.5rem;
  }
}
.join_us_item a > span {
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 0 75px 35px 0;
  font-size: 1.5rem;
  font-weight: 600;
}
@media screen and (max-width: 864px) {
  .join_us_item a > span {
    padding: 0 45px 35px 0;
  }
}
.join_us_item a > span::after {
  position: absolute;
  font-size: 1.5em;
  content: "arrow_forward";
  font-family: "Material Symbols";
  font-weight: 200;
  font-weight: 400;
  right: 32px;
  top: -6px;
}
@media screen and (max-width: 864px) {
  .join_us_item a > span::after {
    right: 10px;
  }
}

@media screen and (max-width: 864px) {
  .popup.__internship {
    font-size: 14px;
  }
}
.popup.__internship {
  position: fixed;
  left: 0;
  bottom: -5px;
  z-index: 10000000;
  width: 300px;
  height: 75px;
  border-radius: 0 1em 0 0;
  background-color: #1c6ecd;
  border: 1px solid #ffffff;
  border-width: 2px 2px 0 0;
}
.popup.__internship:hover {
  -webkit-transform: translateY(-5px);
          transform: translateY(-5px);
}
.popup.__internship a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
}
.popup.__internship a:hover {
  text-decoration: none;
}
.popup.__internship .image {
  background-color: rgb(235.643776824, 243.3862660944, 252.356223176);
  width: 70px;
  height: 75px;
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 5px;
}
.popup.__internship .image span:before {
  content: "school";
  font-family: "Material Symbols";
  font-weight: 200;
  font-size: 3em;
  font-weight: 500;
  color: #1c6ecd;
}
.popup.__internship .text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(100% - 70px);
  padding: 0.6em 0.5em 0.6em;
  color: #ffffff;
}
.popup.__internship .text span,
.popup.__internship .text em {
  display: block;
}
.popup.__internship .text span {
  font-size: 0.85em;
  position: relative;
  padding: 0 1.5em;
  margin-bottom: 0.25em;
}
.popup.__internship .text span:before, .popup.__internship .text span:after {
  content: "";
  position: absolute;
  top: 40%;
  display: inline-block;
  width: 1.25em;
  height: 1px;
  background-color: rgb(145.9012875536, 189.5407725322, 240.0987124464);
}
.popup.__internship .text span:before {
  left: 0;
  -webkit-transform: rotate(70deg);
          transform: rotate(70deg);
}
.popup.__internship .text span:after {
  right: 0;
  -webkit-transform: rotate(-60deg);
          transform: rotate(-60deg);
}
.popup.__internship .text em {
  font-size: 1.1em;
  font-style: normal;
  font-weight: bold;
}

.internship .bubble_list.overlay li p {
  margin-left: auto;
  width: 90%;
  z-index: 10;
}
.internship .bubble_list.overlay li span:has(img) {
  margin-left: 0;
  width: 90%;
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
}
.internship .bubble_list img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 15/8;
  -webkit-filter: brightness(0.9);
  filter: brightness(0.9);
}
.internship .before_after_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.internship .before_after_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 864px) {
  .internship .before_after_list li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.internship .before_after_list li.title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 700;
}
.internship .before_after_list li.title div:first-child {
  position: relative;
  width: calc(50% - 36px);
  text-align: center;
}
.internship .before_after_list li.title div:first-child::after, .internship .before_after_list li.title div:first-child::before {
  content: "";
  position: absolute;
  top: 50%;
  right: -36px;
}
.internship .before_after_list li.title div:first-child::after {
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 72px;
  height: 4px;
  background: #262520;
  border-radius: 4px;
}
.internship .before_after_list li.title div:first-child::before {
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  width: 16px;
  height: 16px;
  border-top: 4px solid #262520;
  border-right: 4px solid #262520;
}
.internship .before_after_list li.title div:last-child {
  width: calc(50% + 36px);
  text-align: center;
}
.internship .before_after_list li > * {
  position: relative;
  text-align: left;
}
.internship .before_after_list li > *.before_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(50% - 36px);
  padding: 16px 24px 16px 24px;
  border-radius: 16px 0 0 16px;
  color: #ffffff;
  background-color: #262520;
}
@media screen and (max-width: 864px) {
  .internship .before_after_list li > *.before_item {
    width: 100%;
    border-radius: 16px 16px 0 0;
    padding: 16px 24px 16px 12px;
  }
}
.internship .before_after_list li > *.before_item::after {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 36px; /* 三角形の横幅 */
  height: 100%; /* 親の高さに合わせる！ */
  background: #262520;
  margin-top: 0;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  -webkit-transform: translate(100%, 0);
  transform: translate(100%, 0);
  z-index: 10;
}
@media screen and (max-width: 864px) {
  .internship .before_after_list li > *.before_item::after {
    top: 100%;
    left: 0;
    width: 100%;
    height: 24px;
    margin-top: -1px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.internship .before_after_list li > *.after_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: calc(50% + 36px);
  padding: 16px 24px 16px 60px;
  border-radius: 0 16px 16px 0;
  color: #262520;
  background-color: #ffffff;
}
@media screen and (max-width: 864px) {
  .internship .before_after_list li > *.after_item {
    width: 100%;
    padding: 34px 24px 16px;
    border-radius: 0 0 16px 16px;
  }
}
.internship .speech_bubble_list li span {
  padding: 36px 48px;
  border-radius: 100vh;
}
.internship #main_wrapper .flexbox3.non_gap {
  margin-top: 0px;
}
@media screen and (max-width: 864px) {
  .internship #main_wrapper .flexbox3.non_gap {
    margin-top: -20px;
  }
}
.internship #main_wrapper .flexbox3.non_gap > * {
  width: 33.3333333333%;
  row-gap: 0;
}
@media screen and (max-width: 864px) {
  .internship #main_wrapper .flexbox3.non_gap > * {
    width: 100%;
  }
}
.internship #page_transition {
  width: 50%;
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 864px) {
  .internship #page_transition {
    width: 80%;
  }
}
.internship_button {
  display: inline-block;
  width: 100%;
  padding: 24px 36px;
  border-radius: 16px;
  color: #ffffff;
  border: 2px solid #ffffff;
  background-color: #262520;
  text-align: center;
  font-size: 1.8em;
  font-weight: 700;
}
@media screen and (max-width: 864px) {
  .internship_button {
    padding: 12px 36px;
    font-size: 1.2em;
  }
}
.internship_button .space-right {
  margin-left: 1.8em;
}
@media screen and (max-width: 864px) {
  .internship_button .space-right {
    font-size: 1.2em;
  }
}
.internship_button:visited {
  color: #ffffff;
}
.internship_button:hover {
  opacity: 0.5;
  text-decoration: none;
}

@media screen and (max-width: 864px) {
  .overseas #main_photo_title #main_photo #main_photo_visual img {
    width: 100%;
  }
}
.overseas_map .map_office {
  max-width: 1000px;
  height: 600px;
  position: relative;
  background: url(/recruit/assets/img/location/overseas/globalmap.svg) right center no-repeat;
  background-size: 100% auto;
  margin: 0 auto;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office {
    max-width: 350px;
    height: 210px;
    margin-bottom: 3em;
  }
}
.overseas_map .map_office_people {
  position: absolute;
  width: 80px;
  cursor: pointer;
  -webkit-transform-origin: bottom center;
          transform-origin: bottom center;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office_people {
    width: 70px;
  }
}
.overseas_map .map_office_people:hover {
  z-index: 100;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.overseas_map .map_office_people .image {
  border-radius: 0.5em 0.5em 0 0;
  border-bottom: none;
  overflow: hidden;
  border: 1px solid #262520;
  border-bottom: none;
  background-color: #F5F5F5;
  height: 80px;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office_people .image {
    height: 70px;
  }
}
.overseas_map .map_office_people .country {
  background-color: #262520;
  color: #ffffff;
  text-align: center;
  padding: 0.25em 0.5em;
  font-size: 0.8em;
  border-radius: 0 0 0.5em 0.5em;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office_people .country {
    font-size: 10px;
  }
}
.overseas_map .map_office_people .country:after {
  content: "";
  height: 5px;
  width: 10px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  display: inline-block;
  position: absolute;
  bottom: -4px;
  left: calc(50% - 5px);
  background-color: #262520;
}
.overseas_map .map_office_people .country {
  /*&:before {
    content: "";
    height: 5px;
    width: 5px;
    background-color: $caution;
    bottom: -13px;
    border-radius: 50%;
    position: absolute;
    left: calc(50% - 2.5px);
  }*/
}
.overseas_map .map_office_people.__sda {
  left: 66.5%;
  top: 17.5%;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office_people.__sda {
    left: 60.5%;
    top: -10%;
  }
}
.overseas_map .map_office_people.__sdp {
  left: 35.5%;
  top: 30%;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office_people.__sdp {
    left: 29.5%;
    top: 3%;
  }
}
.overseas_map .map_office_people.__sde {
  left: 4%;
  top: 11%;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office_people.__sde {
    left: -2%;
    top: -16%;
  }
}
.overseas_map .map_office_people.__sg {
  left: 29%;
  top: 56.5%;
  -webkit-transform-origin: top center;
          transform-origin: top center;
}
@media screen and (max-width: 864px) {
  .overseas_map .map_office_people.__sg {
    left: 23%;
    top: 58%;
  }
}
.overseas_map .map_office_people.__sg .country:after {
  -webkit-transform: rotateZ(180deg);
          transform: rotateZ(180deg);
  top: -4px;
  bottom: auto;
}
.overseas_map .map_office_people.__sg .country:before {
  top: -13px;
  bottom: auto;
}
.overseas_country {
  margin: 50px 0;
}
.overseas_country_image {
  margin-bottom: 25px;
  position: relative;
}
@media screen and (max-width: 864px) {
  .overseas_country_image {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 864px) {
  .overseas_country_image .image {
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .overseas_country_image .image img {
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.overseas_country_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 50px;
}
@media screen and (max-width: 864px) {
  .overseas_country_text {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.overseas_country_text_title {
  width: calc(60% - 20px);
  line-height: 1.2;
}
@media screen and (max-width: 864px) {
  .overseas_country_text_title {
    width: 100%;
    margin-bottom: 2em;
  }
}
.overseas_country_text_title .title {
  margin-bottom: 30px;
}
.overseas_country_text_title .title em,
.overseas_country_text_title .title span {
  display: block;
  line-height: 1.2;
}
.overseas_country_text_title .title em {
  font-size: 1.5em;
}
.overseas_country_text_title .title span {
  font-size: 5em;
  font-family: serif;
}
.overseas_country_text_image {
  width: calc(40% - 20px);
}
@media screen and (min-width: 865px) {
  .overseas_country_text_image {
    padding-top: 30px;
  }
}
@media screen and (max-width: 864px) {
  .overseas_country_text_image {
    width: 100%;
  }
}
.overseas_country_interview {
  margin-bottom: 50px;
}
.overseas_country_interview > dl dt.name {
  margin-bottom: 40px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 864px) {
  .overseas_country_interview > dl dt.name {
    width: 100%;
  }
  .overseas_country_interview > dl dt.name .title {
    font-size: 1.6rem;
  }
}
.overseas_country_interview > dl dt.name .overseas_country_interview_image {
  position: relative;
}
@media screen and (max-width: 864px) {
  .overseas_country_interview > dl dt.name .overseas_country_interview_image {
    width: 100%;
  }
}
.overseas_country_interview > dl dt.name .overseas_country_interview_image > span {
  position: absolute;
  display: inline-block;
  display: inline-block;
  padding: 7px 10px;
  font-weight: 600;
  font-size: 1.5rem;
  background: #262520;
  border-radius: 10px 10px 0 0;
  color: #ffffff;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 16px 0 0 0;
  z-index: 5;
}
.overseas_country_interview > dl dt.name .overseas_country_interview_image .image {
  width: 200px;
}
@media screen and (max-width: 864px) {
  .overseas_country_interview > dl dt.name .overseas_country_interview_image .image {
    width: 50%;
  }
}
.overseas_country_interview > dl dt.name .overseas_country_interview_image .image img {
  -o-object-fit: cover;
     object-fit: cover;
  padding-top: 30px;
  height: 230px;
  border-radius: 1em;
  background-color: #F5F5F5;
}
@media screen and (max-width: 864px) {
  .overseas_country_interview > dl dt.name .overseas_country_interview_image .image img {
    padding-top: 20px;
    height: 220px;
  }
}
.overseas_country_interview > dl dt.name .overseas_country_interview_image .image .none {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 200px;
  width: 200px;
  border-radius: 16px;
  background-color: #CCCCCC;
  position: relative;
}
.overseas_country_interview > dl dt.name .overseas_country_interview_image .image .none:before {
  content: "people";
  font-family: "Material Symbols";
  font-weight: 200;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #676660;
  font-size: 5em;
}
.overseas_country_interview > dl dt.name .overseas_country_interview_image .image > * {
  border: 2px solid #262520;
}
.overseas_country_interview > dl dt.name .overseas_country_interview_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 865px) {
  .overseas_country_interview > dl dt.name .overseas_country_interview_title {
    width: calc(100% - 200px);
    padding-left: 40px;
  }
}
@media screen and (max-width: 864px) {
  .overseas_country_interview > dl dt.name .overseas_country_interview_title {
    margin-top: 20px;
  }
}
.overseas_country_interview > dl dt.name .overseas_country_interview_title .title span,
.overseas_country_interview > dl dt.name .overseas_country_interview_title .title em {
  display: block;
}
.overseas_country_interview > dl dt.name .overseas_country_interview_title .title p {
  line-height: 1.4;
  margin: 10px 0;
}
.overseas_country_interview > dl dt.name .overseas_country_interview_title .title em,
.overseas_country_interview > dl dt.name .overseas_country_interview_title .title p {
  font-size: 2.5rem;
  font-weight: bold;
}
@media screen and (max-width: 864px) {
  .overseas_country_interview > dl dt.name .overseas_country_interview_title .title em,
  .overseas_country_interview > dl dt.name .overseas_country_interview_title .title p {
    font-size: 2rem;
  }
}
.overseas_country_interview > dl dt.name .overseas_country_interview_title .title span {
  position: relative;
  font-size: 1.5rem;
  font-weight: 400;
}
.overseas_country_interview > dl > dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (min-width: 865px) {
  .overseas_country_interview > dl > dd > dl {
    width: calc(50% - 20px);
  }
}
.overseas_country_interview > dl > dd dt {
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: 0.25em;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.5;
}
.overseas_country_interview > dl > dd dt:after {
  content: "";
  height: 1px;
  border-top: 1px solid #ccc;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-left: 0.5em;
}
.overseas_country_interview > dl > dd dd {
  margin-bottom: 1.5em;
}
.overseas_country_text, .overseas_country_interview, .overseas_country_pictures {
  min-width: auto;
  max-width: none;
  padding: 0 calc((100% - 1104px) / 2);
}
@media only screen and (max-width: 1277px) {
  .overseas_country_text, .overseas_country_interview, .overseas_country_pictures {
    padding: 0px 20px;
  }
}
@media screen and (max-width: 864px) {
  .overseas_country_text, .overseas_country_interview, .overseas_country_pictures {
    padding: 0px 20px;
    max-width: none;
  }
}
.overseas_country > ul > li {
  margin-bottom: 100px;
}

.quiz .quiz-card {
  background: #ffffff;
  border-radius: 16px;
  overflow: hidden;
  -webkit-animation: QuizfadeIn 0.5s ease;
          animation: QuizfadeIn 0.5s ease;
  position: relative;
}
@-webkit-keyframes QuizfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes QuizfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.quiz .progressBar_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1em;
}
.quiz .progressBar_block .progress-bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.quiz .progressBar_block .progress-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #CCCCCC;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.quiz .progressBar_block .progress-dot.active {
  background: #484741;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}
.quiz .progressBar_block .progress-dot.correct {
  background: #1c6ecd;
}
.quiz .progressBar_block .progress-dot.incorrect {
  background: #ac232f;
}
.quiz .progressBar_block .progress-counter {
  text-align: right;
  color: #676660;
  font-size: 14px;
}
.quiz .screen {
  display: none;
}
.quiz .screen.active {
  display: block;
  -webkit-animation: QuizfadeIn 0.5s ease;
          animation: QuizfadeIn 0.5s ease;
}
@media screen and (min-width: 865px) {
  .quiz .question-section {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 30px 40px 20px;
  }
}
@media screen and (max-width: 864px) {
  .quiz .question-section {
    padding: 20px;
  }
}
.quiz .question-section .question-number {
  color: #1c6ecd;
  display: inline-block;
  font-weight: bold;
  font-size: 2.5em;
  line-height: 1;
}
@media screen and (min-width: 865px) {
  .quiz .question-section .question-number {
    width: 60px;
  }
  .quiz .question-section .question-number.question-number-10 {
    width: 80px;
  }
  .quiz .question-section .question-number.question-number-10 + .question-text {
    width: calc(100% - 80px);
  }
}
@media screen and (max-width: 864px) {
  .quiz .question-section .question-number {
    margin-bottom: 0.5em;
  }
}
.quiz .question-section .question-text {
  font-size: 1.5em;
  color: #484741;
  font-weight: 600;
  padding-left: 0.5em;
  text-wrap: inherit;
  line-height: 1.4;
}
@media screen and (min-width: 865px) {
  .quiz .question-section .question-text {
    width: calc(100% - 60px);
  }
}
.quiz .buttons-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  padding: 0px 40px 30px;
}
.quiz .buttons-container .answer-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 50%;
  border: 3px solid #CCCCCC;
  padding: 5px 0;
  background: white;
  border-radius: 16px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border-color: #1c6ecd;
}
.quiz .buttons-container .answer-btn.correct-btn {
  color: #ffffff;
  background-color: #1c6ecd;
}
.quiz .buttons-container .answer-btn.correct-btn:before {
  content: "circle";
  font-family: "Material Symbols";
  font-weight: 200;
}
.quiz .buttons-container .answer-btn.correct-btn:hover {
  background: #1c6ecd;
  color: white;
}
.quiz .buttons-container .answer-btn.incorrect-btn {
  color: #1c6ecd;
}
.quiz .buttons-container .answer-btn.incorrect-btn:before {
  content: "close";
  font-family: "Material Symbols";
  font-weight: 200;
}
.quiz .buttons-container .answer-btn.incorrect-btn:hover {
  color: white;
}
.quiz .buttons-container .answer-btn:before {
  font-size: 2em;
  font-weight: 500 !important;
}
.quiz .buttons-container .answer-btn:hover {
  border-color: #484741;
  background-color: #484741 !important;
}
.quiz .result-section {
  text-align: center;
}
@media screen and (min-width: 865px) {
  .quiz .result-section_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.quiz .result-section_inner .image {
  width: 300px;
  background-color: #f8f6ef;
}
@media screen and (max-width: 864px) {
  .quiz .result-section_inner .image {
    width: 100%;
    height: 150px;
  }
}
.quiz .result-section_inner .image .result-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 865px) {
  .quiz .result-section_inner .comment {
    width: calc(100% - 300px);
    padding: 30px 40px;
  }
}
.quiz .result-section_inner .comment {
  text-align: left;
}
@media screen and (max-width: 864px) {
  .quiz .result-section_inner .comment {
    padding: 20px;
  }
}
.quiz .result-section_inner .comment .result-badge {
  font-size: 2em;
  font-weight: bold;
  display: block;
  margin-bottom: 1em;
}
@media screen and (max-width: 864px) {
  .quiz .result-section_inner .comment .result-badge {
    margin-bottom: 0.5em;
  }
}
.quiz .result-section_inner .comment .result-badge.correct {
  color: #1c6ecd;
}
.quiz .result-section_inner .comment .result-badge.incorrect {
  color: #ac232f;
}
.quiz .result-section_inner .comment .result-question-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.5em;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.quiz .result-section_inner .comment .result-question-area .question-number {
  display: inline-block;
  width: 60px;
  padding: 0.25em 1em 0.15em;
  text-align: center;
  background-color: #f3f1ea;
  color: #484741;
  font-weight: 700;
}
.quiz .result-section_inner .comment .result-question-area #resultQuestion {
  width: calc(100% - 4em);
  line-height: 1.6;
  padding-left: 1em;
  color: #484741;
}
.quiz .result-section_inner .comment .result-answer-area {
  margin-bottom: 2em;
}
@media screen and (min-width: 865px) {
  .quiz .result-section_inner .comment .result-answer-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.quiz .result-section_inner .comment .result-answer-area #resultAnswer {
  width: 60px;
  font-size: 3em;
  text-align: center;
  display: inline-block;
  line-height: 1;
}
@media screen and (max-width: 864px) {
  .quiz .result-section_inner .comment .result-answer-area #resultAnswer {
    width: 100%;
    margin-bottom: 0.2em;
    font-size: 3em;
  }
  .quiz .result-section_inner .comment .result-answer-area #resultAnswer em {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.quiz .result-section_inner .comment .result-answer-area #resultAnswer span.is-sp {
  font-size: 1.5rem;
  font-weight: bold;
  display: inline-block;
  margin-right: 0.25em;
  margin-bottom: 3px;
  border-bottom: 1px solid;
}
.quiz .result-section_inner .comment .result-answer-area #resultAnswer .correct {
  color: #1c6ecd;
}
.quiz .result-section_inner .comment .result-answer-area #resultAnswer .correct:after {
  content: "circle";
  font-family: "Material Symbols";
  font-weight: 200;
}
.quiz .result-section_inner .comment .result-answer-area #resultAnswer .incorrect {
  color: #ac232f;
}
.quiz .result-section_inner .comment .result-answer-area #resultAnswer .incorrect:after {
  content: "close";
  font-family: "Material Symbols";
  font-weight: 200;
}
.quiz .result-section_inner .comment .result-answer-area #resultAnswer em:after {
  font-weight: 700 !important;
}
.quiz .result-section_inner .comment .result-answer-area .result-comment {
  line-height: 1.6;
  font-size: 16px;
  text-align: left;
}
.quiz .result-section_inner .comment .result-answer-area .result-comment em {
  font-weight: bold;
  color: #484741;
}
@media screen and (min-width: 865px) {
  .quiz .result-section_inner .comment .result-answer-area .result-comment {
    width: calc(100% - 4em);
    padding-left: 1em;
  }
}
@media screen and (max-width: 864px) {
  .quiz .result-section_inner .comment .result-answer-area .result-comment {
    font-size: 14px;
  }
}
.quiz .result-section_inner .comment .next-btn {
  width: 100%;
  padding: 0.5em 1em;
  background: #484741;
  color: white;
  border: none;
  border-radius: 16px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
}
.quiz .result-section_inner .comment .next-btn:hover {
  background: #f3f1ea;
  color: #484741;
}
.quiz .final-result {
  text-align: center;
}
.quiz .final-result h2 {
  display: block;
  background-color: #1c6ecd;
  color: #ffffff;
  font-size: 2rem;
  padding: 0.75em;
}
.quiz .final-result .final-score {
  font-size: 5em;
  font-weight: bold;
  color: #1c6ecd;
  margin: 20px 0;
}
.quiz .final-result .final-message {
  font-size: 1.25em;
  color: #484741;
  margin-bottom: 30px;
}
.quiz .final-result .restart-btn {
  padding: 0.5em 2em;
  max-width: 100%;
  background: #484741;
  color: white;
  border: none;
  border-radius: 16px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  margin-bottom: 30px;
}
.quiz .final-result .restart-btn:hover {
  background: #f3f1ea;
  color: #484741;
}

.product_brands_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 50px;
}
@media screen and (min-width: 865px) {
  .product_brands_title .title {
    width: 60%;
  }
  .product_brands_title .logo {
    width: 40%;
    padding-right: 50px;
  }
  .product_brands_title .logo .image {
    margin: 30px 20px;
  }
  .product_brands_title .logo .image.motion_logo {
    margin: 30px 0;
  }
}
@media screen and (max-width: 864px) {
  .product_brands_title {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .product_brands_title .logo .image {
    margin: 30px 0px;
  }
}
.product_brands_case > ul {
  margin: 40px 0 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.product_brands_case > ul li {
  margin-bottom: 20px;
}
@media screen and (min-width: 865px) {
  .product_brands_case > ul li {
    width: 170px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 864px) {
  .product_brands_case > ul li {
    width: calc(50% - 10px);
  }
  .product_brands_case > ul li:nth-child(2n) {
    margin-left: 20px;
  }
}
.product_brands_case > ul li .image {
  overflow: hidden;
  border-radius: 16px;
}
.product_brands_case > ul li .image img {
  width: 100%;
  height: 80px;
  -o-object-fit: cover;
     object-fit: cover;
}
.product_brands_case > ul li .case_title {
  font-weight: bold;
  line-height: 1;
  margin-bottom: 0.5em;
}
.product_brands_list > ul {
  margin: 40px 0 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.product_brands_list > ul > li {
  margin-bottom: 20px;
}
@media screen and (min-width: 865px) {
  .product_brands_list > ul > li {
    width: calc(50% - 20px);
    margin-bottom: 40px;
  }
}
.product_brands_list > ul > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.product_brands_list > ul > li .image {
  overflow: hidden;
  border-radius: 16px;
  width: 200px;
  background-color: #ffffff;
}
@media screen and (max-width: 864px) {
  .product_brands_list > ul > li .image {
    width: 100px;
  }
}
.product_brands_list > ul > li .image img {
  width: 100%;
  height: 200px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 864px) {
  .product_brands_list > ul > li .image img {
    height: 100px;
  }
}
@media screen and (min-width: 865px) {
  .product_brands_list > ul > li .list_title {
    width: calc(100% - 200px);
    padding-right: 20px;
  }
}
@media screen and (max-width: 864px) {
  .product_brands_list > ul > li .list_title {
    width: calc(100% - 100px);
    padding-right: 10px;
  }
}
.product_brands_list > ul > li .list_title > em {
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 0.5em;
  display: inline-block;
  font-size: 1.25em;
}
.product_brands_list > ul > li .list_title .simple-list {
  margin: 1em 0;
  padding: 1em;
  background: rgba(248, 246, 239, 0.5);
  border-radius: 16px;
  font-size: 14px;
}
.product_brands_list > ul > li .list_title .simple-list ul > li {
  margin-bottom: 0;
  position: relative;
  display: inline-block;
  color: #484741;
  padding: 0 0.5em 0 1em;
}
.product_brands_list > ul > li .list_title .simple-list ul > li:before {
  content: "";
  position: absolute;
  left: 0.1em;
  top: 0.45em;
  height: 0.5em;
  width: 0.5em;
  background-color: #CCCCCC;
  border-radius: 50%;
}
.product_brands_list > ul > li.all {
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.product_brands_list > ul > li.all .list_title {
  width: calc(100% - 400px);
}
.product_brands_list > ul > li.all .image {
  width: 400px;
}
.product_brands_list > ul > li.all .image img {
  height: 200px;
}
@media screen and (max-width: 864px) {
  .product_brands_list > ul > li.all .list_title {
    width: 100%;
    margin-bottom: 0.25em;
  }
  .product_brands_list > ul > li.all .image img {
    height: 170px;
  }
}

.product_process_list {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}
.product_process_list li p {
  margin: 20px 0;
}
.product_process_list li p + p {
  margin: -10px 0 20px;
}
.product_process_list li .image {
  margin-top: 10px;
}
.product_process_list li .image img {
  background-color: #ffffff;
  border-radius: 16px;
  padding: 20px;
}
.product_process_list li.mirror img {
  padding-bottom: 0;
}
@media screen and (min-width: 865px) {
  .product_process_list li .section_boder {
    margin-left: -152px;
    margin-right: -152px;
  }
}

@media screen and (min-width: 865px) {
  .ueda_list {
    margin-bottom: 100px;
  }
}
.ueda_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 50px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 865px) {
  .ueda_list li:nth-child(2n) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .ueda_list li:nth-child(2n) .ueda_list_text {
    padding-right: 0;
    padding-left: 40px;
  }
}
@media screen and (min-width: 865px) {
  .ueda_list_text {
    width: 60%;
    padding-right: 40px;
  }
}
.ueda_list_text .title {
  font-size: 2em;
  font-weight: bold;
  margin: 10px 0;
}
.ueda_list_text .title span {
  display: block;
  font-size: 12px;
}
.ueda_list_text p {
  margin: 20px 0;
  line-height: 1.6;
  font-size: 16px;
}
.ueda_list_text p em {
  font-weight: bold;
}
.ueda_list_text_button a {
  position: relative;
  display: inline-block;
  padding: 0.5em 2.5em 0.45em 1em;
  border-radius: 16px;
  border: 2px solid #262520;
  background-color: #ffffff;
  font-size: 1.75rem;
  font-weight: 600;
}
.ueda_list_text_button a:after {
  content: "keyboard_arrow_down";
  font-family: "Material Symbols";
  font-weight: 200;
  font-weight: bold;
  position: absolute;
  right: 1em;
}
.ueda_list_text_button a:hover:after {
  color: #262520;
}
.ueda_list .image {
  border-radius: 16px;
  overflow: hidden;
}
@media screen and (min-width: 865px) {
  .ueda_list .image {
    width: 40%;
  }
}
.ueda_list .image img {
  max-height: 300px;
  -o-object-fit: cover;
     object-fit: cover;
}
.ueda h5 span.underline {
  margin-bottom: 30px;
}
@media screen and (min-width: 865px) {
  .ueda .overlap_img {
    margin-bottom: 400px;
  }
  .ueda .overlap_img h5 {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 864px) {
  .ueda .overlap_img {
    margin-bottom: 250px;
  }
  .ueda .overlap_img h5 {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 864px) {
  .ueda .message_image_side_box h5 {
    padding-bottom: 200px;
  }
}
.ueda .location_movie_inner {
  border: 2px solid #262520;
  border-radius: 1em;
  overflow: hidden;
  background-color: #262520;
}
.ueda .location_movie iframe {
  display: block;
  aspect-ratio: 16/9;
  max-width: 100%;
  width: 100%;
}

.message_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.message_inner > * {
  width: calc(50% - 20px);
}
@media screen and (max-width: 864px) {
  .message_inner > * {
    width: 100%;
  }
}
.message_image {
  position: relative;
}
@media screen and (max-width: 864px) {
  .message_image {
    margin-bottom: 30px;
  }
}
.message_image .image {
  clip-path: polygon(10px 0, 7.5px 0.5px, 5.5px 1.5px, 3.5px 3.5px, 1.5px 5.5px, 0.5px 7.5px, 0 10px, 0 calc(100% - 100px - 10px), 0.5px calc(100% - 100px - 7.5px), 1.5px calc(100% - 100px - 5.5px), 3.5px calc(100% - 100px - 3.5px), 5.5px calc(100% - 100px - 1.5px), 7.5px calc(100% - 100px - 0.5px), 10px calc(100% - 100px), 210px calc(100% - 100px), 212.5px calc(100% - 100px + 0.5px), 214.5px calc(100% - 100px + 1.5px), 216.5px calc(100% - 100px + 3.5px), 218.5px calc(100% - 100px + 5.5px), 219.5px calc(100% - 100px + 7.5px), 220px calc(100% - 100px + 10px), 220px calc(100% - 10px), 220.5px calc(100% - 7.5px), 221.5px calc(100% - 5.5px), 223.5px calc(100% - 3.5px), 225.5px calc(100% - 1.5px), 227.5px calc(100% - 0.5px), 230px 100%, calc(100% - 10px) 100%, calc(100% - 7.5px) calc(100% - 0.5px), calc(100% - 5.5px) calc(100% - 1.5px), calc(100% - 3.5px) calc(100% - 3.5px), calc(100% - 1.5px) calc(100% - 5.5px), calc(100% - 0.5px) calc(100% - 7.5px), 100% calc(100% - 10px), 100% 10px, calc(100% - 0.5px) 7.5px, calc(100% - 1.5px) 5.5px, calc(100% - 3.5px) 3.5px, calc(100% - 5.5px) 1.5px, calc(100% - 7.5px) 0.5px, calc(100% - 10px) 0);
}
@media screen and (max-width: 864px) {
  .message_image .image {
    height: 300px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .message_image .image img {
    height: 300px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .message_image .image {
    clip-path: polygon(10px 0, 7.5px 0.5px, 5.5px 1.5px, 3.5px 3.5px, 1.5px 5.5px, 0.5px 7.5px, 0 10px, 0 calc(100% - 80px - 10px), 0.5px calc(100% - 80px - 7.5px), 1.5px calc(100% - 80px - 5.5px), 3.5px calc(100% - 80px - 3.5px), 5.5px calc(100% - 80px - 1.5px), 7.5px calc(100% - 80px - 0.5px), 10px calc(100% - 80px), 170px calc(100% - 80px), 172.5px calc(100% - 80px + 0.5px), 174.5px calc(100% - 80px + 1.5px), 176.5px calc(100% - 80px + 3.5px), 178.5px calc(100% - 80px + 5.5px), 179.5px calc(100% - 80px + 7.5px), 180px calc(100% - 80px + 10px), 180px calc(100% - 10px), 180.5px calc(100% - 7.5px), 181.5px calc(100% - 5.5px), 183.5px calc(100% - 3.5px), 185.5px calc(100% - 1.5px), 187.5px calc(100% - 0.5px), 190px 100%, calc(100% - 10px) 100%, calc(100% - 7.5px) calc(100% - 0.5px), calc(100% - 5.5px) calc(100% - 1.5px), calc(100% - 3.5px) calc(100% - 3.5px), calc(100% - 1.5px) calc(100% - 5.5px), calc(100% - 0.5px) calc(100% - 7.5px), 100% calc(100% - 10px), 100% 10px, calc(100% - 0.5px) 7.5px, calc(100% - 1.5px) 5.5px, calc(100% - 3.5px) 3.5px, calc(100% - 5.5px) 1.5px, calc(100% - 7.5px) 0.5px, calc(100% - 10px) 0);
  }
}
.message_image .text {
  position: absolute;
  left: 0;
  bottom: 0;
}
.message_image .text em,
.message_image .text span {
  display: block;
  line-height: 1.2;
}
.message_image .text span {
  font-size: 1.25em;
}
.message_image .text em {
  font-size: 2.75em;
  font-family: serif;
}
@media screen and (max-width: 864px) {
  .message_image .text em {
    font-size: 2.5em;
  }
}
.message_text p {
  line-height: 1.6;
}

.department .department_flexlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 40px;
}
.department .department_flexlist figure {
  width: 78px;
}
.department .department_flexlist figure img {
  height: 78px;
}
.department .department_flexlist p {
  width: calc(100% - 80px);
  padding-left: 20px;
  font-size: 18px;
}
.department .department_flexlist p span br {
  display: none;
}

.domestic_sales .Schedule_bar,
.design_development .Schedule_bar,
.quality_control .Schedule_bar,
.materials .Schedule_bar,
.global_sales .Schedule_bar,
.production_engineering .Schedule_bar,
.production_management .Schedule_bar,
.management .Schedule_bar {
  list-style: none;
  padding: 0 0 0 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.domestic_sales .Schedule_bar li,
.design_development .Schedule_bar li,
.quality_control .Schedule_bar li,
.materials .Schedule_bar li,
.global_sales .Schedule_bar li,
.production_engineering .Schedule_bar li,
.production_management .Schedule_bar li,
.management .Schedule_bar li {
  position: relative;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  color: #ffffff;
  padding: 10px 0px;
  font-size: 1.5rem;
}
.domestic_sales .Schedule_bar li .time_block,
.design_development .Schedule_bar li .time_block,
.quality_control .Schedule_bar li .time_block,
.materials .Schedule_bar li .time_block,
.global_sales .Schedule_bar li .time_block,
.production_engineering .Schedule_bar li .time_block,
.production_management .Schedule_bar li .time_block,
.management .Schedule_bar li .time_block {
  width: 3.5rem;
}
.domestic_sales .Schedule_bar li .dot_line,
.design_development .Schedule_bar li .dot_line,
.quality_control .Schedule_bar li .dot_line,
.materials .Schedule_bar li .dot_line,
.global_sales .Schedule_bar li .dot_line,
.production_engineering .Schedule_bar li .dot_line,
.production_management .Schedule_bar li .dot_line,
.management .Schedule_bar li .dot_line {
  position: relative;
  width: 4rem;
}
.domestic_sales .Schedule_bar li .dot_line::after,
.design_development .Schedule_bar li .dot_line::after,
.quality_control .Schedule_bar li .dot_line::after,
.materials .Schedule_bar li .dot_line::after,
.global_sales .Schedule_bar li .dot_line::after,
.production_engineering .Schedule_bar li .dot_line::after,
.production_management .Schedule_bar li .dot_line::after,
.management .Schedule_bar li .dot_line::after {
  position: absolute;
  left: calc(50% + 1px);
  top: 0.75rem;
  border: 3px solid #CCCCCC;
  border-radius: 50%;
  background-color: #ffffff;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: "";
}
.domestic_sales .Schedule_bar li:not(:last-child) .dot_line::before,
.design_development .Schedule_bar li:not(:last-child) .dot_line::before,
.quality_control .Schedule_bar li:not(:last-child) .dot_line::before,
.materials .Schedule_bar li:not(:last-child) .dot_line::before,
.global_sales .Schedule_bar li:not(:last-child) .dot_line::before,
.production_engineering .Schedule_bar li:not(:last-child) .dot_line::before,
.production_management .Schedule_bar li:not(:last-child) .dot_line::before,
.management .Schedule_bar li:not(:last-child) .dot_line::before {
  position: absolute;
  display: block;
  left: 50%;
  top: 0.75rem;
  bottom: -28px;
  width: 3px;
  border-right: 1px solid #CCCCCC;
  content: "";
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}
.domestic_sales .Schedule_bar li .txt_block,
.design_development .Schedule_bar li .txt_block,
.quality_control .Schedule_bar li .txt_block,
.materials .Schedule_bar li .txt_block,
.global_sales .Schedule_bar li .txt_block,
.production_engineering .Schedule_bar li .txt_block,
.production_management .Schedule_bar li .txt_block,
.management .Schedule_bar li .txt_block {
  display: inline-block;
  width: 100%;
  margin-left: 5px;
}
.domestic_sales .case_movie_list,
.design_development .case_movie_list,
.quality_control .case_movie_list,
.materials .case_movie_list,
.global_sales .case_movie_list,
.production_engineering .case_movie_list,
.production_management .case_movie_list,
.management .case_movie_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.domestic_sales .case_movie_list li,
.design_development .case_movie_list li,
.quality_control .case_movie_list li,
.materials .case_movie_list li,
.global_sales .case_movie_list li,
.production_engineering .case_movie_list li,
.production_management .case_movie_list li,
.management .case_movie_list li {
  position: relative;
}
.domestic_sales .case_movie_list li:hover,
.design_development .case_movie_list li:hover,
.quality_control .case_movie_list li:hover,
.materials .case_movie_list li:hover,
.global_sales .case_movie_list li:hover,
.production_engineering .case_movie_list li:hover,
.production_management .case_movie_list li:hover,
.management .case_movie_list li:hover {
  opacity: 0.8;
}
.domestic_sales .case_movie_list li em,
.design_development .case_movie_list li em,
.quality_control .case_movie_list li em,
.materials .case_movie_list li em,
.global_sales .case_movie_list li em,
.production_engineering .case_movie_list li em,
.production_management .case_movie_list li em,
.management .case_movie_list li em {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  padding: 1em 0.5em;
  background-color: #262520;
  color: #ffffff;
  border-radius: 4px 0 0 4px;
  letter-spacing: 1px;
}
.domestic_sales .case_movie_list li .movie,
.design_development .case_movie_list li .movie,
.quality_control .case_movie_list li .movie,
.materials .case_movie_list li .movie,
.global_sales .case_movie_list li .movie,
.production_engineering .case_movie_list li .movie,
.production_management .case_movie_list li .movie,
.management .case_movie_list li .movie {
  margin-left: 2.45em;
  border-radius: 0 16px 16px 16px;
  overflow: hidden;
  border: 2px solid #262520;
  cursor: pointer;
  background-color: #262520;
}
@media screen and (min-width: 865px) {
  .domestic_sales .case_movie_list li .movie,
  .design_development .case_movie_list li .movie,
  .quality_control .case_movie_list li .movie,
  .materials .case_movie_list li .movie,
  .global_sales .case_movie_list li .movie,
  .production_engineering .case_movie_list li .movie,
  .production_management .case_movie_list li .movie,
  .management .case_movie_list li .movie {
    width: 250px;
  }
}
@media screen and (max-width: 864px) {
  .domestic_sales .case_movie_list li .movie,
  .design_development .case_movie_list li .movie,
  .quality_control .case_movie_list li .movie,
  .materials .case_movie_list li .movie,
  .global_sales .case_movie_list li .movie,
  .production_engineering .case_movie_list li .movie,
  .production_management .case_movie_list li .movie,
  .management .case_movie_list li .movie {
    width: calc(100% - 2.5em);
  }
}
.domestic_sales .case_movie_list li .movie iframe,
.design_development .case_movie_list li .movie iframe,
.quality_control .case_movie_list li .movie iframe,
.materials .case_movie_list li .movie iframe,
.global_sales .case_movie_list li .movie iframe,
.production_engineering .case_movie_list li .movie iframe,
.production_management .case_movie_list li .movie iframe,
.management .case_movie_list li .movie iframe {
  display: block;
  aspect-ratio: 9/16;
  max-width: 100%;
  width: 100%;
}
@media screen and (min-width: 865px) {
  .domestic_sales .case_movie_list li + li,
  .design_development .case_movie_list li + li,
  .quality_control .case_movie_list li + li,
  .materials .case_movie_list li + li,
  .global_sales .case_movie_list li + li,
  .production_engineering .case_movie_list li + li,
  .production_management .case_movie_list li + li,
  .management .case_movie_list li + li {
    margin-left: 20px;
  }
}
@media screen and (max-width: 864px) {
  .domestic_sales .case_movie_list li + li,
  .design_development .case_movie_list li + li,
  .quality_control .case_movie_list li + li,
  .materials .case_movie_list li + li,
  .global_sales .case_movie_list li + li,
  .production_engineering .case_movie_list li + li,
  .production_management .case_movie_list li + li,
  .management .case_movie_list li + li {
    margin-top: 20px;
  }
}
.domestic_sales .case_movie_button,
.design_development .case_movie_button,
.quality_control .case_movie_button,
.materials .case_movie_button,
.global_sales .case_movie_button,
.production_engineering .case_movie_button,
.production_management .case_movie_button,
.management .case_movie_button {
  margin: 0.5em 0;
  border-radius: 1em;
  border: 2px solid #262520;
  background-color: #ffffff;
  text-decoration: none;
  position: relative;
  padding: 0.85em 2.75em 0.65em 1em;
  display: inline-block;
  height: 100%;
}
.domestic_sales .case_movie_button em,
.design_development .case_movie_button em,
.quality_control .case_movie_button em,
.materials .case_movie_button em,
.global_sales .case_movie_button em,
.production_engineering .case_movie_button em,
.production_management .case_movie_button em,
.management .case_movie_button em {
  display: inline-block;
  font-weight: bold;
  color: #262520;
}
.domestic_sales .case_movie_button:after,
.design_development .case_movie_button:after,
.quality_control .case_movie_button:after,
.materials .case_movie_button:after,
.global_sales .case_movie_button:after,
.production_engineering .case_movie_button:after,
.production_management .case_movie_button:after,
.management .case_movie_button:after {
  position: absolute;
  right: 1em;
}
.domestic_sales .case_movie_button:hover,
.design_development .case_movie_button:hover,
.quality_control .case_movie_button:hover,
.materials .case_movie_button:hover,
.global_sales .case_movie_button:hover,
.production_engineering .case_movie_button:hover,
.production_management .case_movie_button:hover,
.management .case_movie_button:hover {
  background-color: #f8f6ef;
}
.domestic_sales .workstyle_white_box.work,
.design_development .workstyle_white_box.work,
.quality_control .workstyle_white_box.work,
.materials .workstyle_white_box.work,
.global_sales .workstyle_white_box.work,
.production_engineering .workstyle_white_box.work,
.production_management .workstyle_white_box.work,
.management .workstyle_white_box.work {
  position: relative;
  margin: 0;
  padding: 0;
  border-radius: 10px;
  border: solid 1px #262520;
  width: calc(33.3333333333% - 13.3333333333px);
}
@media screen and (max-width: 864px) {
  .domestic_sales .workstyle_white_box.work,
  .design_development .workstyle_white_box.work,
  .quality_control .workstyle_white_box.work,
  .materials .workstyle_white_box.work,
  .global_sales .workstyle_white_box.work,
  .production_engineering .workstyle_white_box.work,
  .production_management .workstyle_white_box.work,
  .management .workstyle_white_box.work {
    margin: 0 30px 15px;
    margin: 0;
  }
}
.domestic_sales .workstyle_white_box.work a,
.design_development .workstyle_white_box.work a,
.quality_control .workstyle_white_box.work a,
.materials .workstyle_white_box.work a,
.global_sales .workstyle_white_box.work a,
.production_engineering .workstyle_white_box.work a,
.production_management .workstyle_white_box.work a,
.management .workstyle_white_box.work a {
  padding: 17px 20px;
  margin: 0;
  display: block;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.domestic_sales .workstyle_white_box.work a div,
.design_development .workstyle_white_box.work a div,
.quality_control .workstyle_white_box.work a div,
.materials .workstyle_white_box.work a div,
.global_sales .workstyle_white_box.work a div,
.production_engineering .workstyle_white_box.work a div,
.production_management .workstyle_white_box.work a div,
.management .workstyle_white_box.work a div {
  margin-bottom: 0;
}
.domestic_sales .workstyle_white_box.work a p,
.design_development .workstyle_white_box.work a p,
.quality_control .workstyle_white_box.work a p,
.materials .workstyle_white_box.work a p,
.global_sales .workstyle_white_box.work a p,
.production_engineering .workstyle_white_box.work a p,
.production_management .workstyle_white_box.work a p,
.management .workstyle_white_box.work a p {
  display: none;
}
.domestic_sales .workstyle_white_box.work a figure,
.design_development .workstyle_white_box.work a figure,
.quality_control .workstyle_white_box.work a figure,
.materials .workstyle_white_box.work a figure,
.global_sales .workstyle_white_box.work a figure,
.production_engineering .workstyle_white_box.work a figure,
.production_management .workstyle_white_box.work a figure,
.management .workstyle_white_box.work a figure {
  width: 78px;
  height: 78px;
}
.domestic_sales .workstyle_white_box.work a h4,
.design_development .workstyle_white_box.work a h4,
.quality_control .workstyle_white_box.work a h4,
.materials .workstyle_white_box.work a h4,
.global_sales .workstyle_white_box.work a h4,
.production_engineering .workstyle_white_box.work a h4,
.production_management .workstyle_white_box.work a h4,
.management .workstyle_white_box.work a h4 {
  position: initial;
  padding: 0;
  margin: 0 0 0 20px;
  font-size: 2.5rem;
  line-height: 1.2;
}
.domestic_sales .workstyle_white_box.work a h4.underline span,
.design_development .workstyle_white_box.work a h4.underline span,
.quality_control .workstyle_white_box.work a h4.underline span,
.materials .workstyle_white_box.work a h4.underline span,
.global_sales .workstyle_white_box.work a h4.underline span,
.production_engineering .workstyle_white_box.work a h4.underline span,
.production_management .workstyle_white_box.work a h4.underline span,
.management .workstyle_white_box.work a h4.underline span {
  display: inline-block;
  border-bottom: none;
}

.engagement .items_stretch,
.collaboration .items_stretch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 0;
}

@media only screen and (max-width: 1076px) {
  .collaboration #title .frame > h1 span:first-child {
    top: 46%;
  }
}
@media screen and (max-width: 864px) {
  .collaboration #title .frame > h1 span:first-child {
    top: calc(50% + 40px);
  }
}
.collaboration .items_stretch .basecoler_box {
  padding: 12px 18px;
  color: #ffffff;
  background-color: #262520;
  border-radius: 8px 8px 0 0;
}
.collaboration .items_stretch .basecoler_box .icon_font {
  font-family: "Material Symbols";
  display: inline-block;
  height: 1em;
  position: relative;
  width: 2.25em;
}
.collaboration .items_stretch .basecoler_box .icon_font:before {
  font-size: 26px;
  top: -10px;
  position: absolute;
  color: #676660;
}
@media screen and (max-width: 864px) {
  .collaboration .items_stretch .basecoler_box .icon_font:before {
    top: -15px;
    left: -8px;
  }
}
.collaboration .items_stretch .basecoler_box .icon_font.icon_upgrade::before {
  content: "construction";
}
.collaboration .items_stretch .basecoler_box .icon_font.icon_detection::before {
  content: "search";
}
.collaboration .items_stretch .basecoler_box .icon_font.icon_develop::before {
  content: "computer";
}
.collaboration .items_stretch .white_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  padding: 12px 18px;
  color: #262520;
  background-color: #ffffff;
  border-radius: 0 0 8px 8px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 864px) {
  .collaboration .items_stretch .white_box {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 864px) {
  .collaboration .items_stretch:last-child .white_box {
    margin-bottom: 0;
  }
}
.collaboration .box_title {
  position: relative;
  width: 80%;
  margin: 0 auto;
  padding: 22px 24px;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 864px) {
  .collaboration .box_title {
    width: 100%;
    padding: 22px 0;
  }
}
.collaboration .box_title.basecoler {
  color: #ffffff;
  border: 2px solid #262520;
  background-color: #262520;
}
.collaboration .box_title.gray {
  color: #ffffff;
  border: 2px solid #484741;
  background-color: #484741;
}
.collaboration .box_title.plus {
  border-radius: 5px 5px 0 0;
}
.collaboration .box_title.plus::after {
  position: absolute;
  left: 50%;
  bottom: 0;
  color: #ffffff;
  -webkit-transform: translateX(-50%) translateY(calc(50% + 0.2rem));
          transform: translateX(-50%) translateY(calc(50% + 0.2rem));
  font-family: "Material Symbols";
  font-size: 2.4em;
  font-weight: bold;
  content: "add";
  z-index: 1;
}
.collaboration .box_title.arrow_down {
  border-radius: 0 0 5px 5px;
}
.collaboration .box_title.arrow_down::before {
  position: absolute;
  top: 100%;
  left: 50%;
  border-right: 16px solid transparent;
  border-left: 16px solid transparent;
  border-top: 20px solid #484741;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  content: "";
}
.collaboration .circle_list {
  width: 100%;
  margin-top: 40px;
}
.collaboration .circle_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 12px;
}
@media screen and (max-width: 864px) {
  .collaboration .circle_list li {
    display: block;
  }
}
.collaboration .circle_list li p {
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 864px) {
  .collaboration .circle_list li p {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.collaboration .circle_list li p span {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #262520;
  font-weight: bold;
  font-size: 1.8rem;
  width: 160px;
  height: 160px;
}
.collaboration .circle_list li p span::after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 148px;
  height: 148px;
  background-color: #ffffff;
  border: 2px solid #262520;
  border-radius: 50%;
  z-index: -1;
}
@media screen and (max-width: 864px) {
  .collaboration .circle_list li p.left.rightsp {
    margin-top: -120px;
    text-align: right;
  }
  .collaboration .circle_list li p.left.rightsp + .left.leftsp {
    margin-top: -40px;
    margin-left: 40px;
  }
}

.career .career_list_item,
.global .career_list_item {
  background-color: #ffffff;
  border-radius: 2em;
  padding-bottom: 20px;
  margin-bottom: 48px;
  position: relative;
}
@media screen and (min-width: 865px) {
  .career .career_list_item,
  .global .career_list_item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: transparent;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.career .career_list_item.is-open .career_list_message,
.global .career_list_item.is-open .career_list_message {
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
}
.career .career_list_item.is-open .career_list_button em .is-open,
.global .career_list_item.is-open .career_list_button em .is-open {
  display: none;
}
.career .career_list_item.is-open .career_list_button em .is-close,
.global .career_list_item.is-open .career_list_button em .is-close {
  display: block;
}
.career .career_list_item.is-open .career_list_button em:after,
.global .career_list_item.is-open .career_list_button em:after {
  -webkit-transform: translateY(-50%) rotate(0deg);
          transform: translateY(-50%) rotate(0deg);
}
.career .career_list_title,
.global .career_list_title {
  padding: 20px;
}
@media screen and (min-width: 865px) {
  .career .career_list_title,
  .global .career_list_title {
    width: 40%;
  }
}
.career .career_list_title .type_career,
.global .career_list_title .type_career {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.career .career_list_title .type_career span,
.career .career_list_title .type_career em,
.global .career_list_title .type_career span,
.global .career_list_title .type_career em {
  display: inline-block;
}
.career .career_list_title .type_career span,
.global .career_list_title .type_career span {
  width: 70px;
  font-size: 2rem;
  font-weight: 400;
  color: #676660;
}
.career .career_list_title .type_career span:after,
.global .career_list_title .type_career span:after {
  content: "";
  height: 100%;
  margin-left: 0.5em;
  margin-right: 0.5em;
  border-right: 1px solid #CCCCCC;
}
.career .career_list_title .type_career em,
.global .career_list_title .type_career em {
  width: calc(100% - 70px);
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.2;
}
.career .career_list_title .type_title p,
.global .career_list_title .type_title p {
  font-size: 2.4rem;
  font-weight: 600;
  margin: 0 0 0.5em;
}
.career .career_list_title .type_title_caption,
.global .career_list_title .type_title_caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  align-items: center;
  margin: 0 0 0.5em;
}
@media screen and (min-width: 865px) {
  .career .career_list_title .type_title_caption,
  .global .career_list_title .type_title_caption {
    margin: -0.5em 0 0.5em;
  }
}
.career .career_list_title .type_title_caption span,
.global .career_list_title .type_title_caption span {
  display: inline-block;
  padding: 0em 0.5em;
}
.career .career_list_title .type_title_country:before,
.global .career_list_title .type_title_country:before {
  content: "globe";
  font-family: "Material Symbols";
  font-weight: 200;
}
.career .career_list_title .type_title_job.__handyman:before,
.global .career_list_title .type_title_job.__handyman:before {
  content: "handyman";
  font-family: "Material Symbols";
  font-weight: 200;
}
.career .career_list_title .type_title_job.__sales:before,
.global .career_list_title .type_title_job.__sales:before {
  content: "assignment";
  font-family: "Material Symbols";
  font-weight: 200;
  top: -2px;
  left: 1px;
}
.career .career_list_title .type_title_country, .career .career_list_title .type_title_job,
.global .career_list_title .type_title_country,
.global .career_list_title .type_title_job {
  font-size: 1.6rem;
  line-height: 1.2;
  position: relative;
  padding-left: 1.5em;
  font-weight: bold;
}
.career .career_list_title .type_title_country:before, .career .career_list_title .type_title_job:before,
.global .career_list_title .type_title_country:before,
.global .career_list_title .type_title_job:before {
  position: absolute;
  left: 0;
  font-weight: 600 !important;
  font-size: 1.2em;
  color: #CCCCCC;
  top: -3px;
}
.career .career_list_title .type_photo,
.global .career_list_title .type_photo {
  position: relative;
  border-radius: 1em;
  overflow: hidden;
  margin: 1em 0;
}
.career .career_list_title .type_photo span,
.global .career_list_title .type_photo span {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 6px 9px;
  border: 2px solid #262520;
  background-color: #262520;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 600;
}
.career .career_list_title .type_personal,
.global .career_list_title .type_personal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.career .career_list_title .type_personal_name,
.global .career_list_title .type_personal_name {
  font-size: 2em;
  font-weight: bold;
  padding-right: 0.5em;
}
.career .career_list_title .type_personal_country:before,
.global .career_list_title .type_personal_country:before {
  content: "account_circle";
  font-family: "Material Symbols";
  font-weight: 200;
}
.career .career_list_title .type_personal_dept:before,
.global .career_list_title .type_personal_dept:before {
  content: "work";
  font-family: "Material Symbols";
  font-weight: 200;
}
.career .career_list_title .type_personal_country, .career .career_list_title .type_personal_dept,
.global .career_list_title .type_personal_country,
.global .career_list_title .type_personal_dept {
  font-size: 1.6rem;
  line-height: 1.2;
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 0.5em;
}
.career .career_list_title .type_personal_country:before, .career .career_list_title .type_personal_dept:before,
.global .career_list_title .type_personal_country:before,
.global .career_list_title .type_personal_dept:before {
  position: absolute;
  left: 0;
  font-weight: 600;
  font-size: 1.2em;
  color: #CCCCCC;
  top: -3px;
}
@media screen and (min-width: 865px) {
  .career .career_list_message,
  .global .career_list_message {
    width: calc(60% - 2px);
    margin-left: 2px;
  }
}
.career .career_list_message,
.global .career_list_message {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 0fr;
  grid-template-rows: 0fr;
  -webkit-transition: 250ms grid-template-rows ease;
  transition: 250ms grid-template-rows ease;
  transition: 250ms grid-template-rows ease, 250ms -ms-grid-rows ease;
  padding: 0 20px;
}
@media screen and (min-width: 865px) {
  .career .career_list_message,
  .global .career_list_message {
    width: 60%;
    display: block;
  }
}
.career .career_list_message_inner,
.global .career_list_message_inner {
  overflow: hidden;
}
.career .career_list_message .title,
.global .career_list_message .title {
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 0.5em;
}
.career .career_list_message .message,
.global .career_list_message .message {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
}
.career .career_list_message .message dl dt,
.global .career_list_message .message dl dt {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 0.25em;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.5;
}
.career .career_list_message .message dl dt:after,
.global .career_list_message .message dl dt:after {
  content: "";
  height: 1px;
  border-top: 1px solid #ccc;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-left: 0.5em;
}
.career .career_list_message .message dl dd,
.global .career_list_message .message dl dd {
  line-height: 1.6;
}
.career .career_list_message .message dl + dl,
.global .career_list_message .message dl + dl {
  margin-top: 1.5em;
}
@media screen and (min-width: 865px) {
  .career .career_list_title, .career .career_list_message,
  .global .career_list_title,
  .global .career_list_message {
    padding: 48px;
    background-color: #ffffff;
    border-radius: 2em;
  }
}
.career .career_list_button,
.global .career_list_button {
  position: absolute;
  background-color: #484741;
  color: #ffffff;
  padding: 1em 2em 1em 1em;
  left: 50%;
  bottom: -1.75em;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border-radius: 999px;
  min-width: 15em;
}
.career .career_list_button em,
.global .career_list_button em {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: bold;
}
.career .career_list_button em:after,
.global .career_list_button em:after {
  content: "close";
  font-family: "Material Symbols";
  font-weight: 200;
  position: absolute;
  right: 0.75em;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
  font-size: 1.75em;
  font-weight: 300;
}
.career .career_list_button em .is-open,
.global .career_list_button em .is-open {
  display: block;
}
.career .career_list_button em .is-close,
.global .career_list_button em .is-close {
  display: none;
}

.crosstalk #title {
  z-index: 1;
}
.crosstalk #main_photo_title_voice {
  width: 100%;
  margin: -150px auto 0;
}
@media screen and (max-width: 864px) {
  .crosstalk #main_photo_title_voice {
    padding: 50px 0 0 0;
    margin: 0 auto;
  }
}
.crosstalk #main_photo_title_voice #main_photo #main_photo_visual > h2.head_photo_voice p {
  position: absolute;
  bottom: 0;
  left: 48px;
  -webkit-transform: translate(0, 20%);
  transform: translate(0, 20%);
  color: #ffffff;
  font-weight: bold;
  font-size: 6rem;
  line-height: 0.8;
  text-shadow: 1px 1px 2px #484741;
}
@media screen and (max-width: 864px) {
  .crosstalk #main_photo_title_voice #main_photo #main_photo_visual > h2.head_photo_voice p {
    left: 24px;
    font-size: 4rem;
    line-height: 1;
  }
}
.crosstalk #main_photo_title_voice #main_photo #main_photo_visual img {
  border-radius: 0;
  max-height: 500px;
}
.crosstalk #main_wrapper .flex5.crosstalk {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  reading-flow: flex-visual;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  row-gap: 15px;
}
.crosstalk #main_wrapper .flex5.crosstalk > * {
  width: calc(20% - 16px);
}
@media screen and (max-width: 864px) {
  .crosstalk #main_wrapper .flex5.crosstalk > * {
    width: calc(50% - 10px);
  }
}
.crosstalk #main_wrapper .flex5.crosstalk .boxtype_crosstalk .type_photo {
  position: relative;
  border-radius: 16px 16px 16px 16px;
  overflow: hidden;
}
.crosstalk #main_wrapper .flex5.crosstalk .boxtype_crosstalk .type_photo .type_index {
  display: inline-block;
  position: absolute;
  bottom: 0px;
  right: 0px;
  border-radius: 0 0 16px 0;
  padding: 7px 10px;
  font-weight: 600;
  font-size: 1.5rem;
  border: 1px solid #262520;
  background: #262520;
  color: #ffffff;
  text-align: center;
}
.crosstalk #main_wrapper .flex5.crosstalk .boxtype_crosstalk .type_title {
  position: relative;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding-bottom: 5px;
  font-weight: 600;
  font-size: 2rem;
}
.crosstalk #main_wrapper .flex5.crosstalk .boxtype_crosstalk .type_outline span {
  display: inline-block;
}
.crosstalk #main_wrapper .flexbox2_wide .question_menu {
  width: 280px;
}
@media screen and (max-width: 864px) {
  .crosstalk #main_wrapper .flexbox2_wide .question_menu {
    width: 100%;
  }
}
.crosstalk #main_wrapper .flexbox2_wide .question_comment {
  width: calc(100% - 280px);
}
@media screen and (max-width: 864px) {
  .crosstalk #main_wrapper .flexbox2_wide .question_comment {
    width: 100%;
  }
}
@media screen and (max-width: 864px) {
  .crosstalk .talk_bubble_White__right {
    border-radius: 0 40px 40px 40px;
  }
}

.voice #main_wrapper .flexbox3.voice,
.voice_detail #main_wrapper .flexbox3.voice {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  reading-flow: flex-visual;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-column-gap: 46px;
     -moz-column-gap: 46px;
          column-gap: 46px;
  row-gap: 50px;
}
.voice #main_wrapper .flexbox3.voice > *,
.voice_detail #main_wrapper .flexbox3.voice > * {
  width: calc(33.3% - 30.6666666667px);
}
@media only screen and (max-width: 1104px) {
  .voice #main_wrapper .flexbox3.voice > *,
  .voice_detail #main_wrapper .flexbox3.voice > * {
    width: calc(50% - 23px);
  }
}
@media screen and (max-width: 864px) {
  .voice #main_wrapper .flexbox3.voice > *,
  .voice_detail #main_wrapper .flexbox3.voice > * {
    width: 100%;
  }
}
.voice #main_wrapper .flexbox3.voice.two div:last-child.boxtype_interview,
.voice_detail #main_wrapper .flexbox3.voice.two div:last-child.boxtype_interview {
  width: calc(66.6% - 92px);
  padding-right: calc(33.3% - 30.6666666667px);
  margin-right: 0;
}
@media only screen and (max-width: 1104px) {
  .voice #main_wrapper .flexbox3.voice.two div:last-child.boxtype_interview,
  .voice_detail #main_wrapper .flexbox3.voice.two div:last-child.boxtype_interview {
    width: calc(50% - 23px);
  }
}
@media screen and (max-width: 864px) {
  .voice #main_wrapper .flexbox3.voice.two div:last-child.boxtype_interview,
  .voice_detail #main_wrapper .flexbox3.voice.two div:last-child.boxtype_interview {
    width: 100%;
    margin-bottom: 30px;
  }
}
.voice #main_wrapper .flexbox3.voice .boxtype_interview,
.voice_detail #main_wrapper .flexbox3.voice .boxtype_interview {
  min-width: 250px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 864px) {
  .voice #main_wrapper .flexbox3.voice .boxtype_interview,
  .voice_detail #main_wrapper .flexbox3.voice .boxtype_interview {
    margin-bottom: 30px;
  }
}
.voice #main_wrapper .flexbox3.voice .boxtype_interview.hide,
.voice_detail #main_wrapper .flexbox3.voice .boxtype_interview.hide {
  display: none;
}
.voice #main_photo_title_voice,
.voice_detail #main_photo_title_voice {
  position: relative;
  padding: 100px 0 0 0;
  width: calc(100% - 48px);
  margin: 0px 24px;
}
@media screen and (max-width: 864px) {
  .voice #main_photo_title_voice,
  .voice_detail #main_photo_title_voice {
    padding: 72px 0 0 0;
    width: 100%;
    margin: 0 auto;
  }
}
.voice #main_photo_title_voice #main_photo #main_photo_visual img,
.voice_detail #main_photo_title_voice #main_photo #main_photo_visual img {
  border-radius: 16px;
  aspect-ratio: 12/3;
}
@media screen and (max-width: 864px) {
  .voice #main_photo_title_voice #main_photo #main_photo_visual img,
  .voice_detail #main_photo_title_voice #main_photo #main_photo_visual img {
    border-radius: 0;
    aspect-ratio: 25/14;
  }
}
.voice #main_photo_title_voice #main_photo > .boxtype_interview.voice,
.voice_detail #main_photo_title_voice #main_photo > .boxtype_interview.voice {
  display: block;
  position: absolute;
  padding: 0;
  top: calc(100% - 190px);
  right: 5%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
@media screen and (max-width: 864px) {
  .voice #main_photo_title_voice #main_photo > .boxtype_interview.voice,
  .voice_detail #main_photo_title_voice #main_photo > .boxtype_interview.voice {
    position: relative;
    padding: 0 24px;
    bottom: auto;
    right: auto;
    -webkit-transform: none;
    transform: none;
  }
}
.voice #main_photo_title_voice #main_photo > .boxtype_interview.voice.non-title,
.voice_detail #main_photo_title_voice #main_photo > .boxtype_interview.voice.non-title {
  top: 100%;
}
.voice #main_photo_title_voice #footmark,
.voice_detail #main_photo_title_voice #footmark {
  -webkit-box-align: unset;
      -ms-flex-align: unset;
          align-items: unset;
  position: relative;
  float: right;
  padding: 20px;
}
.voice #main_photo_visual > h1.head_photo_voice p,
.voice_detail #main_photo_visual > h1.head_photo_voice p {
  position: absolute;
  bottom: 0;
  left: 48px;
  -webkit-transform: translate(0, 20%);
  transform: translate(0, 20%);
  color: #ffffff;
  font-weight: bold;
  font-size: 8rem;
  line-height: 0.8;
  text-shadow: 1px 1px 1px #999;
}
@media screen and (max-width: 864px) {
  .voice #main_photo_visual > h1.head_photo_voice p,
  .voice_detail #main_photo_visual > h1.head_photo_voice p {
    left: 24px;
    font-size: 6rem;
    line-height: 1;
  }
}
.voice #main_photo_visual > h1.head_photo_voice span,
.voice_detail #main_photo_visual > h1.head_photo_voice span {
  font-size: 4rem;
  margin-left: 70%;
  line-height: 1;
  display: inline-block;
  text-shadow: none;
}
@media screen and (max-width: 864px) {
  .voice #main_photo_visual > h1.head_photo_voice span,
  .voice_detail #main_photo_visual > h1.head_photo_voice span {
    font-size: 2rem;
    margin-left: 70%;
    line-height: 1;
  }
}
.voice #main_photo_visual > h1.head_photo_voice span.two_row,
.voice_detail #main_photo_visual > h1.head_photo_voice span.two_row {
  font-size: 1.5rem;
  font-weight: 600;
  margin-left: 110px;
  line-height: 1;
  display: inline-block;
}
.voice .boxtype_interview a,
.voice_detail .boxtype_interview a {
  display: inline-block;
}
.voice .boxtype_interview .type_index,
.voice_detail .boxtype_interview .type_index {
  display: inline-block;
  padding: 7px 10px;
  /* min-width: 140px; */
  font-weight: 600;
  font-size: 1.5rem;
  border: 1px solid #262520;
  background: #262520;
  border-radius: 10px 10px 0 0;
  color: #ffffff;
  text-align: center;
}
.voice .boxtype_interview .type_photo,
.voice_detail .boxtype_interview .type_photo {
  position: relative;
  border-radius: 16px 16px 16px 16px;
  border: 2px solid #262520;
  width: 100%;
  overflow: hidden;
}
.voice .boxtype_interview .type_photo .type_index,
.voice_detail .boxtype_interview .type_photo .type_index {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 10px 0 0 0;
}
.voice .boxtype_interview .type_photo img,
.voice_detail .boxtype_interview .type_photo img {
  max-width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 16/9;
}
.voice .boxtype_interview .type_text,
.voice_detail .boxtype_interview .type_text {
  display: block;
  border: 2px solid #262520;
  border-radius: 0 16px 16px 16px;
  padding: 15px 12px;
  width: 256px;
  background-color: #ffffff;
  margin-bottom: 0;
}
@media screen and (max-width: 864px) {
  .voice .boxtype_interview .type_text,
  .voice_detail .boxtype_interview .type_text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    width: 100%;
    margin-bottom: 70px;
  }
}
.voice .boxtype_interview .type_voice,
.voice_detail .boxtype_interview .type_voice {
  font-weight: 600;
  font-size: 2rem;
  margin-bottom: 20px;
}
.voice .boxtype_interview .type_voice br,
.voice_detail .boxtype_interview .type_voice br {
  display: none;
}
.voice .boxtype_interview .type_name,
.voice_detail .boxtype_interview .type_name {
  position: relative;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  font-weight: 600;
  font-size: 2.5rem;
}
.voice .boxtype_interview .type_dept,
.voice_detail .boxtype_interview .type_dept {
  position: relative;
  margin-bottom: 20px;
  font-size: 1.5rem;
  font-weight: 400;
}
.voice .boxtype_interview .type_text .type_dept,
.voice_detail .boxtype_interview .type_text .type_dept {
  margin-bottom: 0;
}
@media screen and (max-width: 864px) {
  .voice .boxtype_interview .type_text .type_dept,
  .voice_detail .boxtype_interview .type_text .type_dept {
    margin-left: 20px;
  }
}
.voice .boxtype_interview .section_boder,
.voice_detail .boxtype_interview .section_boder {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.voice .voice_photo img,
.voice_detail .voice_photo img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 25/14;
}
@media screen and (max-width: 864px) {
  .voice .voice_photo img,
  .voice_detail .voice_photo img {
    aspect-ratio: 25/14;
  }
}
.voice .voice_white_box,
.voice_detail .voice_white_box {
  position: relative;
  background-color: #ffffff;
  padding: 60px;
  border-radius: 16px;
}
@media screen and (max-width: 864px) {
  .voice .voice_white_box,
  .voice_detail .voice_white_box {
    padding: 20px;
  }
  .voice .voice_white_box .flex2_5050.img_ct02,
  .voice_detail .voice_white_box .flex2_5050.img_ct02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .voice .voice_white_box .flex2_5050.img_ct02 > *,
  .voice_detail .voice_white_box .flex2_5050.img_ct02 > * {
    width: calc(50% - 10px);
  }
  .voice .voice_white_box .flex2_5050.img_ct02 div:nth-child(odd),
  .voice_detail .voice_white_box .flex2_5050.img_ct02 div:nth-child(odd) {
    padding-right: 20px;
  }
  .voice .voice_white_box .flex2_5050.img_ct02 div:nth-child(even),
  .voice_detail .voice_white_box .flex2_5050.img_ct02 div:nth-child(even) {
    padding-left: 20px;
  }
}
.voice .voice_white_box img,
.voice_detail .voice_white_box img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 5/3;
}
@media screen and (max-width: 864px) {
  .voice .voice_white_box img,
  .voice_detail .voice_white_box img {
    aspect-ratio: 10/7;
  }
}
.voice .voice_photo_message img,
.voice_detail .voice_photo_message img {
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 8/5;
}
@media screen and (max-width: 864px) {
  .voice .voice_photo_message img,
  .voice_detail .voice_photo_message img {
    aspect-ratio: 10/9;
  }
}

.entry_tab_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.entry_tab_list li {
  width: calc(25% - 2.3333333333px);
}
@media screen and (max-width: 864px) {
  .entry_tab_list li {
    width: 100%;
  }
  .entry_tab_list li + li {
    margin-top: 1px;
  }
}
.entry_tab_list li > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px;
  color: #ffffff;
  background-color: #484741;
  border-radius: 16px 16px 0 0;
}
@media screen and (max-width: 864px) {
  .entry_tab_list li > a {
    padding: 10px 20px;
    border-radius: 0;
  }
}
.entry_tab_list li > a:hover {
  background-color: #262520;
}
.entry_tab_list li > a em {
  font-size: 20px;
  font-weight: 500;
}
.entry_tab_list li.is-active a {
  position: relative;
  color: #262520;
  background-color: #ffffff;
  pointer-events: none;
  font-size: 1.2em;
}
@media screen and (max-width: 864px) {
  .entry_tab_list li.is-active a {
    padding: 10px 20px 20px;
  }
}
.entry_tab_list li.is-active a em {
  font-size: 1.5em;
  font-weight: 600;
}
.entry_tab_list li.is-active a:after {
  content: "keyboard_arrow_down";
  font-family: "Material Symbols";
  font-weight: 200;
  font-weight: 600;
  font-size: 2em;
  display: block;
  position: absolute;
  bottom: -20px;
}
@media screen and (max-width: 864px) {
  .entry_tab_list li.is-active a:after {
    bottom: -10px;
  }
}
.entry_tab_list + .b_c_white {
  padding-bottom: 40px;
}
@media screen and (max-width: 864px) {
  .entry_tab_list + .b_c_white {
    padding-bottom: 20px;
  }
}
.entry_submission_list {
  position: relative;
  width: -webkit-fill-available;
  width: -moz-available;
  width: stretch;
  margin: 30px -10px;
  padding: 28px 24px 18px;
  border: 1px solid #c9bbb5;
  border-radius: 16px;
}
@media screen and (max-width: 864px) {
  .entry_submission_list {
    padding: 28px 10px 18px;
  }
}
.entry_submission_list > .__title {
  position: absolute;
  top: -24px;
  left: 16px;
  padding: 10px 16px;
  font-size: 1.8rem;
  color: #484741;
  background-color: #ffffff;
  font-weight: bold;
}
@media screen and (max-width: 864px) {
  .entry_submission_list > .__title {
    padding: 10px 5px;
  }
}
.entry_submission_list ol {
  margin-bottom: 1em;
}
.entry_submission_list ol li {
  margin-bottom: 0em;
  font-weight: bold;
  padding-right: 1em;
  font-size: 1.25em;
}
.entry_submission_list ul.format_list {
  margin: 5px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.entry_submission_list ul.format_list li {
  margin: 0 10px 5px 0;
}
@media screen and (max-width: 864px) {
  .entry_submission_list ul.format_list li {
    width: 100%;
  }
}
.entry_submission_list ul.format_list li a {
  border: 1px solid #1c6ecd;
  padding: 0.5em 1em;
  border-radius: 8px;
  color: #1c6ecd;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
}
.entry_submission_list ul.format_list li a:hover {
  background: rgba(28, 110, 205, 0.1);
}
.entry_submission_list ul.format_list li a em.__title {
  position: relative;
  padding-left: 1.5em;
}
.entry_submission_list ul.format_list li a em.__title:before {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "download";
  font-family: "Material Symbols";
  font-weight: 200;
  font-size: 1.5em;
}
.entry_submission_list ul.format_list li a span.__dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.entry_submission_list ul.format_list li a span.__dl span {
  display: inline-block;
  margin: 0 0.25em;
  background: rgba(28, 110, 205, 0.1);
  font-weight: normal;
  font-size: 10px;
  padding: 0.1em 0.5em;
  border-radius: 16px;
}
.entry_submission_list ul.note_list > li {
  padding-left: 1.25em;
  position: relative;
}
.entry_submission_list ul.note_list > li:before {
  content: "※";
  position: absolute;
  left: 0;
}
.entry_mail_list dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.entry_mail_list dl dt {
  background-color: #262520;
  color: #ffffff;
  padding: 0.5em 1em;
  border-radius: 8px;
}
.entry_mail_list dl dd a {
  padding: 0 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 864px) {
  .entry_mail_list dl dd a {
    padding: 0;
  }
}
.entry_mail_list dl dd a em {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.entry_mail_list dl dd a em:after {
  content: "mail";
  font-family: "Material Symbols";
  font-weight: 200;
  font-size: 1.5em;
}
@media screen and (max-width: 864px) {
  .entry_mail_list dl dd a em {
    margin: 5px 0 -5px 5px;
  }
}
.entry_mail_list dl dd a span {
  font-weight: bold;
  font-size: 1.25em;
  padding: 0 0.25em;
}
.entry_mail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 2em;
  position: relative;
}
.entry_mail:before {
  position: absolute;
  left: 0;
  font-size: 1.5em;
}
.entry_mail:hover {
  color: #1c6ecd;
  opacity: 0.75;
}
.entry_mail:before {
  content: "mail";
  font-family: "Material Symbols";
  font-weight: 200;
}
.entry_tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 2em;
  position: relative;
}
.entry_tel:before {
  position: absolute;
  left: 0;
  font-size: 1.5em;
}
.entry_tel:hover {
  color: #1c6ecd;
  opacity: 0.75;
}
.entry_tel:before {
  content: "phone";
  font-family: "Material Symbols";
  font-weight: 200;
}

/*===== ■5. Table Style =====*/
.tbl_length {
  width: calc(100% - 150px);
  border: none;
}
.tbl_length th {
  width: 25%;
  padding: 20px 0;
  font-size: 2rem;
  font-weight: 600;
  line-height: 2;
}
.tbl_length td {
  width: 75%;
  padding: 20px 40px 20px 0;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 2;
}
.tbl_length th,
.tbl_length td {
  border-bottom: 1px solid #dfdbda;
}
.tbl_length a {
  color: #065fd4;
  text-decoration: underline;
}
.tbl_length td.preline {
  word-break: keep-all;
}
.tbl_length td.tabspace_120 p, .tbl_length td.tabspace_160 p {
  display: block;
}
.tbl_length td.tabspace_120 .item {
  display: inline-block;
  width: 120px;
}
.tbl_length td.tabspace_160 .item {
  display: inline-block;
  width: 160px;
}

#non_switchbox h3 {
  padding: 10px 0;
  border-bottom: 1px solid #dfdbda;
}
#non_switchbox .tbl_length.career {
  width: calc(100% - 40px);
  margin-left: 40px;
}
@media screen and (max-width: 864px) {
  #non_switchbox .tbl_length.career {
    width: calc(100% - 20px);
    margin-left: 20px;
  }
}
#non_switchbox .tbl_length.career th,
#non_switchbox .tbl_length.career td {
  padding: 10px 0;
  line-height: 1.6;
}
@media screen and (max-width: 864px) {
  #non_switchbox .tbl_length.career th {
    padding-bottom: 0;
    font-size: 1.6rem;
  }
  #non_switchbox .tbl_length.career td {
    padding-top: 0px;
  }
}

@media screen and (max-width: 864px) {
  .tbl_length {
    width: calc(100% - 40px);
  }
  .tbl_length th {
    clear: both;
    display: block;
    width: 100%;
    padding: 20px 0 0 0;
    border-bottom: none;
  }
  .tbl_length td {
    display: block;
    width: 100%;
    padding: 0 0px 20px 0;
    line-height: 1.6;
  }
  .tbl_length td.tabspace_120 p, .tbl_length td.tabspace_160 p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
/*===== 13. Accordion Menu =====*/
#switchbox {
  width: calc(100% - 150px);
}
@media screen and (max-width: 864px) {
  #switchbox {
    width: calc(100% - 40px);
  }
}
#switchbox input {
  display: none;
}
#switchbox label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  padding: 10px 40px 10px 20px;
  font-size: 2.5rem;
  font-weight: 600;
  border-bottom: 1px solid #dfdbda;
  cursor: pointer;
}
@media screen and (max-width: 864px) {
  #switchbox label {
    font-size: 2rem;
    padding: 10px 40px 10px 10px;
  }
}
#switchbox label > span {
  font-size: 0.75em;
}
@media screen and (max-width: 864px) {
  #switchbox label > span {
    display: block;
  }
}
#switchbox label:hover {
  background: rgba(223, 219, 218, 0.25);
}
#switchbox label:active {
  background: #ffffff;
}
#switchbox label::after {
  position: absolute;
  top: 48%;
  right: 12px;
  width: 12px;
  height: 12px;
  border-top: 2px solid #262520;
  border-left: 2px solid #262520;
  -webkit-transform: translateX(-50%) translateY(-50%) rotate(-135deg);
          transform: translateX(-50%) translateY(-50%) rotate(-135deg);
  content: "";
}
#switchbox table.career {
  display: none;
  -webkit-transition: 0.1s;
  transition: 0.1s;
  opacity: 0;
  width: calc(100% - 40px);
  margin-left: 40px;
}
@media screen and (max-width: 864px) {
  #switchbox table.career {
    width: calc(100% - 20px);
    margin-left: 20px;
  }
}
#switchbox table.career th,
#switchbox table.career td {
  padding: 10px 0;
  line-height: 1.6;
}
@media screen and (max-width: 864px) {
  #switchbox table.career th {
    padding-bottom: 0;
    font-size: 1.6rem;
  }
  #switchbox table.career td {
    padding-top: 0px;
  }
}
#switchbox input:checked + label::after {
  right: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#switchbox input:checked + label + table.career {
  display: table;
  border-top: none;
  opacity: 1;
}

/*===== recruit_flow =====*/
.recruit_flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.recruit_flow p {
  width: calc(12.5% - 30px);
  max-width: 80px;
  min-width: 80px;
  height: 380px;
  margin-bottom: 20px;
  text-align: center;
  padding: 10px 10px 15px 10px;
  color: #262520;
  background-color: #ffffff;
  border: 2px solid #828181;
  border-radius: 16px;
}
.recruit_flow .stepno {
  display: inline-block;
  padding-bottom: 10px;
  font-size: 1.5rem;
  font-weight: 700;
}
.recruit_flow .stepitem {
  display: inline-block;
  padding-top: 10px;
  width: 2.5rem;
  font-size: 2rem;
  font-weight: 700;
}
.recruit_flow p:last-child {
  color: #ffffff;
  background-color: #828181;
}
.recruit_flow .stepborder {
  border-bottom: 1px solid #828181;
}
.recruit_flow p:last-child .stepborder {
  border-bottom: 1px solid #ffffff;
}
.recruit_flow .steparrow {
  display: block;
  width: 10px;
  height: 10px;
  margin: auto 10px;
  border-top: solid 2px #262520;
  border-right: solid 2px #262520;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

@media screen and (max-width: 864px) {
  .recruit_flow {
    display: block;
    width: calc(100% - 40px);
  }
  .recruit_flow p {
    max-width: initial;
    max-width: auto;
    min-width: initial;
    min-width: auto;
    width: 100%;
    height: auto;
    padding: 16px 0 12px 0;
  }
  .recruit_flow .stepno {
    padding-bottom: 0;
    font-size: 1.5rem;
  }
  .recruit_flow .stepitem {
    width: auto;
    padding-top: 0;
    font-size: 2rem;
  }
  .recruit_flow .steparrow {
    display: block;
    width: 10px;
    height: 10px;
    margin: 10px auto;
    border-top: solid 2px #262520;
    border-right: solid 2px #262520;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
}
.tokyo .map_title,
.osaka .map_title,
.nagoya .map_title {
  font-size: 1.25em;
  margin-bottom: 0.75em;
  font-weight: bold;
  padding-left: 1.75em;
  position: relative;
}
.tokyo .map_title em:before,
.osaka .map_title em:before,
.nagoya .map_title em:before {
  content: "train";
  font-family: "Material Symbols";
  font-weight: 200;
  font-size: 2em;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.tokyo .map_title .yamanote,
.tokyo .map_title .toyama,
.tokyo .map_title .meijo,
.osaka .map_title .yamanote,
.osaka .map_title .toyama,
.osaka .map_title .meijo,
.nagoya .map_title .yamanote,
.nagoya .map_title .toyama,
.nagoya .map_title .meijo {
  display: inline-block;
  padding: 0.25em 0.75em;
  margin: 0 0.25em;
  background-color: #80c342;
  color: #fff;
  border-radius: 50px;
}
.tokyo .map_title .yamanote,
.osaka .map_title .yamanote,
.nagoya .map_title .yamanote {
  background-color: #80c342;
}
.tokyo .map_title .toyama,
.osaka .map_title .toyama,
.nagoya .map_title .toyama {
  background-color: #fab123;
}
.tokyo .map_title .meijo,
.osaka .map_title .meijo,
.nagoya .map_title .meijo {
  background-color: #b074d6;
}
.tokyo .map_list > ul,
.osaka .map_list > ul,
.nagoya .map_list > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.tokyo .map_list > ul > li,
.osaka .map_list > ul > li,
.nagoya .map_list > ul > li {
  width: calc(50% - 5px);
  background-color: #ffffff;
  border-radius: 16px;
}
.tokyo .map_list > ul > li:nth-child(n+3),
.osaka .map_list > ul > li:nth-child(n+3),
.nagoya .map_list > ul > li:nth-child(n+3) {
  margin-top: 10px;
}
.tokyo .map_list > ul > li .text,
.osaka .map_list > ul > li .text,
.nagoya .map_list > ul > li .text {
  position: relative;
  padding: 10px 10px 8px;
}
.tokyo .map_list > ul > li .text_line li,
.osaka .map_list > ul > li .text_line li,
.nagoya .map_list > ul > li .text_line li {
  display: inline-block;
  padding: 0.25em 0.75em 0.2em;
  margin: 0 0 0.25em;
  color: #fff;
  border-radius: 50px;
}
.tokyo .map_list > ul > li .text_line li.nagabori,
.osaka .map_list > ul > li .text_line li.nagabori,
.nagoya .map_list > ul > li .text_line li.nagabori {
  background-color: #a9cc51;
}
.tokyo .map_list > ul > li .text_line li.jr_tozai,
.osaka .map_list > ul > li .text_line li.jr_tozai,
.nagoya .map_list > ul > li .text_line li.jr_tozai {
  background-color: rgb(210, 70, 133.2258064516);
}
.tokyo .map_list > ul > li .text_line li.jr_kanjo,
.osaka .map_list > ul > li .text_line li.jr_kanjo,
.nagoya .map_list > ul > li .text_line li.jr_kanjo {
  background-color: rgb(208.8, 23.2, 23.2);
}
.tokyo .map_list > ul > li .text_line li.keihan,
.osaka .map_list > ul > li .text_line li.keihan,
.nagoya .map_list > ul > li .text_line li.keihan {
  background-color: #66cc33;
}
.tokyo .map_list > ul > li .text_line li.toyama,
.osaka .map_list > ul > li .text_line li.toyama,
.nagoya .map_list > ul > li .text_line li.toyama {
  background-color: #fab123;
}
.tokyo .map_list > ul > li .text_detail,
.osaka .map_list > ul > li .text_detail,
.nagoya .map_list > ul > li .text_detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 865px) {
  .tokyo .map_list > ul > li .text_detail,
  .osaka .map_list > ul > li .text_detail,
  .nagoya .map_list > ul > li .text_detail {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.tokyo .map_list > ul > li .text_detail,
.osaka .map_list > ul > li .text_detail,
.nagoya .map_list > ul > li .text_detail {
  line-height: 1.2;
  padding: 0.25em 0 0;
}
.tokyo .map_list > ul > li .text_detail .station,
.osaka .map_list > ul > li .text_detail .station,
.nagoya .map_list > ul > li .text_detail .station {
  display: block;
}
@media screen and (min-width: 865px) {
  .tokyo .map_list > ul > li .text_detail .station,
  .osaka .map_list > ul > li .text_detail .station,
  .nagoya .map_list > ul > li .text_detail .station {
    width: 100%;
    margin-bottom: 0.25em;
  }
}
.tokyo .map_list > ul > li .text_detail .station em,
.osaka .map_list > ul > li .text_detail .station em,
.nagoya .map_list > ul > li .text_detail .station em {
  display: inline-block;
  font-weight: bold;
  font-size: 1.25em;
  margin-right: 0.25em;
}
.tokyo .map_list > ul > li .text_detail .time,
.osaka .map_list > ul > li .text_detail .time,
.nagoya .map_list > ul > li .text_detail .time {
  margin-left: auto;
  margin-right: 0;
  line-height: 1.5;
}
.tokyo .map_list > ul > li .text_detail .time .border,
.osaka .map_list > ul > li .text_detail .time .border,
.nagoya .map_list > ul > li .text_detail .time .border {
  display: inline-block;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, rgb(255, 237.2388059701, 150)), color-stop(90%, rgb(255, 237.2388059701, 150)), color-stop(90%, transparent));
  background: linear-gradient(transparent 50%, rgb(255, 237.2388059701, 150) 50%, rgb(255, 237.2388059701, 150) 90%, transparent 90%);
}
.tokyo .map_list > ul > li .text_detail .time em,
.tokyo .map_list > ul > li .text_detail .time span,
.osaka .map_list > ul > li .text_detail .time em,
.osaka .map_list > ul > li .text_detail .time span,
.nagoya .map_list > ul > li .text_detail .time em,
.nagoya .map_list > ul > li .text_detail .time span {
  font-weight: bold;
}
.tokyo .map_list > ul > li .text_detail .time em,
.osaka .map_list > ul > li .text_detail .time em,
.nagoya .map_list > ul > li .text_detail .time em {
  font-size: 2em;
  display: inline-block;
  margin: 0 0.1em 0 0.2em;
  line-height: 1;
}
.tokyo .map_list > ul > li .text_detail .time span,
.osaka .map_list > ul > li .text_detail .time span,
.nagoya .map_list > ul > li .text_detail .time span {
  font-size: 1.5em;
}
.tokyo .map_list + .map_title,
.osaka .map_list + .map_title,
.nagoya .map_list + .map_title {
  margin-top: 1.5em;
}
.tokyo .map_image,
.osaka .map_image,
.nagoya .map_image {
  background-color: #ffffff;
  background-image: radial-gradient(circle, #f5f5f5 1.5px, transparent 1.5px);
  background-position: 0 0;
  background-size: 13px 13px;
}
.tokyo .map_tips,
.osaka .map_tips,
.nagoya .map_tips {
  position: relative;
}
.tokyo .map_tips .image,
.osaka .map_tips .image,
.nagoya .map_tips .image {
  width: 100px;
  height: 100px;
  margin-left: auto;
}
.tokyo .map_tips span,
.osaka .map_tips span,
.nagoya .map_tips span {
  background-color: #262520;
  color: #ffffff;
  display: inline-block;
  position: absolute;
  padding: 0.25em 0.75em;
  border-radius: 16px 16px 0 16px;
  font-size: 14px;
  right: 100px;
  top: 0px;
}
.tokyo .map_tips_list,
.osaka .map_tips_list,
.nagoya .map_tips_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: -50px;
}
.tokyo .map_tips_list .image,
.osaka .map_tips_list .image,
.nagoya .map_tips_list .image {
  margin-left: 0;
}

.tokyo .map_list > ul > li .text {
  position: relative;
  min-height: 140px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 10px 20px 10px 130px;
}
@media screen and (max-width: 864px) {
  .tokyo .map_list > ul > li .text {
    padding-left: 75px;
    min-height: 70px;
  }
}
.tokyo .map_list > ul > li .text:before {
  display: block;
  position: absolute;
  left: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 120px;
  height: 120px;
  content: "";
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 864px) {
  .tokyo .map_list > ul > li .text:before {
    width: 70px;
    height: 70px;
    left: 5px;
  }
}
@media screen and (max-width: 864px) {
  .tokyo .map_list > ul > li .text .time em {
    margin-left: 0;
  }
}
.tokyo .map_list > ul > li p {
  width: calc(100% - 50px);
  padding: 1em;
}
.tokyo .map_list > ul > li.ikebukuro .text:before {
  background-image: url(/recruit/assets/img/location/tokyo/tokyo_ikebukuro.webp);
}
.tokyo .map_list > ul > li.ueno .text:before {
  background-image: url(/recruit/assets/img/location/tokyo/tokyo_ueno.webp);
}
.tokyo .map_list > ul > li.shibuya .text:before {
  background-image: url(/recruit/assets/img/location/tokyo/tokyo_shibuya.webp);
}
.tokyo .map_list > ul > li.eki .text:before {
  background-image: url(/recruit/assets/img/location/tokyo/tokyo_eki.webp);
}

.nagoya .map_list > ul > li .text {
  padding: 10px 20px 8px;
}
.nagoya .map_list > ul > li .text_detail {
  padding: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.nagoya .map_list > ul > li .text_detail .station {
  width: auto;
}

.osaka .flexbox2_wide:has(.map) {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.benefits .count_number {
  font-weight: bold;
  display: inline-block;
}
.benefits .workstyle_white_box_np.flexbox3_block > div:last-child .workstyle_logo_black_box {
  border-radius: 1px 1px 5px 1px;
}
@media screen and (min-width: 865px) {
  .benefits .workstyle_white_box_np.flexbox3_block > div:last-child .workstyle_logo_black_box {
    left: -17px;
  }
}
/*# sourceMappingURL=style.css.map */