  @charset "UTF-8";
/* 
  css設定 @charsetが消されるsass仕様へのハック用コメントです。削除しないでください。新規作成時も必須！
 */
/*==================================================================================
 common
==================================================================================*/
html {
  font-size: .26666667vw;
}

.allWrap {
  padding-top: 60rem;
}

main {
  padding-bottom: 60rem;
}

.commonNavis01 {
  flex-direction: column;
  justify-content: normal;
  gap: 0 0;
  border-top: 1rem solid rgba(34, 34, 34, 0.15);
}
.commonNavis01 .links {
  flex: 0 0 auto;
}
.commonNavis01 .links ul {
  gap: 0 0;
  display: none;
}
.commonNavis01 .links ul li {
  border-bottom: 1rem solid rgba(34, 34, 34, 0.15);
}
.commonNavis01 .links ul a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10rem 22rem;
  font-weight: 300;
  background: #fff;
}
.commonNavis01 .links ul a:after {
  content: '';
  display: block;
  position: relative;
  width: 14rem;
  height: 10rem;
  background: url("/recruit/graduate/ir/library/2026/static/img/common/icon-arrow01.svg") no-repeat center center;
  background-size: 100% 100%;
}
.commonNavis01 .linksName {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin-bottom: 0;
  padding: 0 22rem;
  height: 48rem;
  border-bottom-color: rgba(34, 34, 34, 0.15) !important;
  font-size: 16rem;
  font-weight: 300;
}
.commonNavis01 .linksName:after {
  content: '';
  display: block;
  position: relative;
  width: 13rem;
  height: 13rem;
  background: url("/recruit/graduate/ir/library/2026/static/img/common/icon-plus.svg") no-repeat center center;
  background-size: 100% 100%;
}
.commonNavis01 .linksName.open:after {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/common/icon-minus.svg");
  background-size: 100% auto;
}

.commonButton01 {
  padding-top: 50rem;
  width: 300rem;
}
.commonButton01 a {
  padding: 20rem 10rem;
  font-size: 18rem;
}

.commonButton02 {
  padding-top: 60rem;
}
.commonButton02 a {
  box-sizing: border-box;
  padding-top: 12rem;
  padding-bottom: 12rem;
  height: auto;
  min-height: 50rem;
  line-height: 24rem;
}

.siteHeader .externalLinks,
.siteFooter .externalLinks {
  flex-direction: column;
  gap: 20rem 0;
}

/*==================================================================================
 siteHeader
==================================================================================*/
.siteHeader {
  padding: 0 0 0 13rem;
  height: 60rem;
}
.siteHeader .headerLogo {
  width: 282rem;
}
.siteHeader .menuButton {
  top: 10rem;
  right: 10rem;
  width: 40rem;
  height: 40rem;
}
.siteHeader .menuButton span {
  left: 9rem;
  width: 22rem;
}
.siteHeader .menuButton span:first-of-type {
  top: 17rem;
}
.siteHeader .menuButton span:last-of-type {
  top: 23rem;
}
.siteHeader .menuButton.open span:first-of-type {
  top: 20rem;
}
.siteHeader .menuButton.open span:last-of-type {
  top: 20rem;
}
.siteHeader .globalNaviArea {
  justify-content: normal;
  padding: 60rem 0 30rem;
}
.siteHeader .globalNavi {
  padding: 0 0;
  border-top-color: rgba(255, 255, 255, 0.25);
}
.siteHeader .globalNavi ul:not(.externalLinks) li {
  border-bottom-color: rgba(255, 255, 255, 0.25);
}
.siteHeader .globalNavi ul:not(.externalLinks) a {
  color: #666 !important;
}
.siteHeader .globalNavi ul:not(.externalLinks) a:after {
  opacity: .5;
}
.siteHeader .globalNavi .linksName {
  border-bottom-color: rgba(255, 255, 255, 0.25) !important;
}
.siteHeader .globalNavi .linksName:after {
  filter: brightness(0) invert(1);
}
.siteHeader .externalLinks {
  padding: 30rem 22rem 0;
}
.siteHeader .externalLinks a {
  color: #fff;
}
.siteHeader .externalLinks a:after {
  filter: brightness(0) invert(1);
}

/*==================================================================================
 siteFooter
==================================================================================*/
.siteFooter {
  padding: 0 0 26rem;
}
.siteFooter .footerNavi {
  padding-bottom: 30rem;
}
.siteFooter .bottomArea {
  flex-direction: column;
  align-items: normal;
  justify-content: normal;
  gap: 13rem 0;
  padding: 0 22rem;
}
.siteFooter .bottomArea .logoArea {
  flex-direction: column;
  align-items: normal;
  gap: 55rem 0;
}
.siteFooter .bottomArea .logoArea .logo {
  flex: 0 0 auto;
  width: 120rem;
}
.siteFooter .bottomArea .logoArea .externalLinks {
  order: -1;
}
.siteFooter .bottomArea .copyright {
  flex: 0 0 auto;
  width: 321rem;
}

/*==================================================================================
 top
==================================================================================*/
#top section.intro {
  padding-bottom: 0;
}
#top section.intro .reportDownloadButton {
  right: calc(50% - 90rem);
  bottom: -100rem;
  width: 180rem;
}
#top section.message h3 {
  top: 185rem;
  width: 236rem;
}
#top section.message .text01 {
  top: 289rem;
  left: 22rem;
  font-size: 17rem;
}
#top section.message .text02 {
  top: 325rem;
  left: 22rem;
  font-size: 14rem;
}
#top section.message .image {
  padding-left: 0;
}
#top section.contents {
  padding-top: 60rem;
}
#top section.contents h3 {
  width: 250rem;
}
#top section.contents .contentsLinks {
  flex-wrap: wrap;
  margin-bottom: 60rem;
}
#top section.contents .contentsLinks div {
  line-height: 1;
}
#top section.contents .contentsLinks .links {
  flex: 0 0 187.5rem !important;
  padding: 49rem 0 0 18rem;
  height: 360rem;
}
#top section.contents .contentsLinks .links:before {
  border-top-width: 26rem;
  border-left-width: 26rem;
}
#top section.contents .contentsLinks .links:after {
  height: 260rem;
  background-size: 187.5rem auto;
}
#top section.contents .contentsLinks .links .linksName {
  margin-bottom: 40rem;
  font-size: 17rem;
}
#top section.contents .contentsLinks .links .linksName:before {
  display: none;
}
#top section.contents .contentsLinks .links .linksName .en {
  padding-top: 12rem;
  height: 12rem;
}
#top section.contents .contentsLinks .links ul {
  position: relative;
  margin-right: 0;
  border-top: 1rem solid rgba(255, 255, 255, 0.25);
  z-index: 2;
  pointer-events: none;
  opacity: 0;
}
#top section.contents .contentsLinks .links ul li {
  border-bottom: 1rem solid rgba(255, 255, 255, 0.25);
}
#top section.contents .contentsLinks .links ul a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20rem;
  height: 38rem;
  line-height: 1;
  font-size: 14rem;
  font-weight: 300;
  color: #fff;
}
#top section.contents .contentsLinks .links ul a:after {
  content: '';
  display: block;
  position: relative;
  width: 14rem;
  height: 10rem;
  background: url("/recruit/graduate/ir/library/2026/static/img/common/icon-arrow01.svg") no-repeat center center;
  background-size: 100% 100%;
  filter: brightness(0) invert(1);
}
#top section.contents .contentsLinks .links .icon {
  right: 9rem;
  bottom: 9rem;
  left: auto;
  width: 35rem;
  height: 35rem;
}
#top section.contents .contentsLinks .links .icon span {
  position: absolute;
}
#top section.contents .contentsLinks .links .icon span:first-child {
  top: 17rem;
  left: 13rem;
  width: 9rem;
  height: 1rem;
}
#top section.contents .contentsLinks .links .icon span:last-child {
  top: 13rem;
  left: 17rem;
  width: 1rem;
  height: 9rem;
}
#top section.contents .contentsLinks .links01:after {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/sp/top/contents-value-bg.png");
}
#top section.contents .contentsLinks .links02:after {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/sp/top/contents-management-bg.png");
}
#top section.contents .contentsLinks .links03:after {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/sp/top/contents-business-bg.png");
}
#top section.contents .contentsLinks .links04:after {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/sp/top/contents-sustainability-bg.png");
}
#top section.contents .contentsLinks .links05:after {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/sp/top/contents-financial-bg.png");
}
#top section.contents .contentsLinks .links06:after {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/sp/top/contents-corporate-bg.png");
}
#top section.contents .contentsLinks.contentsOpen .links:not(.open):after {
  opacity: 1;
}
#top section.contents .contentsLinks.contentsOpen .links.open:after {
  opacity: 1;
  filter: none;
}
#top section.contents .contentsLinks.contentsOpen .links.open .icon {
  transform: none;
}
#top section.contents .contentsLinks.contentsOpen .links.open ul {
  animation: none;
}
#top section.contents .contentsLinks .fixedContentsLinks {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 45rem 30rem;
  height: auto;
  overflow: auto;
  z-index: 100;
}
#top section.contents .contentsLinks .fixedContentsLinks:before, #top section.contents .contentsLinks .fixedContentsLinks:after {
  display: none;
}
#top section.contents .contentsLinks .fixedContentsLinks ul {
  opacity: 1;
}
#top section.contents .contentsLinks .fixedContentsLinks ul a {
  pointer-events: all;
}
#top section.contents .contentsLinks .fixedContentsLinks .icon {
  position: fixed;
  top: 9rem;
  bottom: auto;
  transform: rotate(45deg);
}
#top section.contents section.waterkeepers {
  padding-bottom: 60rem;
}
#top section.contents section.waterkeepers > header {
  margin: auto;
  padding-bottom: 25rem;
  width: 348rem;
}
#top section.contents section.waterkeepers > header h4 {
  padding-bottom: 20rem;
  width: auto;
}
#top section.contents section.waterkeepers > header .lead {
  text-align: left;
  font-size: 14rem;
}
#top section.contents section.waterkeepers > header .lead br {
  display: none;
}
#top section.contents section.waterkeepers .banners {
  flex-direction: column;
  justify-content: normal;
  gap: 20rem 0;
}
#top section.contents section.waterkeepers .banners li {
  flex: 0 0 auto;
}
#top section.contents section.waterkeepers .banners li a .name {
  padding: 7rem 11rem;
  font-size: 20rem;
}
#top section.contents .otherLinks {
  flex-direction: column;
  justify-content: normal;
  gap: 10rem 0;
}
#top section.contents .otherLinks li {
  flex: 0 0 auto;
}

/*==================================================================================
 lower common
==================================================================================*/
.lower .commonText32 {
  font-size: 22rem;
}
.lower .commonText26 {
  font-size: 21rem;
}
.lower .commonText22 {
  font-size: 20rem;
}
.lower .commonText22 {
  font-size: 19rem;
}
.lower .commonText20 {
  font-size: 18rem;
}
.lower .commonText18 {
  font-size: 17rem;
}
.lower .commonNameCaption01 span {
  font-size: 16rem;
}
.lower .commonNameCaption01 .position {
  padding: 3rem 8rem;
}
.lower .breadCrumnbs {
  gap: 0 10rem;
  padding: 10rem 16rem;
  height: auto;
}
.lower .breadCrumnbs span,
.lower .breadCrumnbs a {
  font-size: 9rem;
}
.lower .breadCrumnbs .arrow {
  width: 4rem;
  height: 4rem;
  border-top-width: 1rem;
  border-right-width: 1rem;
}
.lower .commonNameArea01 {
  padding-left: 12rem;
  border-left-width: 2rem;
}
.lower .commonNameArea01 .position {
  top: -2rem;
  padding-bottom: 8rem;
  font-size: 12rem;
}
.lower .commonNameArea01 .name {
  font-size: 18rem;
}
.lower .commonScrollArea01 {
  margin-left: 15rem;
  padding: 0 15rem 10rem 0;
}
.lower .commonScrollArea01.fixedWidth2200 img {
  width: 1700rem;
}
.lower .commonScrollArea01.fixedWidth2100 img {
  width: 1600rem;
}
.lower .commonScrollArea01.fixedWidth2000 img {
  width: 1500rem;
}
.lower .commonScrollArea01.fixedWidth1900 img {
  width: 140rem;
}
.lower .commonScrollArea01.fixedWidth1800 img {
  width: 1300rem;
}
.lower .commonScrollArea01.fixedWidth1700 img {
  width: 120rem;
}
.lower .commonScrollArea01.fixedWidth1600 img {
  width: 1100rem;
}
.lower .commonScrollArea01.fixedWidth1500 img {
  width: 1000rem;
}
.lower .commonBgSection01 {
  padding: 40rem 0;
}
.lower .commonBgSection02 {
  padding: 20rem;
}
.lower .commonLinkedPages {
  margin-top: 60rem;
  padding-top: 30rem;
}
.lower .commonLinkedPages li {
  flex: 0 0 47%;
}
.lower .commonLinkedPages li.disabled {
  opacity: 0;
}
.lower .commonLinkedPages li.disabled a {
  pointer-events: none;
}
.lower .commonLinkedPages a {
  display: flex;
  align-items: center;
  gap: 0 25rem;
}
.lower .commonLinkedPages a span {
  display: block;
  line-height: 1;
  font-size: 16rem;
}
.lower .commonLinkedPages a .button {
  flex: 0 0 120rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 15rem;
  position: relative;
  height: 50rem;
  color: #fff;
  background: #222;
}
.lower .commonLinkedPages a .button:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  border-right: 12rem solid #fff;
  border-bottom: 12rem solid transparent;
}
.lower .commonLinkedPages a .button:after {
  content: '';
  display: block;
  position: relative;
  width: 16rem;
  height: 16rem;
  background: url("/recruit/graduate/ir/library/2026/static/img/common/icon-arrow02.svg") no-repeat center center;
  background-size: 100% 100%;
}
.lower .commonLinkedPages a .text {
  display: none;
}
.lower .commonTitle01 {
  gap: 0 8rem;
  padding-bottom: 40rem;
  font-size: 18rem;
}
.lower .commonTitle01:before {
  width: 22rem;
  height: 22rem;
}
.lower .commonTitle02 {
  margin-bottom: 30rem;
  padding: 8rem 8rem 8rem 25rem;
  font-size: 20rem;
}
.lower .commonTitle02:before {
  width: 15rem;
  height: 47rem;
}
.lower .commonTitle03 {
  margin-bottom: 15rem;
  padding: 8rem 10rem;
  border-left-width: 3rem;
  font-size: 18rem;
}
.lower .commonTitle03.pattern02 {
  padding: 8rem 12rem;
  font-size: 16rem;
}
.lower .commonTitle04 {
  margin-bottom: 30rem;
  padding: 4rem 0 0 22rem;
  font-size: 26rem;
}
.lower .commonTitle04:before {
  width: 13rem;
  height: 40rem;
}
.lower .commonTitle04 .small {
  font-size: 16rem;
}
.lower .commonTitle04 .small02 {
  top: -5rem;
  font-size: 14rem;
}
.lower .commonTitle04.pattern02:before {
  width: 18rem;
  height: 56rem;
}
.lower .commonTitle05 {
  margin-bottom: 15rem;
  font-size: 18rem;
}
.lower .commonLowerTitle01 {
  padding-bottom: 50rem;
}
.lower .commonLowerTitle01.bottomSpaceShrink {
  padding-bottom: 30rem;
}
.lower .commonFlexArea01 {
  flex-direction: column !important;
  align-items: normal;
  gap: 20rem 0;
}
.lower .commonFlexArea01.borderPattern {
  margin-top: 30rem;
  padding: 20rem 20rem !important;
}
.lower .commonFlexArea01 .lead .catch {
  padding-bottom: .7em;
}
.lower .commonFlexArea01 > .textArea,
.lower .commonFlexArea01 > .lead,
.lower .commonFlexArea01 > .text {
  flex: 0 0 auto;
}
.lower .commonFlexArea01 .image,
.lower .commonFlexArea01 .images,
.lower .commonFlexArea01 > li,
.lower .commonFlexArea01 > section.topics {
  flex: 0 0 auto !important;
}
.lower .commonFlexArea01 .image.flex100,
.lower .commonFlexArea01 .images.flex100,
.lower .commonFlexArea01 > li.flex100,
.lower .commonFlexArea01 > section.topics.flex100 {
  margin: auto;
  width: 40%;
}
.lower .commonFlexArea01 > .commonDefinition01.flex640,
.lower .commonFlexArea01 > .commonDefinition02.flex640,
.lower .commonFlexArea01 > .commonDefinition03.flex640,
.lower .commonFlexArea01 > .commonDefinition04.flex640 {
  flex: 0 0 auto;
}
.lower .commonFlexArea01 > .commonDefinition01.flex620,
.lower .commonFlexArea01 > .commonDefinition02.flex620,
.lower .commonFlexArea01 > .commonDefinition03.flex620,
.lower .commonFlexArea01 > .commonDefinition04.flex620 {
  flex: 0 0 auto;
}
.lower .commonFlexArea01 > .commonDefinition01.flex470,
.lower .commonFlexArea01 > .commonDefinition02.flex470,
.lower .commonFlexArea01 > .commonDefinition03.flex470,
.lower .commonFlexArea01 > .commonDefinition04.flex470 {
  flex: 0 0 auto;
}
.lower .commonFlexArea01 > .commonDefinition01.flex430,
.lower .commonFlexArea01 > .commonDefinition02.flex430,
.lower .commonFlexArea01 > .commonDefinition03.flex430,
.lower .commonFlexArea01 > .commonDefinition04.flex430 {
  flex: 0 0 auto;
}
.lower .commonFlexArea01 > .commonDefinition01.flex300,
.lower .commonFlexArea01 > .commonDefinition02.flex300,
.lower .commonFlexArea01 > .commonDefinition03.flex300,
.lower .commonFlexArea01 > .commonDefinition04.flex300 {
  flex: 0 0 auto;
}
.lower .commonFlexArea01 > .commonDefinition01.flex260,
.lower .commonFlexArea01 > .commonDefinition02.flex260,
.lower .commonFlexArea01 > .commonDefinition03.flex260,
.lower .commonFlexArea01 > .commonDefinition04.flex260 {
  flex: 0 0 auto;
}
.lower .commonFlexArea01 > .commonDefinition01.flex180,
.lower .commonFlexArea01 > .commonDefinition02.flex180,
.lower .commonFlexArea01 > .commonDefinition03.flex180,
.lower .commonFlexArea01 > .commonDefinition04.flex180 {
  flex: 0 0 auto;
}
.lower .commonDefinition01 {
  padding: 20rem;
  border-radius: 8rem;
}
.lower .commonDefinition01:not(.noTopMargin) {
  margin-top: 20rem;
}
.lower .commonDefinition01.topMarginExpand01 {
  margin-top: 40rem;
}
.lower .commonDefinition01 dt {
  margin-bottom: 15rem;
  padding: 5rem 20rem;
  border-radius: 50rem;
  font-size: 18rem;
}
.lower .commonDefinition01 dd img {
  padding-top: 20rem;
}
.lower .commonDefinition02 + dl {
  padding-top: 25rem;
}
.lower .commonDefinition02 dt {
  padding-bottom: 10rem;
  font-size: 18rem;
}
.lower .commonDefinition02 dd {
  font-size: 15rem;
}
.lower .commonDefinition02 dd + dd {
  padding-top: 5rem;
}
.lower .commonDefinition03 + dl {
  padding-top: 25rem;
}
.lower .commonDefinition03 dt {
  padding-bottom: 10rem;
  font-size: 18rem;
}
.lower .commonDefinition03 dd {
  line-height: 1.75;
  font-size: 15rem;
}
.lower .commonDefinition03 dd + dd {
  padding-top: 5rem;
}
.lower .commonDefinition04 {
  padding: 25rem 0 30rem;
  background-size: 150rem auto;
}
.lower .commonDefinition04:not(.noTopMargin) {
  margin-top: 35rem;
}
.lower .commonDefinition04 dt,
.lower .commonDefinition04 dd {
  padding-right: 22rem;
  padding-left: 22rem;
}
.lower .commonDefinition04 dt {
  margin-bottom: 15rem;
  padding-bottom: 20rem;
  font-size: 24rem;
}
.lower .commonDefinition04 dd {
  font-size: 15rem;
}
.lower .commonDefinition04 dd.catch {
  font-size: 18rem;
}
.lower .commonFlexImages01 {
  flex-direction: column;
  align-items: normal;
  gap: 20rem 0 !important;
}
.lower .commonFlexImages03 {
  flex-direction: column;
  justify-content: normal;
  gap: 20rem 0;
}
.lower .commonFlexImages03 li {
  flex: 0 0 auto;
}
.lower .commonDotTexts01 {
  padding: 25rem 25rem !important;
}
.lower .commonDotTexts01.color04:before {
  top: -12rem;
  height: 24rem;
  border-radius: 12rem;
  font-size: 16rem;
}
.lower .commonDotTexts01.color04 + .commonDotTexts01 {
  margin-top: 5rem;
}
.lower .commonDotTexts01.color04 li:first-letter {
  color: #57905d;
}
.lower .commonDotTexts01 li {
  font-size: 15rem;
}
.lower .commonNumberTexts01 > li {
  font-size: 15rem;
}
.lower .commonNumberTexts01 > li ul li {
  font-size: 15rem;
}
.lower .commonTopicsSection01 {
  margin-top: 40rem;
  padding: 0 20rem 20rem !important;
}
.lower .commonTopicsSection01 + .commonTopicsSection01 {
  margin-top: 30rem;
}
.lower .commonTopicsSection01 h4 {
  padding: 15rem 0 20rem 70rem;
  font-size: 16rem;
}
.lower .commonTopicsSection01 h4:before {
  width: 60rem;
  height: 61rem;
}
.lower .commonTopicsSection01 .logo {
  position: static;
  margin: auto;
  padding-bottom: 20rem;
  width: 120rem;
}
.lower .commonTable01 {
  background: none;
}
.lower .commonTable01 tr {
  border-top: none;
  min-height: 0;
}
.lower .commonTable01 th,
.lower .commonTable01 td {
  display: block;
  line-height: 1.3;
  font-size: 14rem;
  width: 100% !important;
}
.lower .commonTable01 th {
  padding: 10rem 10rem;
  font-size: 16rem;
  background: linear-gradient(180deg, rgba(245, 249, 251, 0.2), rgba(1, 86, 133, 0.2)) no-repeat left top;
}
.lower .commonTable01 td {
  padding: 10rem 15rem;
}
.lower .commonTable01 td:first-child {
  border-top: 1rem solid #231815;
}
.lower .commonTable01 td:first-of-type {
  padding: 10rem 15rem 0;
  font-size: 18rem;
}
.lower .commonBgText01 {
  margin-bottom: 10rem;
  border-radius: 50rem;
  font-size: 16rem;
}
.lower .absoluteBR,
.lower .absoluteBL {
  position: static;
  margin: auto;
  padding-top: 30rem;
}

/*==================================================================================
 lower partsCodingPages
==================================================================================*/
.lower.partsCodingPages .sections {
  scroll-margin-top: 60rem;
}
.lower.partsCodingPages .sections:not(:last-of-type) {
  padding-bottom: 80rem;
}
.lower.partsCodingPages .sections + .annotation {
  padding-top: 60rem !important;
}
.lower.partsCodingPages .sections .sectionGuide {
  position: static;
  margin: auto;
  padding-bottom: 30rem;
  width: 200rem;
}
.lower.partsCodingPages .inSections:not(:last-of-type) {
  padding-bottom: 40rem;
}
.lower.partsCodingPages .inSections:not(:last-of-type).bottomSpaceSmall01 {
  padding-bottom: 30rem;
}
.lower.partsCodingPages .inSections:not(:last-of-type).bottomSpaceSmall02 {
  padding-bottom: 20rem;
}
.lower.partsCodingPages .inSections:not(:last-of-type).bottomSpaceSmall03 {
  padding-bottom: 15rem;
}
.lower.partsCodingPages .inSections + .annotation {
  padding-top: 60rem !important;
}
.lower.partsCodingPages article.contents .catch + section,
.lower.partsCodingPages article.contents .lead + section,
.lower.partsCodingPages article.contents .text + section,
.lower.partsCodingPages article.contents .annotation + section,
.lower.partsCodingPages article.contents .image + section,
.lower.partsCodingPages article.contents ul + section {
  padding-top: 80rem;
}
.lower.partsCodingPages article.contents .catch + section.topSpaceSmall,
.lower.partsCodingPages article.contents .lead + section.topSpaceSmall,
.lower.partsCodingPages article.contents .text + section.topSpaceSmall,
.lower.partsCodingPages article.contents .annotation + section.topSpaceSmall,
.lower.partsCodingPages article.contents .image + section.topSpaceSmall,
.lower.partsCodingPages article.contents ul + section.topSpaceSmall {
  padding-top: 40rem;
}
.lower.partsCodingPages article.contents .catch + .lead:not(.indent01),
.lower.partsCodingPages article.contents .catch + .text,
.lower.partsCodingPages article.contents .catch + .image,
.lower.partsCodingPages article.contents .catch + .commonFlexArea01,
.lower.partsCodingPages article.contents .catch + ul,
.lower.partsCodingPages article.contents .catch + .imageArea,
.lower.partsCodingPages article.contents .lead + .lead:not(.indent01),
.lower.partsCodingPages article.contents .lead + .text,
.lower.partsCodingPages article.contents .lead + .image,
.lower.partsCodingPages article.contents .lead + .commonFlexArea01,
.lower.partsCodingPages article.contents .lead + ul,
.lower.partsCodingPages article.contents .lead + .imageArea,
.lower.partsCodingPages article.contents .text + .lead:not(.indent01),
.lower.partsCodingPages article.contents .text + .text,
.lower.partsCodingPages article.contents .text + .image,
.lower.partsCodingPages article.contents .text + .commonFlexArea01,
.lower.partsCodingPages article.contents .text + ul,
.lower.partsCodingPages article.contents .text + .imageArea,
.lower.partsCodingPages article.contents .annotation + .lead:not(.indent01),
.lower.partsCodingPages article.contents .annotation + .text,
.lower.partsCodingPages article.contents .annotation + .image,
.lower.partsCodingPages article.contents .annotation + .commonFlexArea01,
.lower.partsCodingPages article.contents .annotation + ul,
.lower.partsCodingPages article.contents .annotation + .imageArea,
.lower.partsCodingPages article.contents .image + .lead:not(.indent01),
.lower.partsCodingPages article.contents .image + .text,
.lower.partsCodingPages article.contents .image + .image,
.lower.partsCodingPages article.contents .image + .commonFlexArea01,
.lower.partsCodingPages article.contents .image + ul,
.lower.partsCodingPages article.contents .image + .imageArea,
.lower.partsCodingPages article.contents ul + .lead:not(.indent01),
.lower.partsCodingPages article.contents ul + .text,
.lower.partsCodingPages article.contents ul + .image,
.lower.partsCodingPages article.contents ul + .commonFlexArea01,
.lower.partsCodingPages article.contents ul + ul,
.lower.partsCodingPages article.contents ul + .imageArea {
  padding-top: 30rem;
}
.lower.partsCodingPages article.contents .catch + .topSpaceSmall01,
.lower.partsCodingPages article.contents .lead + .topSpaceSmall01,
.lower.partsCodingPages article.contents .text + .topSpaceSmall01,
.lower.partsCodingPages article.contents .annotation + .topSpaceSmall01,
.lower.partsCodingPages article.contents .image + .topSpaceSmall01,
.lower.partsCodingPages article.contents ul + .topSpaceSmall01 {
  padding-top: 20rem !important;
}
.lower.partsCodingPages article.contents .catch + .topSpaceSmall02,
.lower.partsCodingPages article.contents .lead + .topSpaceSmall02,
.lower.partsCodingPages article.contents .text + .topSpaceSmall02,
.lower.partsCodingPages article.contents .annotation + .topSpaceSmall02,
.lower.partsCodingPages article.contents .image + .topSpaceSmall02,
.lower.partsCodingPages article.contents ul + .topSpaceSmall02 {
  padding-top: 15rem !important;
}
.lower.partsCodingPages article.contents .catch + .topSpaceSmall03,
.lower.partsCodingPages article.contents .lead + .topSpaceSmall03,
.lower.partsCodingPages article.contents .text + .topSpaceSmall03,
.lower.partsCodingPages article.contents .annotation + .topSpaceSmall03,
.lower.partsCodingPages article.contents .image + .topSpaceSmall03,
.lower.partsCodingPages article.contents ul + .topSpaceSmall03 {
  padding-top: 10rem !important;
}
.lower.partsCodingPages article.contents .catch + .commonFlexArea01 {
  padding-top: 15rem;
}
.lower.partsCodingPages article.contents .commonFlexArea01 + .commonFlexArea01,
.lower.partsCodingPages article.contents .commonFlexArea01 + .image,
.lower.partsCodingPages article.contents .commonFlexArea01 + .commonFlexImages01 {
  padding-top: 40rem;
}
.lower.partsCodingPages article.contents .commonFlexArea01 + .commonBgText01 {
  margin-top: 30rem;
}
.lower.partsCodingPages article.contents .lead .name {
  padding-top: 10rem;
}
.lower.partsCodingPages article.contents .lead .annotation {
  padding-top: 10rem;
}
.lower.partsCodingPages article.contents .lead + .commonBgText01 {
  margin-top: 20rem;
}
.lower.partsCodingPages article.contents .annotation {
  padding-top: 20rem;
}
.lower.partsCodingPages article.contents .annotation.topSpaceSmall01 {
  padding-top: 20rem;
}
.lower.partsCodingPages article.contents .annotation.topSpaceSmall02 {
  padding-top: 15rem;
}
.lower.partsCodingPages article.contents .annotation.topSpaceSmall03 {
  padding-top: 10rem;
}
.lower.partsCodingPages article.contents .topSpace01 {
  margin-top: 60rem;
}
.lower.partsCodingPages article.contents .topSpace02 {
  margin-top: 40rem;
}
.lower.partsCodingPages article.contents .topSpace03 {
  margin-top: 20rem;
}
.lower.partsCodingPages article.contents .topSpace04 {
  margin-top: 15rem;
}
.lower.partsCodingPages article.contents .topSpace05 {
  margin-top: 10rem;
}
.lower.partsCodingPages article.contents .topSpace06 {
  margin-top: 5rem;
}
.lower.partsCodingPages article.contents .bottomSpace01 {
  margin-bottom: 60rem;
}
.lower.partsCodingPages article.contents .bottomSpace02 {
  margin-bottom: 40rem;
}
.lower.partsCodingPages article.contents .bottomSpace03 {
  margin-bottom: 20rem;
}
.lower.partsCodingPages article.contents .bottomSpace04 {
  margin-bottom: 15rem;
}
.lower.partsCodingPages article.contents .bottomSpace05 {
  margin-bottom: 10rem;
}
.lower.partsCodingPages article.contents .bottomSpace06 {
  margin-bottom: 5rem;
}
.lower.partsCodingPages article.contents .topSpaceSpNone {
  margin-top: 0 !important;
}
.lower.partsCodingPages article.contents .bottomSpaceSpNone {
  margin-top: 0 !important;
}

/*==================================================================================
 lower01-01
==================================================================================*/
#lower01-01 main .contentsTab {
  padding: 0 0;
  max-width: none;
}
#lower01-01 main .contentsTab:after {
  height: 3rem;
}
#lower01-01 main .contentsTab li {
  flex: 0 0 20%;
  flex-direction: column;
  align-items: center;
  gap: 3rem 0;
  padding: 10rem 0 6rem;
  height: auto;
  border-bottom-width: 3rem;
  letter-spacing: 0;
  font-size: 10rem;
}
#lower01-01 main .contentsTab li:before {
  margin: .5rem 0 3rem;
  padding-left: 1rem;
  padding-bottom: 1rem;
  width: 16rem;
  height: 16rem;
  border-radius: 2rem;
  font-size: 14rem;
}
#lower01-01 main .contentsTab li:after {
  margin-top: .5rem;
  margin-right: auto;
  width: 14rem;
  height: 14rem;
}
#lower01-01 section.intro {
  padding-bottom: 80rem;
}
#lower01-01 section.intro > header {
  margin-bottom: 40rem;
  height: 265rem;
}
#lower01-01 section.intro > header h1,
#lower01-01 section.intro > header .images picture {
  right: 0;
  left: 0;
}
#lower01-01 section.intro .lead {
  padding-bottom: 30rem;
  font-size: 12rem;
}
#lower01-01 .sections {
  position: relative;
  font-weight: 500;
  z-index: 1;
}
#lower01-01 .sections:not(.overview) {
  display: none;
}
#lower01-01 .sections dl + dl {
  padding-top: 30rem;
}
#lower01-01 .sections dl + .image {
  padding-top: 30rem;
}
#lower01-01 .sections dl + .image.topSpaceExpand {
  padding-top: 60rem;
}
#lower01-01 .sections dl + .flexAreas {
  padding-top: 60rem;
}
#lower01-01 .sections dl.flex dd {
  display: block;
}
#lower01-01 .sections dl.flex dd img {
  padding-top: 0;
  width: auto;
}
#lower01-01 .sections dl.float + .float {
  padding-top: 60rem;
}
#lower01-01 .sections dl.float dd img {
  float: none;
  clear: both;
  margin-top: 0;
  padding-left: 0;
  width: auto;
}
#lower01-01 .sections dt {
  padding-bottom: 15rem;
}
#lower01-01 .sections dd {
  text-align: left;
}
#lower01-01 .sections .image + dl {
  padding-top: 30rem;
}
#lower01-01 .sections .flexAreas {
  display: block;
}
#lower01-01 .sections .flexAreas + .flexAreas {
  padding-top: 30rem;
}
#lower01-01 .sections .flexAreas > div {
  padding: 0 0 10rem;
}
#lower01-01 section.overview > header {
  padding-bottom: 30rem;
}
#lower01-01 section.overview > header h2 {
  font-size: 21rem;
}
#lower01-01 section.overview > header h2 .en {
  padding-bottom: 10rem;
}
#lower01-01 section.overview > header .catch {
  padding-bottom: 60rem;
}
#lower01-01 section.story01,
#lower01-01 section.story02 {
  padding: 60rem 0 50rem;
}
#lower01-01 section.story01 > header,
#lower01-01 section.story02 > header {
  padding: 120rem 0 60rem;
}
#lower01-01 section.story01 > header h3,
#lower01-01 section.story02 > header h3 {
  width: 70%;
}
#lower01-01 section.story01 > header .image,
#lower01-01 section.story02 > header .image {
  width: 80%;
}
#lower01-01 section.story01 dl + dl,
#lower01-01 section.story02 dl + dl {
  padding-top: 60rem;
}
#lower01-01 section.story01 dl dt,
#lower01-01 section.story02 dl dt {
  padding-bottom: 20rem;
}
#lower01-01 section.story03 {
  padding: 60rem 0;
}
#lower01-01 section.story03 > header {
  padding-bottom: 50rem;
}
#lower01-01 section.story03 > header h3 {
  padding-bottom: 15rem;
  width: 80%;
}
#lower01-01 section.story03 > header .lead {
  padding-bottom: 30rem;
}
#lower01-01 section.message {
  padding: 50rem 0;
}
#lower01-01 section.message > header {
  flex: 0 0 100%;
  padding-bottom: 25rem;
  text-align: center;
}
#lower01-01 section.message > header h4 {
  padding-bottom: 10rem;
  width: 140rem;
}
#lower01-01 section.message .photo {
  flex: 0 0 200rem;
  margin: auto;
}
#lower01-01 section.message dl {
  flex: 0 0 100%;
  padding-top: 30rem;
}
#lower01-01 section.message dt {
  margin-bottom: 30rem;
  padding-left: 15rem;
  border-left-width: 2rem;
  font-size: 20rem;
}
#lower01-01 section.message dt .small {
  padding-bottom: 12rem;
  font-size: 13rem;
}

/*==================================================================================
 lower01-02
==================================================================================*/
#lower01-02 main {
  background-image: url("/recruit/graduate/ir/library/2026/static/img/1/2/bg-sp.png");
}
#lower01-02 section.intro {
  padding: 33rem 0 80rem;
  background-image: url("/recruit/graduate/ir/library/2026/static/img/1/2/mv-bg-sp.png");
}
#lower01-02 section.intro h1 {
  padding-bottom: 100rem;
  width: 292rem;
}
#lower01-02 section.intro .lead {
  padding-bottom: 15rem;
}
#lower01-02 .sections {
  flex-direction: column !important;
  gap: 20rem 0;
}
#lower01-02 .sections:not(:last-of-type) {
  padding-bottom: 60rem;
}
#lower01-02 .sections h2 {
  padding-bottom: 15rem;
  font-size: 22rem;
}
#lower01-02 .sections .image {
  order: -1;
  flex: 0 0 auto;
  padding-top: 0;
}
#lower01-02 section.closing:before, #lower01-02 section.closing:after {
  width: 44rem;
}
#lower01-02 section.closing:before {
  top: 11rem;
  left: -11rem;
}
#lower01-02 section.closing:after {
  right: -11rem;
  bottom: 11rem;
}
#lower01-02 section.closing .wrapper {
  flex-direction: column;
  gap: 20rem 0;
  padding: 25rem 30rem 30rem;
  clip-path: polygon(30rem 0%, 100% 0%, 100% calc(100% - 30rem), calc(100% - 30rem) 100%, 0% 100%, 0% 30rem);
}
#lower01-02 section.closing h2 {
  padding-bottom: 15rem;
}
#lower01-02 section.closing .image {
  flex: 0 0 auto;
  padding-top: 0;
}

/*# sourceMappingURL=smartphone.css.map */
