@charset "UTF-8";
.c-sampleBoxUnit.c-sampleBoxUnit__col4:after, .cl:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: .1em
}

blockquote, dd, dl, dt, fieldset, figure, form, h1, h2, h3, h4, h5, h6, input, li, ol, p, pre, textarea, ul {
  margin: 0;
  padding: 0
}

table {
  border-collapse: collapse;
  border-spacing: 0
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: 400
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: 400
}

fieldset, img {
  border: 0;
  vertical-align: top
}

ol, ul {
  list-style: none
}

.companylist{
    list-style:  none;      /* デフォルトのアイコンを消す */
    margin:  0;             /* デフォルト指定上書き */
    padding: 0;             /* デフォルト指定上書き */
}
.companylist::before {
    content:  ""; /* 空の要素作成 */
}

.companylist {
    list-style:  none;      /* デフォルトのアイコンを消す */
    margin:  0;             /* デフォルト指定上書き */
    padding: 0;             /* デフォルト指定上書き */
}

.companylist:before {
    content:  "";     /* 空の要素作成 */
    width:  10px;               /* 幅指定 */
    height:  10px;              /* 高さ指定 */
    display:  inline-block;     /* インラインブロックにする */
    background-color: #000000;  /* 背景色指定 */
    border-radius:  50%;        /* 要素を丸くする */
}


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

abbr, acronym {
  border: 0
}

a {
  color: #11161f
}

a:link {
  text-decoration: none
}

a:visited {
  text-decoration: none
}

a:hover {
  color: #11161f;
  text-decoration: none;
  cursor: pointer
}

a:active {
  text-decoration: none
}

a:active, a:focus {
  outline: 0
}

dd img, dt img, li img {
  vertical-align: top
}

article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit
}

select::-ms-expand {
  display: none
}

input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0
}

input[type=number] {
  -moz-appearance: textfield
}

html {
  font-size: 62.5%
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

body {
  position: static!important;
  margin: 0;
  padding: 0;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.625;
  color: #333;
  background: #fff;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  padding-top: 80px;
  min-width: 1200px
}

body.is-top {
  padding-top: 0
}

body.is-modal {
  position: fixed!important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

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

a[href^="tel:"] {
  color: #333;
  text-decoration: none;
  cursor: default
}

a[href^="tel:"]:active img, a[href^="tel:"]:focus img, a[href^="tel:"]:hover img {
  opacity: 1
}

a {
  -webkit-transition: .5s;
  transition: .5s
}

a:hover {
  color: #0c63ba
}

a img {
  -webkit-transition: all .5s;
  transition: all .5s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  vertical-align: bottom
}

a:hover:active img, a:hover:focus img, a:hover:hover img {
  opacity: .7
}

p+p {
  margin-top: 25px
}

button {
  background-color: transparent;
  border: none;
  font-family: "Noto Sans JP", sans-serif;
  cursor: pointer;
  font-size: 1.6rem
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 768px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}




.sp_br {
  display: none; 
}
@media screen and (max-width: 768px) {
  .sp_br {
    display: block; 
  }
}

.pc_br {
  display: block; 
}
@media screen and (max-width: 768px) {
  .pc_br {
    display: none; 
  }
}


.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0
}

.slick-list:focus {
  outline: 0
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}

.slick-slider .slick-list, .slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block
}

.slick-track:after, .slick-track:before {
  content: "";
  display: table
}

.slick-track:after {
  clear: both
}

.slick-loading .slick-track {
  visibility: hidden
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none
}

[dir=rtl] .slick-slide {
  float: right
}

.slick-slide img {
  display: block
}

.slick-slide.slick-loading img {
  display: none
}

.slick-slide.dragging img {
  pointer-events: none
}

.slick-initialized .slick-slide {
  display: block
}

.slick-loading .slick-slide {
  visibility: hidden
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}

.slick-arrow.slick-hidden {
  display: none
}

body.is-fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: hidden
}

.l-wrapper {
  text-align: left;
  font-size: 1.6rem;
  overflow: hidden
}

.l-wrap {
  width: 1200px;
  margin-left: auto;
  margin-right: auto
}

.l-wrap>:last-child {
  margin-bottom: 0!important
}

.l-wrap.l-wrap__small {
  width: 1000px;
}

.announcement_top p {
  text-align: center;
    margin: 30px 0px 30px 0px;
}

.announcement_top {
  text-align: center;
    margin-bottom: 30px;
}

.l-2col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.l-2col_main {
  width: 750px
}

.l-2col_side {
  width: 290px
}

.l-container {
  padding: 120px 0
}

.l-container>:last-child {
  margin-bottom: 0!important
}

.l-container02 {
  padding: 100px 0
}

.l-container02>:last-child {
  margin-bottom: 0!important
}

.l-containerLast {
  padding: 60px 0
}

.l-containerLast>:last-child {
  margin-bottom: 0!important
}

.l-sect {
  margin-bottom: 120px
}

.l-sect>:last-child {
  margin-bottom: 0!important
}

.l-sect02 {
  margin-bottom: 100px
}

.l-sect04 {
    width: 1000px;
  margin-bottom: 100px
}

.l-sect02>:last-child {
  margin-bottom: 0!important
}

.l-sect03 {
  margin-bottom: 80px
}

.l-sect03>:last-child {
  margin-bottom: 0!important
}

.l-fixConsultation {
  position: fixed;
  top: 50%;
  right: 0;
  -webkit-transition: all .5s;
  transition: all .5s;
  z-index: 100;
  -webkit-transform: translate(245px, -50%);
  transform: translate(245px, -50%)
}

.l-fixConsultation.is-fixed {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%)
}

.l-fixConsultation_btnList_item {
  border-radius: 20px 0 0 20px;
  background-color: #fff
}

.l-fixConsultation_btnList_item:not(:last-child) {
  margin-bottom: 12px
}

.l-fixConsultation_btnList_item_link {
  border-radius: 20px 0 0 20px;
  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: 95px;
  height: 245px
}

.l-fixConsultation_btnList_item_link:hover {
  color: #fff;
  opacity: .7
}

.l-fixConsultation_btnList_item_link.l-fixConsultation_btnList_item_link__mail {
  background-color: #d9466e
}

.l-fixConsultation_btnList_item_link.l-fixConsultation_btnList_item_link__line {
  background-color: #3eb157
}

.l-fixConsultation_btnList_item_link.l-fixConsultation_btnList_item_link__tel {
  background-color: #71c7d5
}

.l-footer {
  background-color: #0c63ba;
  color: #fff
}

.l-footer a {
  color: #fff
}

.l-footer_utility {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 20px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative
}

.l-footer_utility_link {
  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
}

.l-footer_linkList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.4rem
}

.l-footer_linkList li:not(:last-child) {
  margin-right: 20px
}

.l-footer_pagetop {
  margin-left: 30px
}

.l-footer_copyright {
  position: relative;
  text-align: center;
  padding: 4px 20px 8px
}

.l-footer_copyright:before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, .5)
}

.l-footer_copyright small {
  font-size: 1.2rem;
  display: block
}

.l-header {
  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;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  background-color: #fff;
  padding-left: 20px;
  -webkit-transition: .5s;
  transition: .5s;
  -webkit-box-shadow: 0 2px 2px rgba(0, 0, 0, .15);
  box-shadow: 0 2px 2px rgba(0, 0, 0, .15)
}

.l-header .l-header_logo {
  margin-right: 25px
}

.l-header .l-header_logo a {
  display: block;
  width: 335px;
  height: 47px;
  background-image: url(/assets/images/common/logo.svg);
  background-repeat: no-repeat;
  background-size: cover
}

.l-header .l-header_btn {
  background-color: #0c63ba;
  color: #fff;
  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;
  height: 80px;
  width: 120px;
  font-size: 1.4rem;
  font-weight: 700;
  margin-left: 0px
}
.l-header .l-header_btn2 {
  background-color: #109E15;
  color: #fff;
  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;
  height: 80px;
  width: 120px;
  font-size: 1.4rem;
  font-weight: 700;
  margin-left: 30px
}

.l-header .l-header_btn:hover {
  opacity: .7
}
.l-header .l-header_btn2:hover {
  opacity: .7
}

.is-headerWhite:not(.is-fixed) .l-header {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none
}

.is-headerWhite:not(.is-fixed) .l-header_logo a {
  background-image: url(/assets/images/common/logo__white.svg)
}

.l-gNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.4rem
}

.l-gNav .l-gNav_item {
  position: relative
}

.l-gNav .l-gNav_item:not(:last-child) {
  margin-right: 25px
}

.l-gNav .l-gNav_item .l-gNav_item_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 80px;
  font-weight: 700
}

.l-gNav .l-gNav_item .l-gNav_item_child {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  top: 85px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: .5s;
  transition: .5s;
  background-color: #0c63ba;
  width: 180px;
  text-align: center
}

.l-gNav .l-gNav_item .l-gNav_item_child:before {
  content: " ";
  position: absolute;
  bottom: 100%;
  left: 50%;
  border-width: 7px;
  border-color: transparent transparent #0c63ba transparent;
  border-style: solid
}

.l-gNav .l-gNav_item .l-gNav_item_child a {
  color: #fff
}

.l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_topLink {
  display: none;
  font-weight: 700;
  padding: 9px 20px;
  border-bottom: 1px solid #aeaeae;
  margin-bottom: 20px
}

.l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_list li:not(:first-child) {
  border-top: 1px solid #ebebeb
}

.l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_list li a {
  display: block;
  text-align: center;
  padding: 7px 0 13px
}

.l-gNav .l-gNav_item.has-subNav .l-gNav_item_link.is-open span:before {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  top: 8px
}

.is-headerWhite:not(.is-fixed) .l-gNav_item .l-gNav_item_link {
  color: #fff
}

.is-headerWhite:not(.is-fixed) .l-gNav_item .l-gNav_item_child {
  background-color: #fff
}

.is-headerWhite:not(.is-fixed) .l-gNav_item .l-gNav_item_child:before {
  content: " ";
  position: absolute;
  bottom: 100%;
  left: 50%;
  border-width: 7px;
  border-color: transparent transparent #fff transparent;
  border-style: solid
}

.is-headerWhite:not(.is-fixed) .l-gNav_item .l-gNav_item_child a {
  color: #333
}

.c-pageTtl {
  position: relative;
  z-index: 1
}

.c-pageTtl_body {
  height: 440px;
  background-position: 50% 50%;
  background-size: cover;
  padding-top: 150px
}

.c-pageTtl_inner {
  width: 1200px;
  margin-left: auto;
  margin-right: auto
}

.c-pageTtl_ttl {
  color: #fff;
  line-height: 1.3
}

.c-pageTtl_ttl>* {
  display: block
}

.c-pageTtl_ttl_en {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 4.7rem;
  margin-bottom: 15px;
  letter-spacing: .04em
}

.c-pageTtl_ttl_jp {
  font-size: 2rem
}

.c-pageTtl_desc {
  position: relative;
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-top: -120px;
  margin-bottom: -80px
}

.c-pageTtl_desc:before {
  content: " ";
  position: absolute;
  top: 0;
  right: 100%;
  height: 100%;
  width: 50vw;
  background-color: #fff
}

.c-pageTtl_desc_body {
  max-width: 1000px;
  background-color: #fff;
  padding-top: 25px;
  min-height: 196px
}

.c-pageTtl_desc_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.c-pageTtl_desc_icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 30px
}

.c-pageTtl_desc_icon li:not(:last-child) {
  margin-right: 20px
}

.c-pageTtl_desc_txt {
  font-size: 2.6rem;
  line-height: 2;
  font-weight: 700;
  color: #4d4d4d
}

.c-pageTtl.c-pageTtl__solar .c-pageTtl_body {
  background-image: url(/assets/images/solar/mainvis.jpg)
}

.c-pageTtl.c-pageTtl__privatepower .c-pageTtl_body {
  background-image: url(/assets/images/private_power/mainvis.jpg)
}

.c-pageTtl.c-pageTtl__storagebattery .c-pageTtl_body {
  background-image: url(/assets/images/storage_battery/mainvis.jpg)
}

.c-pageTtl.c-pageTtl__enshift .c-pageTtl_body {
  background-image: url(/assets/images/en_shift/mainvis.jpg)
}

.c-pageTtl.c-pageTtl__company .c-pageTtl_body {
  background-image: url(/assets/images/company/mainvis.jpg)
}

.c-pageTtl02 {
  height: 350px;
  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;
  background-size: cover;
  background-position: 50% 50%
}

.c-pageTtl02_ttl {
  color: #fff;
  line-height: 1.3;
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  font-weight: 700
}

.c-pageTtl02.c-pageTtl02__large {
  height: 510px
}

.c-pageTtl02.c-pageTtl02__large .c-pageTtl02__ttl {
  font-size: 4.6rem
}

.c-pageTtl02.c-pageTtl02__common {
  background-image: url(/assets/images/common/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__news {
  background-image: url(/assets/images/news/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__solarHouse {
  background-image: url(/assets/images/solar/house/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__solarHouseReovation {
  background-image: url(/assets/images/solar/house/renovation/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__solarHouseHybrid {
  background-image: url(/assets/images/solar/house/hybrid/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__solarHouseCase {
  background-image: url(/assets/images/solar/house/case/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__solarIndustry {
  background-image: url(/assets/images/solar/industry/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__solarInverstment {
  background-image: url(/assets/images/solar/inverstment/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__solarInhokkaido {
  background-image: url(/assets/images/solar/in_hokkaido/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__privatepowerGovernment {
  background-image: url(/assets/images/private_power/government/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__privatepowerGridsystem {
  background-image: url(/assets/images/private_power/grid_system/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__storagebatteryHouse {
  background-image: url(/assets/images/storage_battery/house/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__storagebatteryFacility {
  background-image: url(/assets/images/storage_battery/facility/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__storagebatteryCase {
  background-image: url(/assets/images/storage_battery/case/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__wind {
  background-image: url(/assets/images/wind/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__alliance {
  background-image: url(/assets/images/alliance/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__enshiftCostdown {
  background-image: url(/assets/images/en_shift/costdown/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__enshiftFgrid {
  background-image: url(/assets/images/en_shift/fgrid/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__enshiftV2h {
  background-image: url(/assets/images/en_shift/v2h/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__enshiftFpower {
  background-image: url(/assets/images/en_shift/fpower/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__companyProfile {
  background-image: url(/assets/images/company/profile/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__companySunnyadvisor {
  background-image: url(/assets/images/company/sunny-advisor/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__companySdgs {
  background-image: url(/assets/images/company/sdgs/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__companyField {
  background-image: url(/assets/images/company/field/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__modelhouse {
  background-image: url(/assets/images/modelhouse/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__voice {
  background-image: url(/assets/images/voice/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__voiceCorporation {
  background-image: url(/assets/images/voice-corporation/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__gallery {
  background-image: url(/assets/images/company/gallery/mainvis.jpg)
}

.c-pageTtl02.c-pageTtl02__media {
  background-image: url(/assets/images/company/media/mainvis.jpg)
}


.c-pageTtl03 {
  min-height: 510px;
  background-size: cover;
  background-position: 50% 50%;
  color: #fff;
  padding-top: 85px;
  padding-bottom: 30px
}

.c-pageTtl03_body {
  width: 1200px;
  margin-left: auto;
  margin-right: auto
}

.c-pageTtl03_label {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 10px
}

.c-pageTtl03_ttl {
  color: #fff;
  line-height: 1.37931;
  font-family: "Noto Serif JP", serif;
  font-size: 4.6rem;
  font-weight: 600;
  margin-bottom: 40px
}

.c-pageTtl03_txt {
  font-size: 2rem;
  line-height: 1.75
}

.c-pageTtl03.c-pageTtl03__companyFrontier {
  background-image: url(/assets/images/company/frontier/mainvis.jpg)
}

.c-sectTtl {
  font-size: 3.6rem;
  text-align: center;
  font-weight: 600;
  line-height: 1.45833;
  font-family: "Noto Serif JP", serif;
  margin-top: -11px;
  margin-bottom: 70px;
  overflow: hidden
}

.c-sectTtl_alli {
  font-size: 3.6rem;
  text-align: center;
  font-weight: 600;
  line-height: 1.45833;
  font-family: "Noto Serif JP", serif;
  margin-top: -11px;
  margin-bottom: 70px;
  overflow: hidden
}

.c-sectTtl_label {
  display: inline-block;
  padding: 0 30px;
  position: relative
}

.c-sectTtl_label:after, .c-sectTtl_label:before {
  content: " ";
  position: absolute;
  top: 50%;
  margin-top: 1px;
  height: 2px;
  background-color: #0c63ba;
  width: 70vw
}

.c-sectTtl_label:before {
  left: 100%
}

.c-sectTtl_label:after {
  right: 100%
}


.c-sectTtl_label_alli {
  display: inline-block;
  padding: 0 30px;
  position: relative
}

.c-sectTtl_label_alli:after, .c-sectTtl_label_alli:before {
  content: " ";
  position: absolute;
  top: 50%;
  margin-top: 1px;
  height: 2px;
  background-color: #0c63ba;
  width: 80vw
}

.c-sectTtl_label_alli:before {
  left: 100%
}

.c-sectTtl_label_alli:after {
  right: 100%
}


.c-sectTtl02 {
  font-size: 2.8rem;
  font-weight: 600;
  color: #0c63ba;
  font-family: "Noto Serif JP", serif;
  line-height: 1.42857;
  margin-top: -6px;
  margin-bottom: 37px
}

.c-sectTtl03 {
  text-align: center;
  color: #0c63ba;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  border-bottom: 2px solid #0c63ba;
  margin-top: -8px;
  padding-bottom: 15px;
  margin-bottom: 50px
}



.c-sectTtl04 {
  font-size: 2.4rem;
  color: #0c63ba;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
  margin-top: -10px;
  padding-bottom: 40px;
  position: relative;
  margin-bottom: 40px
}

.c-sectTtl04:before {
  content: " ";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 35px;
  height: 4px;
  background-color: #0c63ba
}

.c-sectTtl05 {
  text-align: center;
  margin-bottom: 55px
}

.c-sectTtl05_label {
  text-align: center;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 700;
  background-color: #fff;
  line-height: 1.3;
  background-color: #0c63ba;
  color: #fff;
  position: relative;
  padding: 6px 20px 11px;
  border-radius: 20px;
  margin-bottom: 20px
}

.c-sectTtl05_label:before {
  content: " ";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  top: 100%;
  border-width: 7px;
  border-style: solid;
  border-color: #0c63ba transparent transparent transparent
}

.c-sectTtl05_ttl {
  display: block;
  color: #0c63ba;
  font-size: 4rem;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  line-height: 1.34615
}

.c-sectTtl06 {
  padding: 20px 0;
  color: #0c63ba;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  border: solid #0c63ba;
  border-width: 2px 0
}

.c-sectTtl07 {
  text-align: left;
  color: #333;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.6;
  margin-top: 20px;
  display: flex;
  justify-content: center;
  padding-bottom: 15px;
  margin-bottom: 50px
}

@media screen and (max-width: 768px) {
.c-sectTtl07 {
  text-align: left;
  color: #333;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.8;
  margin-top: 20px;
  padding-bottom: 15px;
  margin-bottom: 50px
    }}

.c-pinpointTtl {
  font-size: 4.2rem;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Serif JP", serif;
  letter-spacing: .04em;
  padding-bottom: 15px;
  background-image: url(/assets/images/home/bg-philosophy_title.svg);
  background-repeat: no-repeat;
  background-position: left 50% bottom 0;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 60px;
  margin-top: -13px
}

.c-pinpointTtl em {
  font-size: 7rem;
  font-weight: 400;
  display: inline-block
}

.c-sectLead {
  text-align: center;
  margin-bottom: 55px
}

.c-label {
  display: inline-block;
  background-color: #0c63ba;
  color: #fff;
  min-width: 150px;
  padding: 5px 10px 9px;
  line-height: 1;
  font-size: 1.4rem;
  text-align: center
}

.c-label.c-label__small {
  min-width: 110px
}

.c-label.c-label__white {
  background-color: #fff;
  color: #0c63ba
}

.c-btn {
  width: 260px;
  background-color: #0c63ba;
  border: 1px solid #0c63ba;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 6px 0 11px;
  border-radius: 25px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.c-btn:hover {
  background-color: #fff;
  color: #0c63ba;
  text-decoration: none
}

.c-btn.c-btn__large {
  width: 300px
}

.c-btn.c-btn__small {
  width: 220px
}

.c-btn.c-btn__exSmall {
  width: 200px
}

.c-btn.c-btn__white {
  background-color: #fff;
  border: 1px solid #e6e6e6;
  color: #0c63ba
}

.c-btn.c-btn__white:hover {
  background-color: #0c63ba;
  color: #fff
}

.c-btn.c-btn__blank:after {
  content: " ";
  display: inline-block;
  width: 21px;
  height: 21px;
  background-image: url(/assets/images/common/icon-blank.svg);
  vertical-align: middle;
  margin-left: 10px;
  margin-top: 2px
}

.c-tag {
  background-color: #0c63ba;
  display: inline-block;
  color: #fff;
  line-height: 1;
  border-radius: 4px;
  font-size: 1.2rem;
  padding: 7px 10px
}

.c-tag:hover {
  text-decoration: none;
  opacity: .7;
  color: #fff
}

.c-tagList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: -10px;
  margin-top: -10px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.c-tagList>* {
  margin-right: 10px;
  margin-top: 10px
}

.c-simpleImg {
  margin-bottom: 40px
}

.c-simpleImg_img {
  text-align: center
}

.c-simpleImg_caption {
  margin-top: 35px;
  margin-bottom: 25px
}

.c-borderImg {
  margin-bottom: 40px
}

.c-borderImg>:last-child {
  margin-bottom: 0!important
}

.c-borderImg_img {
  border: 1px solid #ccc;
  padding: 45px 10px;
  text-align: center
}

.c-borderImg_img_point {
  padding: 45px 10px;
  text-align: center
}

.c-borderImg_caption {
  margin-top: 35px;
  margin-bottom: 25px
}

.c-focalBoxUnit>:last-child {
  margin-bottom: 0!important
}

.c-focalBox {
  margin-bottom: 60px
}

.c-focalBox .c-focalBox_img {
  max-width: 760px;
  position: relative;
  z-index: 0;
  overflow: hidden
}

.c-focalBox .c-focalBox_img img {
  width: 100%;
  opacity: 0;
  -webkit-transition: all 0s .3s;
  transition: all 0s .3s
}

.c-focalBox .c-focalBox_img:before {
  content: " ";
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  top: 0;
  left: 0;
  background-color: #eee;
  -webkit-transition: left .3s ease-out .3s, -webkit-transform .2s ease-out;
  transition: left .3s ease-out .3s, -webkit-transform .2s ease-out;
  transition: transform .2s ease-out, left .3s ease-out .3s;
  transition: transform .2s ease-out, left .3s ease-out .3s, -webkit-transform .2s ease-out;
  -webkit-transform-origin: left top;
  transform-origin: left top
}

.c-focalBox .c-focalBox_body {
  max-width: 560px;
  margin-left: auto;
  margin-top: -214px;
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
  opacity: 0;
  position: relative;
  z-index: 1;
  -webkit-transition: all .4s .2s ease-out;
  transition: all .4s .2s ease-out
}

.c-focalBox_desc {
  background-color: #eee;
  min-height: 274px;
  margin-bottom: 20px;
  padding: 50px
}

.c-focalBox_ttl {
  font-size: 2.8rem;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1.3;
  margin-top: -5px;
  margin-bottom: 18px
}

.c-focalBox_ttl_label {
  font-size: 2rem;
  color: #0c63ba;
  margin-right: 20px
}

.c-focalBox_btnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  text-align: right
}

.c-focalBox_btnList_item:not(:last-child) {
  margin-right: 15px
}

.c-focalBox.is-animeted .c-focalBox_img img {
  opacity: 1
}

.c-focalBox.is-animeted .c-focalBox_img:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  left: 100%
}

.c-focalBox.is-animeted .c-focalBox_body {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1
}

.c-pointBoxUnit {
  margin-bottom: 60px
}

.c-pointBoxUnit>:last-child {
  margin-bottom: 0!important
}

.c-pointBoxUnit .c-pointBox:nth-child(odd) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse
}

.c-pointBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 60px
}

.c-pointBox>* {
  width: 48.33333%
}

.c-pointBox_img img {
  width: 100%
}


.c-pointBox_body>:last-child {
  margin-bottom: 0!important
}

.c-pointBox_point {
  font-weight: 600;
  font-size: 2rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #0c63ba;
  margin-top: -5px;
  margin-bottom: 5px
}

.c-pointBox_point span {
  font-size: 4.4rem;
  margin-left: 10px;
  position: relative;
  top: -4px
}

.c-pointBox_ttl {
  font-weight: 600;
  font-size: 2.8rem;
  font-family: "Noto Serif JP", serif;
  color: #0c63ba;
  line-height: 1.3;
  margin-bottom: 30px
}




.c-pointBox_txt {
  margin-bottom: 20px
}

.c-pointBox_txtbig {
  margin-bottom: 20px;
}

p.c-pointBox_txtbig {
  font-size: 130%!important;
  font-weight: bold;
  
}
.c-pointBox_definition dt {
  color: #0c63ba;
  margin-bottom: 5px
}

.c-pointBox_definition dt span {
  font-size: 2.4rem;
  font-weight: 700
}

.c-strangeBoxUnit {
  margin-bottom: 60px
}

.c-strangeBoxUnit>:last-child {
  margin-bottom: 0!important
}

.c-strangeBox {
  position: relative;
  padding-right: 100px;
  margin-bottom: 60px
}

.c-strangeBox .c-strangeBox_img {
  position: absolute;
  right: 0;
  top: -20px;
  width: 400px;
  overflow: hidden
}

.c-strangeBox .c-strangeBox_img img {
  width: 100%
}

.c-strangeBox .c-strangeBox_body {
  background-color: #fff;
  min-height: 330px;
  padding: 40px 340px 40px 40px
}

.c-strangeBox .c-strangeBox_body>:last-child {
  margin-bottom: 0!important
}

.c-strangeBox .c-strangeBox_body p+p {
  margin-top: 0
}

.c-strangeBox_ttl {
  font-size: 3rem;
  line-height: 1.3;
  font-weight: 600;
  color: #0c63ba;
  font-family: "Noto Serif JP", serif;
  margin-top: -8px;
  margin-bottom: 20px
}

.c-strangeBox_catch {
  line-height: 1.27778;
  font-size: 2rem;
  margin-bottom: 20px;
  font-weight: 700
}

.c-strangeBox_txt {
  margin-bottom: 25px
}

.c-strangeBox_support {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.c-strangeBox_support_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.c-strangeBox_support_item:not(:last-child) {
  margin-right: 50px
}

.c-strangeBox_support_item dt {
  background-color: #0c63ba;
  color: #fff;
  font-size: 1.4rem;
  padding: 2px 5px 6px;
  margin-right: 10px
}

.c-strangeBox_support_item dd {
  font-size: 2rem;
  font-weight: 500;
  margin-top: -4px
}

.c-strangeBox_definition {
  margin-bottom: 20px
}

.c-strangeBox_definition dt {
  font-size: 1.8rem;
  line-height: 1.3;
  font-weight: 700;
  line-height: 1.27778;
  color: #0c63ba;
  margin-bottom: 5px
}

.c-mediaBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.c-mediaBox_img {
  margin-right: 90px
}

.c-mediaBox_body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.c-mediaBox_body>:last-child {
  margin-bottom: 0!important
}

.c-mediaBox_ttl {
  font-size: 4.6rem;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  line-height: 1.3;
  color: #0c63ba;
  margin-bottom: 25px;
  margin-top: -12px
}

.c-mediaBox_txt {
  font-size: 2rem;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  line-height: 2
}

.c-meritBox {
  background-color: #0c63ba;
  padding: 40px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 40px
}

.c-meritBox_ttl {
  font-size: 2.8rem;
  line-height: 1.57143;
  width: 8em;
  margin-right: 40px;
  font-weight: 700;
  font-family: "Noto Serif JP", serif
}

.c-meritBox_body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.c-meritBox_list>:last-child {
  margin-bottom: 0!important
}

.c-meritBox_list.c-meritBox_list__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -30px;
  margin-top: -30px
}

.c-meritBox_list.c-meritBox_list__col2>* {
  margin-top: 30px;
  margin-right: 30px;
  width: calc((100%/2) - 30px)
}

.c-meritBox_list.c-meritBox_list__col2 .c-meritBox_list_item {
  margin-bottom: 0
}

.c-meritBox_list.c-meritBox_list__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -30px;
  margin-top: -30px
}

.c-meritBox_list.c-meritBox_list__col3>* {
  margin-top: 30px;
  margin-right: 30px;
  width: calc((100%/3) - 30px)
}

.c-meritBox_list.c-meritBox_list__col3 .c-meritBox_list_item {
  margin-bottom: 0
}

.c-meritBox_list_item {
  font-size: 1.8rem;
  padding-left: 40px;
  font-weight: 700;
  position: relative;
  margin-bottom: 30px
}

.c-meritBox_list_item:before {
  content: " ";
  position: absolute;
  top: .1em;
  left: 0;
  width: 30px;
  height: 30px;
  background-size: contain;
  background-image: url(/assets/images/common/icon-check.svg)
}

.c-meritBox_list_item_definition dt {
  margin-bottom: 15px
}

.c-meritBox_list_item_definition dd {
  margin-left: -40px;
  font-size: 1.6rem;
  font-weight: 400
}

.c-meritBox_numberList.c-meritBox_numberList__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -80px;
  margin-top: -30px
}

.c-meritBox_numberList.c-meritBox_numberList__col2>* {
  margin-top: 30px;
  margin-right: 80px;
  width: calc((100%/2) - 80px)
}

.c-meritBox_numberList.c-meritBox_numberList__col2 .c-meritBox_list_item {
  margin-bottom: 0
}

.c-meritBox_numberList_item {
  counter-increment: num
}

.c-meritBox_numberList_item dl dt {
  position: relative;
  padding-left: 40px;
  font-size: 2rem;
  margin-bottom: 10px;
  font-weight: 700
}

.c-meritBox_numberList_item dl dt:before {
  content: counter(num);
  position: absolute;
  top: .1em;
  left: 0;
  width: 30px;
  height: 30px;
  background-color: #fff;
  border-radius: 50%;
  text-align: center;
  color: #0c9fba;
  font-weight: 700;
  line-height: 1;
  padding-top: .15em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.c-grayBox {
  background-color: #eee;
  padding: 40px
}

.c-grayBox>:last-child {
  margin-bottom: 0!important
}

.c-grayBox p+p {
  margin-top: 10px
}

.c-grayBox_ttl {
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.3;
  margin-top: -5px;
  margin-bottom: 10px
}

.c-whiteBox {
  padding: 80px 40px;
  background-color: #fff
}

.c-whiteBox>:last-child {
  margin-bottom: 0!important
}

.c-aroundBox {
  overflow: hidden
}

.c-aroundBox .c-aroundBox_img {
  max-width: 580px
}

.c-aroundBox .c-aroundBox_desc {
  margin-top: -5px
}

.c-aroundBox.c-aroundBox__left .c-aroundBox_img {
  float: left;
  margin-right: 40px;
  margin-bottom: 10px
}

.c-aroundBox.c-aroundBox__right .c-aroundBox_img {
  float: right;
  margin-left: 40px;
  margin-bottom: 10px
}

.c-aroundBox.c-aroundBox__clear .c-aroundBox_desc {
  overflow: hidden
}

.c-submitNote {
  margin-top: 20px;
  margin-bottom: 120px
}

.c-submitNote>p {
  font-size: 1.2rem;
  margin: 0;
  letter-spacing: .04em;
  text-align: right
}

.c-submitNote>p:not(:first-child) {
  margin-top: 5px
}

.c-submitNote>p span {
  padding: 0 3px
}

.c-privacyArea {
  border: 1px solid #e1e1e1;
  overflow-y: auto;
  height: 434px;
  margin-bottom: 55px
}

.c-privacyArea_inner {
  padding: 30px
}

.c-privacyArea_inner>:not(:last-child) {
  margin-bottom: 30px
}

.c-privacyArea_inner dl {
  font-size: 1.4rem;
  letter-spacing: .04em
}

.c-privacyArea_inner dl dt {
  font-weight: 700
}

.c-simpleCardUnit {
  margin-bottom: 40px
}

.c-simpleCardUnit.c-simpleCardUnit__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -1.5%;
  margin-top: -18px
}

.c-simpleCardUnit.c-simpleCardUnit__col3>* {
  margin-top: 18px;
  margin-right: 1.47783%;
  width: 31.8555%
}

.c-simpleCard {
  background-color: #fff;
  -webkit-box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, .1);
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, .1)
}

.c-simpleCard_img img {
  width: 100%
}

.c-simpleCard_body {
  padding: 40px
}

.c-simpleCard_ttl {
  margin-bottom: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.c-simpleCard_ttl_num {
  width: 25px;
  height: 25px;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  background-color: #0c63ba;
  border-radius: 50%;
  text-align: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-right: 10px;
  padding-top: 3px;
  line-height: 1
}

.c-simpleCard_ttl_label {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  font-size: 2.4rem;
  color: #0c63ba;
  font-weight: 700;
  line-height: 1.5;
  margin-top: -8px
}

.c-simpleCard_ttl_label small {
  font-size: 2rem;
  line-height: 1.2
}

.c-simpleCard02Unit {
  margin-bottom: 40px
}

.c-simpleCard02Unit.c-simpleCard02Unit__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -2.5%;
  margin-top: -55px
}

.c-simpleCard02Unit.c-simpleCard02Unit__col3>* {
  margin-top: 55px;
  margin-right: 2.43902%;
  width: 30.89431%
}

.c-simpleCard02 {
  display: block;
  position: relative;
  overflow: hidden
}

a.c-simpleCard02:hover {
  -webkit-box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, .1);
  box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, .1)
}

a.c-simpleCard02 .c-simpleCard02_img img {
  opacity: 1
}

.c-simpleCard02 .c-simpleCard02_img img {
  width: 100%
}

.c-simpleCard02 .c-simpleCard02_body {
  padding-top: 13px
}

.c-simpleCard02_ttl {
  margin-bottom: 10px;
  color: #0c63ba;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.3
}

.c-heroCardUnit {
  margin-bottom: 40px
}

.c-heroCardUnit.c-heroCardUnit__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -3.33333%;
  margin-top: -40px
}

.c-heroCardUnit.c-heroCardUnit__col2>* {
  margin-top: 40px;
  margin-right: 3.22581%;
  width: 46.77419%
}

.c-heroCard {
  background-color: #eee
}

.c-heroCard_img img {
  width: 100%
}

.c-heroCard_body {
  padding: 40px
}

.c-heroCard_ttl {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 18px;
  margin-top: -8px;
  color: #4d4d4d;
  text-align: center
}

.c-heroCard_txt {
  margin-bottom: 35px
}

.c-heroCard_btn {
  text-align: center;
  margin-top: 0
}

.c-stylishCardUnit {
  margin-bottom: 40px
}

.c-stylishCardUnit.c-stylishCardUnit__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -1.5%;
  margin-top: -18px
}

.c-stylishCardUnit.c-stylishCardUnit__col2>* {
  margin-top: 18px;
  margin-right: 1.47783%;
  width: 48.52217%
}

.c-stylishCardUnit.c-stylishCardUnit__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -1.5%;
  margin-top: -18px
}

.c-stylishCardUnit.c-stylishCardUnit__col3>* {
  margin-top: 18px;
  margin-right: 1.47783%;
  width: 31.8555%
}

.c-stylishCard {
  -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .1);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, .1)
}

.c-stylishCard_img img {
  width: 100%
}

.c-stylishCard_body {
  padding: 30px 40px
}

.c-stylishCard_body>:last-child {
  margin-bottom: 0!important
}

.c-stylishCard_body p+p {
  margin-top: 15px
}

.c-stylishCard_ttl {
  font-size: 2.4rem;
  font-weight: 700;
  color: #0c63ba;
  line-height: 1.3;
  margin-bottom: 13px
}

.c-stylishCard_ttl+p {
  margin-top: 0
}

.c-stylishCard_definition {
  margin-top: 27px
}

.c-stylishCard_definition dt {
  font-weight: 700;
  border-bottom: 1px solid #f2f2f2;
  padding-bottom: 3px;
  margin-bottom: 10px
}

.c-definitionCardUnit {
  display: none;
  margin-bottom: 40px
}

.c-definitionCardUnit.c-definitionCardUnit__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -1.66667%;
  margin-top: -20px
}

.c-definitionCardUnit.c-definitionCardUnit__col3>* {
  margin-top: 20px;
  margin-right: 1.63934%;
  width: 31.69399%
}

.c-definitionCard_ttl {
  position: relative;
  font-size: 2.4rem;
  text-align: center;
  background-color: #0c63ba;
  color: #fff;
  padding: 2px 10px 6px;
  margin-bottom: 20px
}

.c-definitionCard_ttl:before {
  content: " ";
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-color: #0c63ba transparent transparent transparent;
  border-style: solid;
  border-width: 10px
}

.c-definitionCard_body {
  -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .1);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, .1);
  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: 35px 15px
}

.c-definitionCard_emphosis {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  color: #0c63ba;
  font-weight: 700;
  line-height: 1.3
}

.c-definitionCard_emphosis small {
  display: block;
  font-size: 2rem;
  margin-top: 5px
}

.c-videoCardUnit {
  margin-bottom: 40px
}

.c-videoCardUnit.c-videoCardUnit__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -2.5%;
  margin-top: -30px
}

.c-videoCardUnit.c-videoCardUnit__col3>* {
  margin-top: 30px;
  margin-right: 2.43902%;
  width: 30.89431%
}

.c-videoCard_ttl {
  font-size: 1.8rem;
  font-weight: 700;
  color: #0c63ba;
  line-height: 1.2;
  margin-bottom: 20px;
  padding-left: .6em;
  border-left: 4px solid #0c63ba;
  padding-bottom: 4px
}

.c-videoCard_thumb {
  position: relative;
  display: block
}

.c-videoCard_thumb:hover:before {
  opacity: .6
}

.c-videoCard_thumb:before {
  content: " ";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .5);
  background-image: url(/assets/images/common/icon-play.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  -webkit-transition: .5s;
  transition: .5s
}

.c-videoCard_thumb img {
  width: 100%
}

.c-contentCard_wrap {
  position: relative;
  height: 340px;
  background: no-repeat
}

.c-contentCard_wrap:not(:first-child) {
  margin-top: 20px
}

.c-contentCard_wrap--solution {
  background-image: url(/assets/images/company/field/image-panel01.jpg)
}

.c-contentCard_wrap--trade {
  background-image: url(/assets/images/company/field/image-panel02.jpg)
}

.c-contentCard_wrap--support {
  background-image: url(/assets/images/company/field/image-panel03.jpg)
}

.c-contentCard_wrap--save {
  background-image: url(/assets/images/company/field/image-panel04.jpg)
}

.c-contentCard_wrap--builder {
  background-image: url(/assets/images/company/field/image-panel05.jpg)
}

.c-contentCard_inner {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 600px;
  padding: 60px 40px;
  background: #fff;
  -webkit-box-shadow: 1px 1px 2px rgba(0, 0, 0, .1);
  box-shadow: 1px 1px 2px rgba(0, 0, 0, .1)
}

.c-contentCard_ttl {
  margin-bottom: 15px;
  color: #0c63ba;
  font-size: 2.4rem;
  font-weight: 700
}

.c-horizBtnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center
}

.c-horizBtnList_item:not(:last-child) {
  margin-right: 40px
}

.c-submitBtnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.c-submitBtnList_item {
  width: 224px
}

.c-submitBtnList_item:not(:last-child) {
  margin-right: 20px
}

.c-submitBtnList_btn {
  display: block;
  width: 100%;
  background-color: #0c63ba;
  color: #fff;
  font-size: 2rem;
  padding: 11px 0 16px;
  font-weight: 700;
  border: 2px solid #0c63ba;
  -webkit-transition: .5s;
  transition: .5s
}

.c-submitBtnList_btn:hover {
  background-color: #fff;
  color: #0c63ba
}

.c-submitBtnList_btn.c-submitBtnList_btn__gray {
  background-color: #f2f2f2;
  border: 2px solid #f2f2f2;
  color: #0c63ba
}

.c-submitBtnList_btn.c-submitBtnList_btn__gray:hover {
  background-color: #0c63ba;
  color: #f2f2f2
}

.c-submitBtnList_btn[disabled] {
  color: #fff!important;
  background-color: #cbcbcb;
  border-color: #cbcbcb;
  pointer-events: none
}

.c-definitionList {
  border-top: 1px dashed #e6e6e6
}

.c-definitionList_item {
  border-bottom: 1px dashed #e6e6e6
}

.c-definitionList_item dl {
  padding-top: 22px;
  padding-bottom: 25px
}

.c-definitionList_item dl dt {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  color: #0c63ba;
  padding-left: 1.3em;
  margin-bottom: 8px;
  position: relative
}

.c-definitionList_item dl dt:before {
  content: "〇";
  position: absolute;
  top: 0;
  left: 0
}

.c-definitionList_item dl dd {
  padding-left: 1.3em
}

.c-numberList {
  border-top: 1px dashed #e6e6e6
}

.c-numberList_item {
  border-bottom: 1px dashed #e6e6e6;
  counter-increment: num;
  padding-top: 22px;
  padding-bottom: 25px
}

.c-numberList_item>:last-child {
  margin-bottom: 0!important
}

.c-numberList_item p+p {
  margin-top: 0
}

.c-numberList_item_ttl {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  color: #0c63ba;
  padding-left: 1.6em;
  margin-bottom: 8px;
  position: relative
}

.c-numberList_item_ttl:before {
  content: counter(num);
  position: absolute;
  top: .2em;
  left: 0;
  width: 25px;
  height: 25px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  background-color: #0c63ba;
  color: #fff;
  border-radius: 50%;
  line-height: 1;
  padding-top: 3px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.c-numberList_item_txt {
  padding-left: 1.6em
}

.c-tabBtnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 50px
}

.c-tabBtnList.c-tabBtnList__small .c-tabBtnList_item {
  width: 224px;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none
}

.c-tabBtnList_item {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  width: 100%
}

.c-tabBtnList_item:not(:last-child) {
  margin-right: 20px
}

.c-tabBtnList_item a {
  background-color: #f2f2f2;
  color: #0c63ba;
  font-size: 2rem;
  text-align: center;
  display: block;
  line-height: 1.3;
  padding: 24px 0 30px;
  position: relative;
  font-weight: 700
}

.c-tabBtnList_item a:hover {
  color: #fff;
  background-color: #0c63ba
}

.c-tabBtnList_item a.is-active {
  color: #fff;
  background-color: #0c63ba
}

.c-tabBtnList_item a.is-active:before {
  content: " ";
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-width: 19px;
  border-color: #0c63ba transparent transparent transparent;
  border-style: solid
}

.c-faqList {
  margin-bottom: 60px
}

.c-faqList_item {
  border-bottom: 1px solid #e6e6e6
}

.c-faqList_item:not(:last-child) {
  margin-bottom: 30px
}

.c-faqList_item dl dd, .c-faqList_item dl dt {
  padding-left: 43px;
  position: relative
}

.c-faqList_item dl dd:before, .c-faqList_item dl dt:before {
  content: " ";
  position: absolute;
  left: 0;
  top: 0;
  width: 33px;
  height: 33px;
  color: #fff;
  border-radius: 50%;
  font-size: 2.2rem;
  text-align: center;
  line-height: 1;
  padding-top: 3px;
  font-weight: 400;
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

.c-faqList_item dl dt {
  color: #0c63ba;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.4;
  padding-top: 4px;
  padding-bottom: 30px;
  padding-right: 80px
}

.c-faqList_item dl dt:before {
  content: "Q";
  background: #0c63ba
}

.c-faqList_item dl dt:after {
  content: " ";
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 15px;
  height: 11px;
  margin-top: -15px;
  background-repeat: no-repeat;
  background-image: url(/assets/images/common/icon-down.svg);
  -webkit-transition: .4s;
  transition: .4s
}

.c-faqList_item dl dt.is-active:after {
  -webkit-transform: rotate(-180deg) translateY(-50%);
  transform: rotate(-180deg) translateY(-50%)
}

.c-faqList_item dl dd {
  border-top: 1px dashed #e6e6e6;
  padding-top: 24px;
  padding-bottom: 25px
}

.c-faqList_item dl dd:before {
  content: "A";
  background: #e33124;
  top: 20px
}

.c-iconList.c-iconList__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -3.33333%;
  margin-top: -40px
}

.c-iconList.c-iconList__col2>* {
  margin-top: 40px;
  margin-right: 3.22581%;
  width: 46.77419%
}

.c-iconList_item {
  background-color: #fff;
  padding: 30px 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: left
}

.c-iconList_item_icon {
  width: 66px;
  margin-right: 40px
}

.c-iconList_item_body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.c-iconList_item_ttl {
  color: #0c63ba;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.3;
  margin-top: -6px;
  margin-bottom: 10px
}

.c-iconList_item_txt {
  margin-top: 0
}

.c-noteList {
  font-size: 1.4rem
}

.c-noteList>* {
  padding-left: 1em;
  position: relative
}

.c-noteList>:before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0
}

.c-stepList>:last-child {
  margin-bottom: 0!important
}

.c-stepList_item {
  border: 1px solid #0c63ba;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  counter-increment: num;
  margin-bottom: 40px;
  position: relative
}

.c-stepList_item:not(:last-child):before {
  content: " ";
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-style: solid;
  border-color: #0c63ba transparent transparent transparent;
  border-width: 20px 37px
}

.c-stepList_item_heading {
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-weight: 700;
  text-align: center;
  background-color: #0c63ba;
  color: #fff;
  width: 100px
}

.c-stepList_item_heading:after {
  content: counter(num);
  line-height: 1;
  font-size: 4.2rem;
  margin-top: -3px
}

.c-stepList_item_body {
  padding: 13px 20px 19px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.c-stepList_item_definition dt {
  font-weight: 700;
  color: #0c63ba;
  font-size: 2rem;
  margin-bottom: 5px
}

.c-panelList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #fff
}

.c-panelList_item {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  width: 100%;
  border-left: 3px solid #fff
}

.c-panelList_item:first-child {
  border-left: none
}

.c-panelList_item 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;
  text-align: center;
  position: relative;
  height: 400px;
  overflow: hidden;
  color: #fff!important
}

.c-panelList_item_ttl {
  font-size: 3.2rem;
  line-height: 1.3125;
  font-weight: 700;
  position: relative;
  z-index: 1
}

.c-panelList_item_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  z-index: 0;
  -webkit-transition: .5s ease-in;
  transition: .5s ease-in
}

.c-philosophyList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.c-philosophyList.c-philosophyList__theme>* {
  background-color: #0c63ba;
  color: #fff
}

.c-philosophyList.c-philosophyList__theme>* em {
  color: #fff
}

.c-philosophyList>* {
  width: 210px;
  height: 210px;
  background-color: #30a1d2;
  color: #fff;
  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-radius: 50%;
  font-size: 1.4rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  font-family: "Noto Serif JP", serif;
  line-height: 1;
  margin-right: 30px
}

.c-philosophyList>:last-child {
  margin-right: 0
}

.c-philosophyList>* em {
  color: #fff;
  font-size: 3.6rem;
  display: block;
  margin-bottom: 10px
}

.c-sitemapListUnit {
  margin-bottom: 40px
}

.c-sitemapListUnit.c-sitemapListUnit__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -6.66667%;
  margin-top: -80px
}

.c-sitemapListUnit.c-sitemapListUnit__col2>* {
  margin-top: 80px;
  margin-right: 6.25%;
  width: 43.75%
}

.c-sitemapList>:last-child {
  margin-bottom: 0!important
}

.c-sitemapList_item {
  padding-bottom: 20px;
  border-bottom: 1px dashed #e6e6e6;
  margin-bottom: 12px
}

.c-sitemapList_item>:last-child {
  margin-bottom: 0!important
}

.c-sitemapList_item a {
  display: inline-block
}

.c-sitemapList_item ul>:last-child {
  margin-bottom: 0!important
}

.c-sitemapList_item ul li {
  padding-left: 12px;
  position: relative;
  font-size: 1.4rem;
  margin-bottom: 4px
}

.c-sitemapList_item ul li:before {
  content: " ";
  position: absolute;
  top: .55em;
  left: 0;
  border-style: solid;
  border-color: transparent transparent transparent #0c63ba;
  border-width: 5px
}

.c-sitemapList_ttl {
  font-weight: 700;
  color: #0c63ba;
  padding-left: 30px;
  background-repeat: no-repeat;
  background-image: url(/assets/images/common/icon-arrow02.svg);
  background-position: top 5px left 0;
  margin-bottom: 13px;
  display: inline-block
}

.c-sitemapList_lv2 {
  padding-left: 30px
}

.c-sitemapList_lv2_ttl {
  font-weight: 700;
  margin-bottom: 4px;
  display: inline-block
}

.c-sitemapList_lv3 {
  padding-left: 15px
}

.c-newsList {
  margin-bottom: 40px
}

.c-newsList>:last-child {
  margin-bottom: 0!important
}

.c-newsList_item {
  padding: 20px;
  background: #eee;
  margin-bottom: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.c-newsList_item_heading {
  width: 220px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-right: 20px
}

.c-newsList_item_heading .c-label {
  margin-left: 10px
}

.c-newsList_item_body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.c-newsList_item_body a {
  color: #0c63ba;
  font-weight: 700
}

.c-newsList_item_body a:hover {
  text-decoration: underline
}

.c-tileList.c-tileList__col4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: 0;
  margin-top: 0
}

.c-tileList.c-tileList__col4>* {
  margin-top: 0;
  margin-right: 0;
  width: 25%
}

.c-tileList_img {
  position: relative
}

.c-tileList_img img {
  width: 100%
}

.c-tileList_img figcaption {
  position: absolute;
  bottom: 5px;
  left: 10px;
  color: #fff;
  font-weight: 700;
  font-size: 1.4rem
}

.c-employeeList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: 0;
  margin-top: 0
}

.c-employeeList>* {
  margin-top: 0;
  margin-right: 0;
  width: 16.66667%
}

.c-employeeList_item img {
  width: 100%
}

.c-employeeList_ttl {
  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;
  text-align: center;
  background-color: #174982;
  font-family: "Noto Serif JP", serif;
  color: #fff;
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1.5;
  padding: 0 10px
}

.c-inputList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -10px
}

.c-inputList>li {
  margin-top: 10px;
  margin-right: 30px
}

.c-inputList>li input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  visibility: hidden
}

.c-inputList>li label {
  display: inline-block;
  position: relative;
  padding-left: 20px
}

.c-inputList>li label:before {
  content: " ";
  position: absolute;
  top: .45em;
  width: 12px;
  height: 12px;
  background-color: #fff;
  border: 1px solid #b3b3b3;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  left: 0
}

.c-inputList>li input[type=checkbox]+label:before {
  border-radius: 2px
}

.c-inputList>li input[type=radio]+label:before {
  border-radius: 50%
}

.c-inputList>li input[type=checkbox]:checked+label:after {
  content: " ";
  position: absolute;
  top: .25em;
  left: 2px;
  width: 12px;
  height: 12px;
  background-image: url(/assets/images/common/icon_check.svg);
  background-size: cover
}

.c-inputList>li input[type=radio]:checked+label:after {
  content: " ";
  position: absolute;
  top: .65em;
  left: 3px;
  height: 6px;
  width: 6px;
  border-radius: 50%;
  background: #0c63ba
}

.c-inputList.c-inputList__col3>li {
  width: calc(100% / 3 - 30px)
}

.c-inputList.c-inputList__agree {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.c-inputList.c-inputList__agree>li {
  font-size: 1.4rem;
  margin-right: 0
}

.c-linkPanelUnit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.c-linkPanelUnit>* {
  width: 100%;
  margin-right: 1px
}

.c-linkPanelUnit>:last-child {
  margin-right: 0
}

.c-linkPanel {
  position: relative;
  height: 330px;
  overflow: hidden;
  display: block
}

.c-linkPanel:hover .c-linkPanel_img {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.c-linkPanel:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .5);
  z-index: 1
}

.c-linkPanel_img {
  position: absolute;
  -o-object-fit: cover;
  object-fit: cover;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  font-family: 'object-fit: cover; object-position: 50% 50%;'
}

.c-linkPanel_txt {
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-size: 3.4rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 2
}

.c-heroPanel {
  background-color: #fff
}

.c-heroPanel_img img {
  width: 100%
}

.c-heroPanel_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.c-heroPanel_heading {
  color: #fff;
  -ms-flex-preferred-size: 300px;
  flex-basis: 300px;
  background-color: #0c63ba;
  text-align: center;
  padding: 30px
}

.c-heroPanel_ttl {
  font-weight: 700;
  font-size: 2.6rem;
  line-height: 1.3;
  margin-top: -5px;
  margin-bottom: 27px
}

.c-heroPanel_btn {
  margin-top: 0
}

.c-heroPanel_body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 40px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.c-halfBanner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #0c63ba;
  background-color: #fff;
  position: relative
}

.c-halfBanner:before {
  content: " ";
  position: absolute;
  right: 2px;
  bottom: 2px;
  border-width: 5px;
  border-color: transparent #0c63ba #0c63ba transparent;
  border-style: solid
}

.c-halfBanner:hover {
  background-color: #0c63ba;
  color: #fff
}

.c-halfBanner:hover .c-halfBanner_img img {
  opacity: 1
}

.c-halfBanner>* {
  -webkit-box-flex: 50%;
  -ms-flex: 50%;
  flex: 50%
}

.c-halfBanner .c-halfBanner_img img {
  width: 100%;
  opacity: 1
}

.c-halfBanner_body {
  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
}

.c-halfBanner_body>:last-child {
  margin-bottom: 0!important
}

.c-halfBanner_ttl {
  font-size: 2.6rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  line-height: 1.3
}

.c-definitionTableUnit {
  margin-bottom: 80px
}

.c-definitionTableUnit .c-definitionTable {
  margin-bottom: 0
}

.c-definitionTableUnit.c-definitionTableUnit__col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -40px;
  margin-top: -40px
}

.c-definitionTableUnit.c-definitionTableUnit__col2>* {
  margin-top: 40px;
  margin-right: 40px;
  width: calc((100%/2) - 40px)
}

.c-definitionTable {
  margin-bottom: 40px
}

.c-definitionTable>:last-child {
  margin-bottom: 0!important
}

.c-definitionTable.c-definitionTable__vt .c-definitionTable_cell>* {
  vertical-align: top
}

.c-definitionTable.c-definitionTable__form {
  border-top: 1px solid #ccc;
  padding-top: 20px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_cell>* {
  vertical-align: top
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_cell>dt {
  width: 400px;
  border-color: #e6e6e6;
  padding-top: 10px;
  padding-bottom: 10px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_cell>dd {
  padding-right: 0;
  padding-bottom: 0
}

.c-definitionTable.c-definitionTable__form input[type=text] {
  background-color: #fafafa;
  -webkit-box-shadow: 0 1px 0 inset #e0e0e0;
  box-shadow: 0 1px 0 inset #e0e0e0;
  border: 1px solid #f3f3f3;
  width: 100%;
  height: 40px;
  line-height: 38px;
  font-family: "Noto Sans JP", sans-serif;
  padding: 0 15px;
  font-size: 1.6rem
}

.c-definitionTable.c-definitionTable__form input[type=text].is-small {
  width: 225px
}

.c-definitionTable.c-definitionTable__form input[type=text].is-middle {
  width: 637px
}

.c-definitionTable.c-definitionTable__form textarea {
  background-color: #fafafa;
  border: 1px solid #f3f3f3;
  font-family: "Noto Sans JP", sans-serif;
  width: 100%;
  height: 140px;
  padding: 15px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_date>* {
  margin-right: 12px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_date>:last-child {
  margin-right: 0
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_date input[type=text] {
  background-image: url(/assets/images/common/icon-calender.svg);
  background-repeat: no-repeat;
  background-position: right 5px top 50%;
  width: 135px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_date select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fafafa;
  background-image: url(/assets/images/common/icon-select.svg);
  background-repeat: no-repeat;
  background-position: right 0 top 0;
  -webkit-box-shadow: 0 1px 0 inset #e0e0e0;
  box-shadow: 0 1px 0 inset #e0e0e0;
  border: 1px solid #f3f3f3;
  width: 73px;
  height: 40px;
  line-height: 38px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  padding-left: 5px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_fileList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: -10px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_fileList>li {
  margin-top: 10px;
  margin-right: 50px
}

.c-definitionTable.c-definitionTable__form .c-definitionTable_fileList>li:nth-child(even) {
  margin-right: 0
}

.c-definitionTable_cell {
  display: table;
  width: 100%;
  padding-bottom: 20px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 20px
}

.c-definitionTable_cell>* {
  display: table-cell;
  vertical-align: middle
}

.c-definitionTable_cell>dt {
  width: 145px;
  font-weight: 700;
  color: #0c63ba;
  border-right: 1px solid #0c63ba;
  position: relative
}

.c-definitionTable_cell>dt small {
  color: #333;
  display: block;
  font-size: 1.2rem
}

.c-definitionTable_cell>dd {
  font-size: 1.4rem;
  padding: 0 30px 4px
}

.c-definitionTable_cell>dd>:last-child {
  margin-bottom: 0!important
}

.c-definitionTable_childUnit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

.c-definitionTable_childUnit p+p {
  margin-top: 0
}

.c-definitionTable_childUnit>:not(:last-child) {
  margin-right: 30px
}

.c-definitionTable_inputItemUnit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px
}

.c-definitionTable_inputItemUnit>:last-child {
  margin-bottom: 0!important
}

.c-definitionTable_inputItemUnit>:last-child {
  margin-right: 0
}

.c-definitionTable_inputItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 20px
}

.c-definitionTable_inputItem dt {
  min-width: 2em;
  margin-right: 15px
}

.c-definitionTable_required:before {
  content: "必須";
  position: absolute;
  right: 20px;
  top: 10px;
  color: #fff;
  background-color: #c0272d;
  border-radius: 2px;
  width: 50px;
  line-height: 1;
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: .04em;
  padding: 4px 0
}

.c-definitionTable_required span {
  color: #333;
  display: block;
  font-size: 1.4rem;
  font-weight: 400
}

.c-definitionTable_salestrends {
  margin-top: 40px
}

.c-definitionTable_salestrends img {
  width: 100%
}

.c-accordionList {
  margin-bottom: 100px
}

.c-accordionList_item {
  border-radius: 4px;
  border: 2px solid #0c63ba
}

.c-accordionList_item:not(:last-child) {
  margin-bottom: 30px
}

.c-accordionList_item dl dt {
  padding: 15px
}

.c-accordionList_item dl dd {
  padding: 15px;
  background-color: #efefef
}

.c-modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, .7);
  padding: 100px 20px
}

.c-modal .c-modal_content {
  position: relative;
  border: 4px solid #0c63ba;
  background-color: #fff;
  border-radius: 8px;
  padding: 36px;
  background-color: #fff;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto
}

.c-modal .c-modal_content>:last-child {
  margin-bottom: 0!important
}

.c-modal .c-modal_close {
  position: absolute;
  right: 0;
  bottom: calc(100% + 20px);
  font-size: 0
}

.c-modalVideoOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, .85);
  z-index: 10000
}

.c-modalVideo {
  position: fixed;
  width: 944px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10001;
  background-color: #000
}

.c-modalVideo_inner {
  position: relative;
  padding-top: 56.14407%
}

.c-modalVideo_close {
  position: absolute;
  right: 0;
  bottom: calc(100% + 10px)
}

.c-modalVideo iframe, .c-modalVideo video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.js-accordion_btn {
  cursor: pointer
}

.js-accordion_body {
  display: none
}

.js-spAccordion_body {
  display: none
}

.js-spMenuBtn {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 9999;
  width: 50px;
  height: 50px;
  background-color: #0c63ba;
  font-size: 0
}

.is-headerWhite:not(.is-fixed) .js-spMenuBtn {
  background-color: transparent
}

.js-spMenuBtn span {
  position: absolute;
  left: 8px;
  display: block;
  width: 34px;
  height: 2px;
  background-color: #fff;
  -webkit-transition: .5s;
  transition: .5s;
  border-radius: 3px
}

.js-spMenuBtn span:first-child {
  top: 14px
}

.js-spMenuBtn span:nth-child(2) {
  top: 24px
}

.js-spMenuBtn span:nth-child(3) {
  top: 34px
}

.js-spMenuBtn.is-active span:first-child {
  -webkit-transform: translateY(9px) rotate(-225deg);
  transform: translateY(9px) rotate(-225deg)
}

.js-spMenuBtn.is-active span:nth-child(2) {
  -webkit-transform: translateY(0) rotate(225deg);
  transform: translateY(0) rotate(225deg)
}

.js-spMenuBtn.is-active span:nth-child(3) {
  opacity: 0
}

.js-tab .js-tab_content>* {
  display: none
}

.js-tab .js-tab_content>:first-child {
  display: block
}

.js-modal {
  display: none
}

.js-inview.js-fadeDown {
  -webkit-transition: .8s ease-in-out;
  transition: .8s ease-in-out;
  opacity: 0;
  -webkit-transform: translateY(-50px);
  transform: translateY(-50px)
}

.js-inview.js-fadeDown.is-animeted {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0)
}

#contents {
  position: relative
}

#contents .panel {
  float: left;
  margin: 10px
}

.video-container {
  position: fixed;
  margin: 0 auto;
  width: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 9999
}

.video-wrap {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  background: #fff
}

.video-wrap video {
  min-width: 100%;
  min-height: 100vh;
  position: absolute
}

.noScl {
  overflow: hidden
}

.c-skip {
  position: fixed;
  bottom: 40px;
  right: 40px;
  width: 110px;
  margin: 0
}

.c-bnrUnit {
  text-align: center;
  margin-bottom: 80px
}

.c-bnrUnit a {
  display: inline-block
}







/* “新” allianceここから*/

.c-borderImg_img_point_alli img{
  width: 100%;
}


.alliamce_contents{
  background-color: #ffee34;
}


.alliamce_contents img{
  width: 100%;
}

.alliamce_contents2{
  background-color: #000000;
}

.alliamce_contents2 img{
  width: 100%;
}

.alliamce_contents3{
  background:  linear-gradient(rgba(7, 62, 146, 1) , rgba(0, 156, 225, 1) );
}

.alliamce_contents3 img{
  width: 100%;
}

.alliamce_contents4 img{
  width: 100%;
}
@media screen and (max-width: 768px) {
.alliamce_contents5 img{
  display: none;
}
}

/* 
.c-pointBox_ttl_alli {
  font-weight: 600;
  font-size: 2.8rem;
  font-family: "Noto Serif JP", serif;
  color: #0c63ba;
  line-height: 1.3;
  margin-bottom: 30px
}



.c-borderImg_img_point_alli img{
    width: 100%;
    height:auto;
    margin-bottom: 50px;
}


.alliance_midashi {
 padding-top: 50px;
}


.alliance_midashi h2 {
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 35px;
  color: #fff;
  background-color: #0c63ba;
  padding-left: 15px;
  position: relative;
  text-align: center;
  padding: 15px 10px 15px 10px!important ;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
}




.alliance_midashiYELLO h2 {
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 35px ;
  color: #000000;
  background-color: #FFEE34;
  padding-left: 15px;
  position: relative;
  text-align: center;
  padding: 15px 10px 15px 10px!important ;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
}




.c-pointBox_ttl_allinew {
  font-weight: 600;
  font-size: 4.0rem;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
  color: #BD2720;
  line-height: 1.5;
  margin-bottom: 30px
}

.c-pointBox_allinew_img {
    margin: 0px 20px 0px 20px;
}


.c-pointBox_alli {  
    display: flex;
    margin-bottom: 60px;
    width: 100%;
}

.c-pointBox_alli_a{  
    display: flex;
    margin-bottom: 60px;
    width: 100%;
}

.c-pointBox_body_alli h4{
    font-weight: 600;
    font-size: 3.0rem;
    color: #ffffff;
    background-color: #BD2720; 
    padding: 10px 30px 10px 30px;
    margin-bottom: 20px;
}


.c-pointBox_body_alli {
padding: 0px 0px 0px 40px;
}


.l-wrap_alli {
  width: 1200px;
  margin-left: auto;
  margin-right: auto
}

.l-wrap_alli p {
  font-size: 120%;
}



.c-pointBox_ttl_alli {
  font-weight: 600;
  font-size: 2.8rem;
  font-family: "Noto Serif JP", serif;
  color: #0c63ba;
  line-height: 1.3;
  margin-bottom: 30px
}

.c-pointBox_txtbig_alli {
  margin-bottom: 30px;
}

p.c-pointBox_txtbig_alli {
  font-size: 150%!important;
  font-weight: bold;
  color: #FFFFFF;
}
 
.toiawase{
 font-weight: 600;
  font-size: 3.0rem;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
  color: #FFFFFF;
  line-height: 1.3;
  margin-bottom: 30px;
 display: flex;
}


.l-container02_u-bgGrayallinew_alli {
  background-color: #0c63ba;
  padding: 60px 0px 10px 0px;
}


.l-container02_u-bgGrayallinew2 {
  background-color: #FFEE34;
}

h4.alliancenew_point{
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 2;
  margin-bottom: 15px;
  text-align: center;
  padding: 15px 10px 10px 10px!important ;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
}


.allibtn{
    text-align: center;
    padding-bottom: 60px;
}

p.c-pointBox_txt_alli {
  font-size: 120%;
    margin-bottom: 30px;
}


.sp_br {
  display: none; 
}*/




/*ここからsp*/
/* 
@media screen and (max-width: 768px) {
  .sp_br {
    display: block; 
  }

.c-pointBox_allinew_img {
    margin: 0px 0px 0px 35px;
}

.alliance_midashi h2 {
  font-size: 3.0rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 35px;
  color: #fff;
  background-color: #0c63ba;
  padding-left: 0px;
  position: relative;
  text-align: center;
  padding: 15px 10px 15px 10px!important ;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
}

.l-wrap_alli {
  width: 100%;
  margin-left: auto;
  margin-right: auto
}

.c-pointBox_ttl_allinew {
  font-weight: 600;
  font-size: 2.3rem;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
  color: #BD2720;
  line-height: 1.5;
  text-align: center;
  margin: 15px 0px 15px 0px;
  padding: 0px 0px 0px 0px
}

.alliance_midashiYELLO h2 {
  font-size: 3.0rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 35px;
  color: #000000;
  background-color: #FFEE34;
  padding-left: 0px;
  position: relative;
  text-align: center;
  padding: 15px 10px 15px 10px!important ;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
}

p.c-pointBox_txtbig_alli {
  font-size: 130%!important;
  font-weight: bold;
  color: #FFFFFF;
margin-left: 40px;
}

.c-pointBox_alli2 img{
  justify-content: center;
  display: block;
}

.c-pointBox_alli {  
    display:block;
    margin-bottom: 60px;
    padding:0px 30px 0px 0px;
    width: 100%;
}

.c-pointBox_alli_a{  
    margin-bottom: 60px;
    padding:0px 30px 0px 0px;
    width: 100%;
    flex-direction: column-reverse;
}


.c-pointBox_alli3 {  
    display:block;
    margin-bottom: 5px;
    width: 100%;
}

h4.alliancenew_point{
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.7;
  margin-bottom: 15px;
  text-align: center;
  padding: 15px 10px 10px 10px!important ;
  font-family: "ヒラギノ角ゴ ProN W6", sans-serif;
}

.c-pointBox_body_alli h4{
    font-weight: 600;
    font-size: 1.7rem;
    line-height: 1.5;
    text-align: center;
    color: #ffffff;
    background-color: #BD2720; 
    padding: 10px 30px 10px 30px;
    margin-bottom: 15px;
}

  .c-borderImg_img_point {
   padding: 30px 0px 30px 0px;
   margin: 15px 30px 50px 30px;
  }
  
.daen {
  display: flex;
  justify-content: center;
  align-items: center;
}
  
.c-pointBox_alli_img {
  margin: 10px 0px 10px 30px;
  }
  }



“新” allianceここまで*/







.p-projectMV {
  width: 100%;
  height: 100vh;
  margin-bottom: 20px;
  background: url(/assets/images/home/mv_project_bg.jpg) 50% 50% no-repeat;
  background-size: cover
}

.p-projectMV_wrap {
  position: relative;
  width: 100%;
  max-width: 1500px;
  height: 100%;
  margin: 0 auto;
  overflow: hidden
}

.p-projectMV_vis {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  max-width: 1797px;
  max-height: 90%
}

.p-projectMV_vis img {
  width: 100%
}

.p-projectMV02 {
  width: 100%;
  height: 100vh
}

.p-projectMV02_wrap {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden
}

.p-projectMV02_main {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center
}

.p-projectMV02_main p:nth-child(2) {
  margin: 50px 0
}

.p-projectMV02_movie {
  position: relative;
  width: 100%;
  height: 100%
}

.p-projectMV02_movie:before {
  content: ' ';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background: url(/assets/images/home/bg-dot.svg)
}

.p-projectMV02_movie video {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%
}

.p-projectMV02_scl {
  position: absolute;
  bottom: 60px;
  left: 50%;
  z-index: 1;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%)
}

.p-topMV {
  position: relative;
  min-height: 550px;
  overflow: hidden
}

.p-topMV .p-topMV_ttl {
  width: 100%;
  position: absolute;
  top: 42%;
  left: 0;
  z-index: 100;
  font-family: "Noto Serif JP", serif;
  font-weight: 100;
  font-size: 10.5rem;
  font-size: 5.468vw;
  -webkit-transition: .5s;
  transition: .5s;
  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;
  color: #fff
}

.p-topMV .p-topMV_ttl span {
  display: inline-block;
  font-size: 0;
  margin: 0 30px;
  position: relative;
  top: 10px
}

.p-topMV .p-topMV_bgMain {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  visibility: hidden;
  -webkit-transition: 0s visibility .2;
  transition: 0s visibility .2
}

.p-topMV .p-topMV_bgMain:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 37, 87, .1);
  z-index: 2
}

.p-topMV .p-topMV_bgMain_item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-transition: opacity .7s linear, -webkit-transform 1.5s linear .5s;
  transition: opacity .7s linear, -webkit-transform 1.5s linear .5s;
  transition: opacity .7s linear, transform 1.5s linear .5s;
  transition: opacity .7s linear, transform 1.5s linear .5s, -webkit-transform 1.5s linear .5s;
  opacity: 0;
  z-index: 0
}

.p-topMV .p-topMV_bgMain_item:nth-child(1) {
  background-image: url(/assets/images/home/mv01.jpg)
}

.p-topMV .p-topMV_bgMain_item:nth-child(2) {
  background-image: url(/assets/images/home/mv02.jpg)
}

.p-topMV .p-topMV_bgMain_item:nth-child(3) {
  background-image: url(/assets/images/home/mv03.jpg)
}

.p-topMV .p-topMV_bgMain_item.is-active {
  z-index: 1
}

.p-topMV_bgList {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1
}

.p-topMV_bgList_item {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%
}

.p-topMV_bgList_item:nth-child(1) {
  background-image: url(/assets/images/home/mv01-small.jpg)
}

.p-topMV_bgList_item:nth-child(2) {
  background-image: url(/assets/images/home/mv02-small.jpg)
}

.p-topMV_bgList_item:nth-child(3) {
  background-image: url(/assets/images/home/mv03-small.jpg)
}

.p-topMV_bgList_item_btn {
  display: none;
  position: relative;
  z-index: 2
}

.p-topMV .p-topMV_itemUnit {
  position: absolute;
  bottom: 17.5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  z-index: 50;
  width: 100%
}

.p-topMV .p-topMV_item {
  width: 100%;
  text-align: center
}

.p-topMV .p-topMV_item .p-topMV_item_close {
  display: none;
  width: 30px
}

.p-topMV .p-topMV_item .p-topMV_item_ttl {
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  font-size: 3rem;
  color: #fff;
  text-shadow: 0 0 10px #000;
  line-height: 1.5;
  padding-bottom: 29px;
  position: relative
}

.p-topMV .p-topMV_item .p-topMV_item_ttl:before {
  content: " ";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: rotate(45deg) translateX(-50%);
  transform: rotate(45deg) translateX(-50%);
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  width: 7px;
  height: 7px;
  -webkit-transition: .7s opacity ease-in-out;
  transition: .7s opacity ease-in-out
}

.p-topMV .p-topMV_item .p-topMV_item_body {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: .7s max-height ease-in-out;
  transition: .7s max-height ease-in-out
}

.p-topMV .p-topMV_item .p-topMV_item_btnList li {
  text-align: center
}

.p-topMV .p-topMV_item .p-topMV_item_btnList li:not(:last-child) {
  margin-bottom: 30px
}

.p-topMV .p-topMV_item .p-topMV_item_btnList li a {
  display: inline-block;
  font-weight: 700;
  width: 265px;
  border-radius: 20px;
  font-size: 1.4rem;
  color: #fff;
  border: 2px solid #0c63ba;
  background-color: #0c63ba;
  line-height: 1.3;
  padding: 7px 9px 11px
}

.p-topMV .p-topMV_item .p-topMV_item_btnList li a:hover {
  background-color: #fff;
  color: #0c63ba
}

.p-topMV.is-open .p-topMV_ttl {
  top: 19%
}

.p-topMV.is-open .p-topMV_bgMain {
  visibility: visible
}

.p-topMV.is-open .p-topMV_bgMain_item.is-active {
  opacity: 1;
  -webkit-transform: scale(1.15);
  transform: scale(1.15)
}

.p-topTtl {
  text-align: center;
  font-size: 5.2rem;
  font-family: "Noto Serif JP", serif;
  margin-bottom: 45px;
  margin-top: -15px;
  line-height: 1.25
}

.p-topTtl_sml {
  font-size: 4rem
}

.p-topCm {
  border-top: 1px solid #b3b3b3;
  padding: 90px 0 0
}

.p-topCm_logo {
  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;
  -webkit-column-gap: 70px;
  -moz-column-gap: 70px;
  column-gap: 70px
}

.p-topNews {
  padding: 90px 0;
  margin-bottom: 75px;
  background: #dddcdb
}

.p-topNews_btm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-top: 30px
}

.p-topNews_inner {
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 80px;
  -moz-column-gap: 80px;
  column-gap: 80px
}

.p-topNews_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.p-topNews_item dt {
  margin-right: 15px
}

.p-topNews_item dt time {
  font-size: 1.4rem;
  margin-right: 20px
}

.p-topNews_item dt .c-label {
  min-width: 110px
}

.p-topNews_item dd {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.p-topNews_item dd a {
  position: relative;
  display: inline-block;
  font-size: 1.8rem;
  padding-right: 20px
}

.p-topNews_item dd a:hover {
  text-decoration: underline
}

.p-topNews_item dd a:before {
  content: " ";
  position: absolute;
  top: 12px;
  right: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-right: 1px solid #11161f;
  border-bottom: 1px solid #11161f;
  width: 7px;
  height: 7px;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topNews_list li:not(:first-child) {
  margin-top: 20px
}

.p-topNews_btn {
  border-radius: 15px;
  width: 80px;
  border: 1px solid #11161f;
  display: block;
  text-align: center;
  font-size: 1.4rem
}

.p-topNews_btn:hover {
  background-color: #11161f;
  color: #fff
}

.p-topPhilosophy {
  padding: 150px 0;
  background-image: url(/assets/images/home/bg-philosophy.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%
}

.p-topPhilosophy_content {
  background-color: rgba(255, 255, 255, .8);
  padding: 80px 50px;
  background-image: url(/assets/images/home/image_f_three.png);
  background-position: left 20px bottom 45px;
  background-repeat: no-repeat;
  background-size: 276px auto;
  position: relative
}

.p-topPhilosophy_icon {
  position: absolute;
  top: 30px;
  right: 30px
}

.p-topPhilosophy_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 50px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}

.p-topPhilosophy_heading>:last-child {
  margin-bottom: 0!important
}

.p-topPhilosophy_heading .c-pinpointTtl {
  margin-bottom: 40px;
  margin-top: 0
}

.p-topPhilosophy_txt {
  font-size: 1.8rem;
  text-align: center;
  line-height: 1.77778;
  margin-bottom: 52px
}

.p-topPhilosophy_btn {
  text-align: center;
  margin-top: 0
}

.p-topMov {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 95px
}

.p-topMov_inner {
  position: relative;
  padding-top: 56.25%;
  height: 0
}

.p-topMov iframe, .p-topMov video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0
}

.p-topMov__col2 {
  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
}

.p-topMov__col2>* {
  width: 48%
}

.p-topMov_body {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  text-align: center
}

.p-topMov_body p+p {
  margin-top: 0
}

.p-topLpBanner {
  margin-top: 95px;
  margin-bottom: 80px;
  text-align: center
}

.p-topLpBanner_link {
  display: inline-block
}

.p-topLpBanner_img {
  display: block
}

.p-topPickup {
  padding: 80px 0 100px
}

.p-topPickup_ttl {
  margin-bottom: 10px;
  text-align: center;
  font-size: 6.5rem;
  font-family: "Noto Serif JP", serif;
  line-height: 1.25
}

.p-topPickup_ttl span {
  font-size: 5rem
}

.p-topPickup_bnr {
  padding: 0 10px;
  text-align: center
}

.p-topPickup_bnr small {
  font-size: 1.4rem
}

.p-topPickup_employee {
  margin-top: 45px;
  padding: 0 10px;
  text-align: center
}

.p-topSDGs {
  padding: 150px 0 75px
}

.p-topSDGs_txt {
  text-align: center;
  margin-bottom: 78px;
  font-size: 1.8rem;
  line-height: 1.77778
}

.p-topSDGs_img {
  margin-bottom: 85px;
  display: block
}

.p-topSDGs_employee {
  margin-top: 95px;
  padding: 0 10px;
  text-align: center
}

.p-topPerformance_wrap {
  padding: 35px 0 55px;
  text-align: center;
  background-image: url(/assets/images/home/bg-performance02.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 100%
}

.p-topPerformance_txt {
  margin-bottom: 55px;
  font-size: 2.8rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.77778;
  color: #e60044
}

.p-topPerformance_txt>span {
  display: block;
  font-size: 1.6rem;
  font-weight: 400;
  color: #333
}

.p-topPerformance_main {
  position: relative
}

.p-topPerformance_cardUnit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-top: -15px
}

.p-topPerformance_cardUnit>* {
  margin-top: 15px;
  margin-right: 15px;
  width: calc((100%/4) - 15px)
}

.p-topPerformance_badge {
  margin-bottom: 20px
}

.p-topPerformance_ambassador {
  position: absolute;
  right: -120px;
  bottom: -55px
}

.p-topPerformance_card {
  border: 2px solid #fff;
  background-color: rgba(29, 43, 83, .7);
  text-align: center;
  color: #fff;
  padding: 30px 0 35px
}

.p-topPerformance_card_ttl {
  line-height: 1.25;
  font-weight: 700;
  font-size: 2.9rem;
  margin-bottom: 15px;
  font-family: "Noto Serif JP", serif
}

.p-topPerformance_card_ttl span {
  display: block;
  font-size: 2.5rem;
  margin-bottom: 8px
}

.p-topPerformance_card_num {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 20px;
  font-family: "Noto Serif JP", serif
}

.p-topPerformance_card_num em {
  font-size: 5.8rem;
  font-weight: 700
}

.p-topPerformance_card_note {
  margin-top: 0;
  font-size: 1.4rem
}

.p-topSystem {
  position: relative;
  margin-top: 135px;
  padding: 105px 0 90px;
  background: #e1f1dd;
}

.p-topSystem_inner {
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1
}

.p-topSystem_ttl {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 5.2rem;
  line-height: 1.5;
  font-family: "Noto Serif JP", serif;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr
}

.p-topSystem_ttl:before {
  content: " ";
  position: absolute;
  left: 50%;
  margin-left: -2px;
  width: 4px;
  height: 150px;
  bottom: calc(100% + 30px);
  background-color: #0c63ba
}

.p-topSystem_slideWrapper {
  margin-right: calc(-1 * (50vw - (100% / 2)))
}
.p-topSystem_slide_list > .p-topSystem_slide_list_item_img {
  position: absolute;
}
.p-topSystem_slide {
  margin-bottom: 60px
}

.p-topSystem_slide_list_item {
  position: relative;
  padding-left: 300px;
  padding-bottom: 270px
}

.p-topSystem_slide_list_item_img {
  height: 750px
}

.p-topSystem_slide_list_item_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  font-family: "object-fit: cover; object-position: 50% 50%;"
}

.p-topSystem_slide_list_item_desc {
  width: 567px;
  background-color: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 60px
}

.p-topSystem_slide_list_item_desc_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 22px;
}
[aria-hidden="false"] .p-topSystem_slide_list_item_desc p,
[aria-hidden="false"] .p-topSystem_slide_list_item_desc_heading figure {
  animation-name: fadein;
  animation-duration: 0.8s;
}
[aria-hidden="true"] .p-topSystem_slide_list_item_desc_heading figure {
  animation-name: fadeout;
  animation-duration: 0.8s;
}
@keyframes fadein{
  from{
    opacity: 0;
  }
  to{
    opacity: 1;
  }
}
@keyframes fadeout{
  from{
    opacity: 1;
  }
  to{
    opacity: 0;
  }
}
.p-topSystem_slide_list_item_desc_time {
  color: grey;
  margin-left: 20px;
  font-size: 1.4rem
}

.p-topSystem_slide_list_item_desc_ttl {
  font-weight: 700;
  font-size: 2.8rem;
  color: #4d4d4d;
  line-height: 1.3;
  margin-bottom: 18px
}

.p-topSystem_slide_list_item_desc_def dt {
  font-size: 2.1rem
}

.p-topSystem_slide_list_item_desc_def dd {
  font-size: 2.6rem
}

.p-topSystem_slide_list_item_btn {
  position: absolute;
  left: 600px;
  bottom: 0
}

.p-topSystem_slide_list .slick-arrow {
  position: absolute;
  overflow: hidden;
  text-indent: -9999px;
  background-image: url(/assets/images/common/icon-arrow.svg);
  height: 40px;
  width: 40px;
  background-size: cover;
  background-repeat: no-repeat;
  bottom: 10px;
  z-index: 10
}

.p-topSystem_slide_list .slick-arrow.slick-prev {
  left: 905px;
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1)
}

.p-topSystem_slide_list .slick-arrow.slick-next {
  left: 975px
}

.p-topSystem_slideNav {
  margin-bottom: 69px
}

.p-topSystem_slideNav .slick-slide {
  padding-top: 10px
}

.p-topSystem_slideNav .slick-slide li {
  position: relative;
  font-size: 0;
  display: block!important
}

.p-topSystem_slideNav .slick-slide li:after, .p-topSystem_slideNav .slick-slide li:before {
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topSystem_slideNav .slick-slide li:after {
  content: " ";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-width: 10px;
  border-color: transparent transparent #0c63ba transparent;
  border-style: solid;
  bottom: 100%
}

.p-topSystem_slideNav .slick-slide li:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 4px solid #0c63ba
}

.p-topSystem_slideNav .slick-slide li img {
  width: 100%
}

.p-topSystem_slideNav .slick-slide .c-label {
  position: absolute;
  top: 4px;
  left: 4px;
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topSystem_slideNav .slick-slide.slick-current li:after, .p-topSystem_slideNav .slick-slide.slick-current li:before {
  opacity: 1
}

.p-topSystem_slideNav .slick-slide.slick-current .c-label {
  opacity: 1
}

.p-topSystem_slideNav .slick-track {
  margin-left: auto
}

.p-topSystem_subTtl {
  font-size: 4rem;
  line-height: 1.3;
  font-family: "Noto Serif JP", serif;
  margin-bottom: 53px
}

.p-topSystem_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.p-topSystem_list li a {
  display: block;
  width: 154px;
  height: 154px;
  -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
  border-radius: 50%;
  text-align: center;
  padding-top: 34px;
  background-repeat: no-repeat;
  background-color: #fff;
  background-position: left 50% bottom 27px;
  background-size: 25px auto;
  background-image: url(/assets/images/common/icon-arrow.svg)
}

.p-topSystem_list li a:active, .p-topSystem_list li a:focus, .p-topSystem_list li a:hover {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .2);
  box-shadow: 0 0 10px rgba(0, 0, 0, .2)
}

.p-topSystem_list li a span {
  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;
  font-size: 1.8rem;
  color: #0c63ba;
  line-height: 1.55556
}

.p-topVoice {
  position: relative;
  margin-top: 135px;
  padding: 105px 0 90px;
  background: #f1f1f1
}

.p-topVoice_inner {
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1
}

.p-topVoice_ttl {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 4.5rem;
  line-height: 1.5;
  font-family: "Noto Serif JP", serif;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr
}

.p-topVoice_ttl:before {
  content: " ";
  position: absolute;
  left: 50%;
  margin-left: -2px;
  width: 4px;
  height: 150px;
  bottom: calc(100% + 30px);
  background-color: #0c63ba
}

.p-topVoice_slideWrapper {
  margin-right: calc(-1 * (50vw - (100% / 2)))
}

.p-topVoice_slide {
  margin-bottom: 60px
}

.p-topVoice_slide_list_item {
  position: relative;
  padding-left: 300px;
  padding-bottom: 270px
}

.p-topVoice_slide_list_item_img {
  height: 750px
}

.p-topVoice_slide_list_item_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  font-family: "object-fit: cover; object-position: 50% 50%;"
}

.p-topVoice_slide_list_item_desc {
  width: 567px;
  background-color: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 60px
}

.p-topVoice_slide_list_item_desc_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 22px
}

.p-topVoice_slide_list_item_desc_time {
  color: grey;
  margin-left: 20px;
  font-size: 1.4rem
}

.p-topVoice_slide_list_item_desc_ttl {
  font-weight: 700;
  font-size: 2.8rem;
  color: #4d4d4d;
  line-height: 1.3;
  margin-bottom: 18px
}

.p-topVoice_slide_list_item_desc_def dt {
  font-size: 2.1rem
}

.p-topVoice_slide_list_item_desc_def dd {
  font-size: 2.6rem
}

.p-topVoice_slide_list_item_btn {
  position: absolute;
  left: 600px;
  bottom: 0
}

.p-topVoice_slide_list .slick-arrow {
  position: absolute;
  overflow: hidden;
  text-indent: -9999px;
  background-image: url(/assets/images/common/icon-arrow.svg);
  height: 40px;
  width: 40px;
  background-size: cover;
  background-repeat: no-repeat;
  bottom: 10px;
  z-index: 10
}

.p-topVoice_slide_list .slick-arrow.slick-prev {
  left: 905px;
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1)
}

.p-topVoice_slide_list .slick-arrow.slick-next {
  left: 975px
}

.p-topVoice_slideNav {
  margin-bottom: 69px
}

.p-topVoice_slideNav .slick-slide {
  padding-top: 10px
}

.p-topVoice_slideNav .slick-slide li {
  position: relative;
  font-size: 0;
  display: block!important
}

.p-topVoice_slideNav .slick-slide li:after, .p-topVoice_slideNav .slick-slide li:before {
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topVoice_slideNav .slick-slide li:after {
  content: " ";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-width: 10px;
  border-color: transparent transparent #0c63ba transparent;
  border-style: solid;
  bottom: 100%
}

.p-topVoice_slideNav .slick-slide li:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 4px solid #0c63ba
}

.p-topVoice_slideNav .slick-slide li img {
  width: 100%
}

.p-topVoice_slideNav .slick-slide .c-label {
  position: absolute;
  top: 4px;
  left: 4px;
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topVoice_slideNav .slick-slide.slick-current li:after, .p-topVoice_slideNav .slick-slide.slick-current li:before {
  opacity: 1
}

.p-topVoice_slideNav .slick-slide.slick-current .c-label {
  opacity: 1
}

.p-topVoice_slideNav .slick-track {
  margin-left: auto
}

.p-topVoice_subTtl {
  font-size: 4rem;
  line-height: 1.3;
  font-family: "Noto Serif JP", serif;
  margin-bottom: 53px
}

.p-topVoice_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.p-topVoice_list li a {
  display: block;
  width: 154px;
  height: 154px;
  -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
  border-radius: 50%;
  text-align: center;
  padding-top: 34px;
  background-repeat: no-repeat;
  background-color: #fff;
  background-position: left 50% bottom 27px;
  background-size: 25px auto;
  background-image: url(/assets/images/common/icon-arrow.svg)
}

.p-topVoice_list li a:active, .p-topVoice_list li a:focus, .p-topVoice_list li a:hover {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .2);
  box-shadow: 0 0 10px rgba(0, 0, 0, .2)
}

.p-topVoice_list li a span {
  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;
  font-size: 1.8rem;
  color: #0c63ba;
  line-height: 1.55556
}

.p-topMovie {
  margin-top: 100px;
  padding: 95px 0 120px;
  background: #dce3ef
}

.p-topCaseOther {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 75px
}

.p-topCaseOther_list li {
  position: relative;
  overflow: hidden
}

.p-topCaseOther_list li a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%
}

.p-topCaseOther_list li a>span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1;
  color: #fff;
  font-size: 3.4rem;
  text-align: center;
  font-family: "Noto Serif JP", serif
}

.p-topCaseOther_list li a:before {
  content: ' ';
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background: rgba(0, 38, 87, .4);
  -webkit-transition: .5s;
  transition: .5s
}

.p-topCaseOther_list li a:after {
  content: ' ';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topCaseOther_list li a:hover:before {
  opacity: 0
}

.p-topCaseOther_list li a:hover:after {
  -webkit-transform: scale(1.1);
  transform: scale(1.1)
}

.p-topCaseOther_list:nth-child(1) {
  width: 33.3%
}

.p-topCaseOther_list:nth-child(1) li:nth-child(1) {
  height: 633px;
  border-bottom: 1px solid #fff
}

.p-topCaseOther_list:nth-child(1) li:nth-child(1) a:after {
  background-image: url(/assets/images/home/image-case-other01.jpg)
}

.p-topCaseOther_list:nth-child(1) li:nth-child(2) {
  height: 270px
}

.p-topCaseOther_list:nth-child(1) li:nth-child(2) a:after {
  background-image: url(/assets/images/home/image-case-other04.jpg)
}

.p-topCaseOther_list:nth-child(2) {
  width: 27%;
  border: solid #fff;
  border-width: 0 1px
}

.p-topCaseOther_list:nth-child(2) li:nth-child(1) {
  height: 319px;
  border-bottom: 1px solid #fff
}

.p-topCaseOther_list:nth-child(2) li:nth-child(1) a:after {
  background-image: url(/assets/images/home/image-case-other02.jpg)
}

.p-topCaseOther_list:nth-child(2) li:nth-child(2) {
  height: 584px
}

.p-topCaseOther_list:nth-child(2) li:nth-child(2) a:after {
  background-image: url(/assets/images/home/image-case-other05.jpg)
}

.p-topCaseOther_list:nth-child(3) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 39.7%
}

.p-topCaseOther_list:nth-child(3) li:nth-child(1) {
  width: 100%;
  height: 528px;
  border-bottom: 1px solid #fff
}

.p-topCaseOther_list:nth-child(3) li:nth-child(1) a:after {
  background-image: url(/assets/images/home/image-case-other03.jpg)
}

.p-topCaseOther_list:nth-child(3) li:nth-child(2), .p-topCaseOther_list:nth-child(3) li:nth-child(3) {
  width: calc(100% / 2);
  height: 375px
}

.p-topCaseOther_list:nth-child(3) li:nth-child(2) a:after {
  background-image: url(/assets/images/home/image-case-other06.jpg)
}

.p-topCaseOther_list:nth-child(3) li:nth-child(3) {
  border-left: 1px solid #fff
}

.p-topCaseOther_list:nth-child(3) li:nth-child(3) a:after {
  background-image: url(/assets/images/home/image-case-other07.jpg)
}

.p-topCase {
  position: relative;
  padding: 230px 0 0
}

.p-topCase:before {
  content: " ";
  position: absolute;
  top: 100px;
  left: 0;
  height: calc(100% - 200px);
  width: calc(100% - 100px);
  background-color: #ebebeb
}

.p-topCase_inner {
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1
}

.p-topCase_ttl {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 5.2rem;
  line-height: 1.5;
  font-family: "Noto Serif JP", serif;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr
}

.p-topCase_ttl:before {
  content: " ";
  position: absolute;
  left: 50%;
  margin-left: -2px;
  width: 4px;
  height: 150px;
  bottom: calc(100% + 30px);
  background-color: #0c63ba
}

.p-topCase_slideWrapper {
  margin-right: calc(-1 * (50vw - (100% / 2)))
}

.p-topCase_slide {
  margin-bottom: 60px
}

.p-topCase_slide_list_item {
  position: relative;
  padding-left: 300px;
  padding-bottom: 90px
}

.p-topCase_slide_list_item_img {
  height: 750px
}

.p-topCase_slide_list_item_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  font-family: "object-fit: cover; object-position: 50% 50%;"
}

.p-topCase_slide_list_item_desc {
  width: 567px;
  background-color: #fff;
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 60px
}

.p-topCase_slide_list_item_desc_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 22px
}

.p-topCase_slide_list_item_desc_time {
  color: grey;
  margin-left: 20px;
  font-size: 1.4rem
}

.p-topCase_slide_list_item_desc_ttl {
  font-weight: 700;
  font-size: 2.8rem;
  color: #4d4d4d;
  line-height: 1.3;
  margin-bottom: 18px
}

.p-topCase_slide_list_item_desc_def dt {
  font-size: 2.1rem
}

.p-topCase_slide_list_item_desc_def dd {
  font-size: 2.6rem
}

.p-topCase_slide_list_item_btn {
  position: absolute;
  left: 600px;
  bottom: 0
}

.p-topCase_slide_list .slick-arrow {
  position: absolute;
  overflow: hidden;
  text-indent: -9999px;
  background-image: url(/assets/images/common/icon-arrow.svg);
  height: 40px;
  width: 40px;
  background-size: cover;
  background-repeat: no-repeat;
  bottom: 10px;
  z-index: 10
}

.p-topCase_slide_list .slick-arrow.slick-prev {
  left: 905px;
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1)
}

.p-topCase_slide_list .slick-arrow.slick-next {
  left: 975px
}

.p-topCase_slideNav {
  margin-bottom: 69px
}

.p-topCase_slideNav .slick-slide {
  padding-top: 10px
}

.p-topCase_slideNav .slick-slide li {
  position: relative;
  font-size: 0;
  display: block!important
}

.p-topCase_slideNav .slick-slide li:after, .p-topCase_slideNav .slick-slide li:before {
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topCase_slideNav .slick-slide li:after {
  content: " ";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-width: 10px;
  border-color: transparent transparent #0c63ba transparent;
  border-style: solid;
  bottom: 100%
}

.p-topCase_slideNav .slick-slide li:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 4px solid #0c63ba
}

.p-topCase_slideNav .slick-slide li img {
  width: 100%
}

.p-topCase_slideNav .slick-slide .c-label {
  position: absolute;
  top: 4px;
  left: 4px;
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s
}

.p-topCase_slideNav .slick-slide.slick-current li:after, .p-topCase_slideNav .slick-slide.slick-current li:before {
  opacity: 1
}

.p-topCase_slideNav .slick-slide.slick-current .c-label {
  opacity: 1
}

.p-topCase_slideNav .slick-track {
  margin-left: auto
}

.p-topCase_subTtl {
  font-size: 4rem;
  line-height: 1.3;
  font-family: "Noto Serif JP", serif;
  margin-bottom: 53px
}

.p-topCase_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.p-topCase_list li a {
  display: block;
  width: 154px;
  height: 154px;
  -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
  box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
  border-radius: 50%;
  text-align: center;
  padding-top: 34px;
  background-repeat: no-repeat;
  background-color: #fff;
  background-position: left 50% bottom 27px;
  background-size: 25px auto;
  background-image: url(/assets/images/common/icon-arrow.svg)
}

.p-topCase_list li a:active, .p-topCase_list li a:focus, .p-topCase_list li a:hover {
  -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, .2);
  box-shadow: 0 0 10px rgba(0, 0, 0, .2)
}

.p-topCase_list li a span {
  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;
  font-size: 1.8rem;
  color: #0c63ba;
  line-height: 1.55556
}


/*後日下消して復活させる
.p-choose {
  padding: 0 20px 100px;
  color: #fff;
  text-align: center;
  background-position: left 50% bottom 0;
  background-image: url(/assets/images/company/bg-choose.jpg);
  background-repeat: no-repeat
}*/


.p-choose {
  padding: 0 20px 100px;
  color: #fff;
  text-align: center;
  background-position: left 50% bottom 0;
  background-repeat: no-repeat
}

.p-choose_inner {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto
}

.p-choose_ttl {
  font-size: 4.7rem;
  font-weight: 500;
  line-height: 1.3;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  margin-top: -15px;
  margin-bottom: 177px;
  color: #0c63ba
}

.p-choose_btnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 60px
}

.p-choose_btnList_item {
  width: 300px
}

.p-choose_btnList_item>:last-child {
  margin-bottom: 0!important
}

.p-choose_btnList_item:not(:last-child) {
  margin-right: 30px
}

.p-choose_btnList_item .c-btn {
  width: 100%
}

.p-choose_banner {
  display: block;
  background-color: #fff;
  padding: 40px 15px
}

.p-disasterSect {
  padding: 120px 0;
  text-align: center;
  background-size: cover;
  background-position: 50% 50%;
  background-image: url(/assets/images/common/bg-disaster.jpg);
  text-align: center
}

.p-disasterSect_note, .p-disasterSect_ttl, .p-disasterSect_txt {
  color: #fff
}

.p-disasterSect_ttl {
  font-size: 3.6rem;
  line-height: 1.66667;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  margin-top: -16px;
  margin-bottom: 60px
}

.p-disasterSect_note {
  font-size: 1.2rem;
  margin-top: 35px;
  margin-bottom: 55px
}

.p-case {
  background-color: #eee;
  padding: 100px 0 20px
}

.p-case_ttl {
  font-weight: 600;
  color: #0c63ba;
  font-size: 3.6rem;
  text-align: center;
  line-height: 1.3;
  font-family: "Noto Serif JP", serif;
  margin-top: -10px;
  margin-bottom: 25px
}

.p-case_txt {
  font-size: 2rem;
  text-align: center;
  margin-bottom: 35px
}

.p-case_slide .slick-slide img {
  display: inline-block!important
}

.p-case_slide .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-right: -10px;
  margin-top: 20px
}

.p-case_slide .slick-dots li {
  max-width: 85px;
  margin-right: 10px;
  position: relative;
  cursor: pointer
}

.p-case_slide .slick-dots li:before {
  content: " ";
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(12, 99, 186, .6);
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: .5s;
  transition: .5s
}

.p-case_slide .slick-dots li.slick-active:before {
  opacity: 1
}

.p-greeting {
  padding: 150px 0;
  text-align: center;
  color: #fff;
  background-image: url(/assets/images/company/profile/bg-greeting.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-position: 50% 50%
}

.p-greeting_ttl {
  line-height: 1.3;
  font-size: 3.4rem;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  margin-top: -11px;
  margin-bottom: 40px
}

.p-greeting_txt {
  line-height: 2.5625;
  margin-bottom: 65px
}

.p-greeting_company {
  font-size: 1.4rem;
  margin-bottom: 15px
}

.p-greeting_name {
  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;
  line-height: 1
}

.p-greeting_name span {
  font-size: 2.9rem;
  margin-left: 20px
}

.p-greeting p+p {
  margin-top: 0
}

.p-frontierCustomer {
  position: relative;
  z-index: 1;
  padding-bottom: 80px
}

.p-frontierCustomer:before {
  content: " ";
  position: absolute;
  top: -80px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  width: 1260px;
  height: 200px
}

.p-frontierCustomer_inner {
  position: relative;
  z-index: 1
}

.p-contactSect {
  padding: 100px 0;
  text-align: center;
  background-size: cover;
  background-position: 50% 50%;
  background-image: url(/assets/images/common/bg-contact.jpg);
  text-align: center;
  color: #fff
}

.p-contactSect_ttl {
  font-size: 3.6rem;
  line-height: 1.5;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  margin-top: -14px;
  margin-bottom: 45px
}

.p-contactSect_txt {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 60px
}

.p-contactSect_btnList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center
}

.p-contactSect_btnList_item:not(:last-child) {
  margin-right: 40px
}

.p-news_heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 30px
}

.p-news_heading .c-label {
  margin-left: 20px
}

.p-news_ttl {
  font-size: 3.6rem;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  line-height: 1.3;
  margin-top: -10px;
  color: #0c63ba;
  margin-bottom: 35px
}

.p-news_img {
  margin-bottom: 60px
}

.p-news_youtube {
  position: relative;
  width: 100%;
  height: 0;
  margin-bottom: 30px;
  padding-top: 56.25%
}

.p-news_youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.p-news_content {
  margin-bottom: 80px;
  padding-bottom: 80px;
  border-bottom: 1px solid #ccc
}

.p-news_content>:last-child {
  margin-bottom: 0!important
}

.p-news_content>:first-child {
  margin-top: 0
}

.p-news_content h2 {
  font-size: 2.4rem;
  font-weight: 700;
  color: #0c63ba;
  text-align: left;
  border-bottom: 2px solid #0c63ba;
  margin-bottom: 30px;
  padding-bottom: 12px;
  line-height: 1.5
}


.p-news_content h3 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 35px;
  color: #0c63ba;
  padding-left: 15px;
  position: relative
  
}


.p-news_content h3:before {
  content: " ";
  position: absolute;
  left: 0;
  top: .24em;
  background-color: #0c63ba;
  width: 5px;
  height: calc(100% - 6px)
}

.p-news_content h4 {
  margin-bottom: 25px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #0c63ba;
  line-height: 1.4375
}

.p-news_content p {
  margin-bottom: 30px
}

.p-news_content_googlemap {
  position: relative;
  width: 100%;
  padding-top: 70%
}

.p-news_content_googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.p-modelhouse {
  position: relative;
  max-width: 1260px;
  margin: 0 auto;
  padding: 120px 0;
  z-index: 1;
  margin-top: -80px;
  background-color: #fff;
  width: calc(100% - 40px)
}

.p-modelhouse_ttl {
  font-size: 4.6rem;
  font-weight: 600;
  color: #0c63ba;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  margin-top: -11px;
  margin-bottom: 70px;
  line-height: 1.24138
}

.p-modelhouse_img {
  margin-bottom: 78px
}

.p-modelhouse_txt {
  font-size: 2rem;
  line-height: 2;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  text-align: center
}

.p-sdgs {
  position: relative;
  max-width: 1260px;
  margin: 0 auto;
  padding: 120px 0;
  z-index: 1;
  margin-top: -80px;
  background-color: #fff;
  width: calc(100% - 40px)
}

.p-sdgs_about {
  margin-bottom: 115px
}

.p-sdgs_ttl {
  font-size: 4.6rem;
  font-weight: 600;
  color: #0c63ba;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  margin-top: -11px;
  margin-bottom: 70px;
  line-height: 1.24138
}

.p-sdgs_img {
  margin-bottom: 78px;
  text-align: center
}

.p-sdgs_txt {
  font-size: 2rem;
  line-height: 2;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  text-align: center
}

.p-sdgs_attempt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -40px 0 0 -40px
}

.p-sdgs_case {
  width: 580px;
  margin: 40px 0 0 40px;
  border: 1px solid #ccc
}

.p-sdgs_inner {
  padding: 35px 39px
}

.p-sdgs_lead {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc
}

.p-sdgs_list {
  margin-bottom: 60px
}

.p-sdgs_list dt {
  margin-bottom: 10px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #0c63ba
}

.p-sdgs_list dd {
  padding-left: 1.5em;
  text-indent: -1.5em;
  font-size: 1.4rem
}

.p-sdgs_list dd:before {
  content: '・';
  margin-right: .5em
}

.p-sdgs_icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -10px 0 0 -10px
}

.p-sdgs_icon li {
  margin: 10px 0 0 10px
}

.p-sdgsSect {
  padding: 115px 0 220px;
  text-align: center;
  background-size: cover;
  background-position: 50% 50%;
  background-image: url(/assets/images/company/sdgs/bg-sdgs.jpg);
  text-align: center;
  color: #fff
}

.p-sdgsSect_iconList {
  margin-bottom: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.p-sdgsSect_iconList li:not(:last-child) {
  margin-right: 20px
}

.p-sdgsSect_ttl {
  font-size: 3.6rem;
  line-height: 1.5;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  margin-top: -14px;
  margin-bottom: 70px
}

.p-sdgsSect_txt {
  font-size: 2rem;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  line-height: 2
}

.p-afterPremium_pageTtl {
  min-height: 550px;
  background-size: cover;
  background-position: 50% 50%;
  color: #fff;
  padding-top: 85px;
  padding-bottom: 30px;
  background-image: url(/assets/images/company/afterpremium/mainvis.jpg)
}

.p-afterPremium_pageTtl_body {
  width: 1200px;
  margin-left: auto;
  margin-right: auto
}

.p-afterPremium_pageTtl_label {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 10px
}

.p-afterPremium_pageTtl_ttl {
  color: #fff;
  line-height: 1.37931;
  font-family: "Noto Serif JP", serif;
  font-size: 4.6rem;
  font-weight: 600;
  margin-bottom: 40px
}

.p-afterPremium_pageTtl_txt {
  font-size: 2rem;
  line-height: 1.75;
  margin-bottom: 45px
}

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

.p-afterPremium_pageTtl_btnList_item {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.p-afterPremium_pageTtl_btnList_item:not(:last-child) {
  margin-right: 30px
}

.p-afterPremium_pageTtl_btnList_btn {
  display: block;
  position: relative;
  background-color: #3fa657;
  color: #fff;
  padding-left: 90px;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-right: 50px;
  background-repeat: no-repeat;
  background-image: url(/assets/images/company/afterpremium/icon-down.svg);
  background-position: top 50% right 30px;
  line-height: 1;
  border-radius: 40px
}

.p-afterPremium_pageTtl_btnList_btn:hover {
  opacity: .7;
  color: #fff
}

.p-afterPremium_pageTtl_btnList_btn:before {
  content: " ";
  position: absolute;
  left: 0;
  top: 10px;
  width: 68px;
  background-repeat: no-repeat;
  background-image: url(/assets/images/company/afterpremium/icon-f.svg);
  left: 0;
  height: calc(100% - 20px);
  border-right: 1px solid #fff;
  background-position: 50% 50%
}

.p-afterPremium_pageTtl_btnList_btn__pink {
  background-color: #f58692
}

.p-afterPremium_pageTtl_btnList_btn__purple {
  background-color: #9263ba
}

.p-afterPremium_pageTtl_btnList_btn_label {
  display: block;
  font-size: 1.4rem;
  margin-bottom: 7px
}

.p-afterPremium_pageTtl_btnList_btn_ttl {
  display: block;
  font-weight: 700;
  font-size: 2.8rem
}

.p-serviceBox_unit>:last-child {
  margin-bottom: 0!important
}

.p-serviceBox {
  background-color: #fff;
  border: 2px solid #3fa657;
  padding: 48px 48px 0;
  margin-bottom: 40px
}

.p-serviceBox .p-serviceBox_heading {
  margin-bottom: 60px;
  margin-top: -10px;
  padding-bottom: 32px;
  border-bottom: 2px solid #3fa657
}

.p-serviceBox .p-serviceBox_heading_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 19px
}

.p-serviceBox .p-serviceBox_heading_ttl strong {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.3;
  font-family: "Noto Serif JP", serif;
  color: #3fa657
}

.p-serviceBox .p-serviceBox_heading_ttl span {
  display: inline-block;
  font-weight: 500;
  background-color: #3fa657;
  color: #fff;
  font-weight: 700;
  line-height: 1.3;
  border-radius: 4px;
  padding: 5px 5px 7px;
  margin-left: 25px
}

.p-serviceBox .p-serviceBox_heading_txt {
  font-size: 2.4rem;
  line-height: 1.5
}

.p-serviceBox_itemUnit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 60px
}

.p-serviceBox_itemUnit .p-serviceBox_item:last-child {
  margin-right: 0
}

.p-serviceBox_itemUnit .p-serviceBox_item:last-child:before {
  display: none
}

.p-serviceBox .p-serviceBox_item {
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-right: 60px
}

.p-serviceBox .p-serviceBox_item>:last-child {
  margin-bottom: 0!important
}

.p-serviceBox .p-serviceBox_item p+p {
  margin-top: 0
}

.p-serviceBox .p-serviceBox_item:before {
  content: " ";
  position: absolute;
  left: calc(100% + 30px);
  top: 0;
  height: 100%;
  width: 1px;
  background-color: #e6e6e6
}

.p-serviceBox .p-serviceBox_item_ttl {
  color: #3fa657;
  text-align: center;
  font-size: 2.6rem;
  line-height: 1.38462;
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  margin-top: -8px;
  margin-bottom: 25px;
  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
}

.p-serviceBox .p-serviceBox_item_subTtl {
  color: #3fa657;
  text-align: center;
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 700;
  margin-top: -8px!important;
  margin-bottom: 18px
}

.p-serviceBox .p-serviceBox_item_img {
  margin-bottom: 22px;
  text-align: center
}

.p-serviceBox .p-serviceBox_item_border {
  margin-bottom: 22px;
  border: 1px solid #e6e6e6;
  padding: 35px
}

.p-serviceBox .p-serviceBox_item_border>:last-child {
  margin-bottom: 0!important
}

.p-serviceBox .p-serviceBox_item_list {
  margin-bottom: 10px
}

.p-serviceBox .p-serviceBox_item_list>:last-child {
  margin-bottom: 0!important
}

.p-serviceBox .p-serviceBox_item_list.p-serviceBox_item_list__horiz {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -30px;
  margin-top: -17px
}

.p-serviceBox .p-serviceBox_item_list.p-serviceBox_item_list__horiz li {
  margin-right: 30px;
  margin-top: 17px;
  margin-bottom: 0
}

.p-serviceBox .p-serviceBox_item_list li {
  padding-left: 30px;
  position: relative;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 10px
}

.p-serviceBox .p-serviceBox_item_list li:before {
  content: " ";
  position: absolute;
  left: 0;
  top: .35em;
  width: 20px;
  height: 20px;
  background-color: #3fa657;
  border-radius: 4px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-image: url(/assets/images/company/afterpremium/icon-check.svg)
}

.p-serviceBox .p-serviceBox_point {
  margin: 0 -48px;
  padding: 28px;
  background-color: #f7fbf8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.p-serviceBox .p-serviceBox_point_heading {
  width: 410px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.p-serviceBox .p-serviceBox_point_heading:before {
  content: "POINT!";
  width: 85px;
  height: 85px;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1;
  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;
  background-color: #3fa657;
  color: #fff;
  border-radius: 50%;
  margin-right: 20px
}

.p-serviceBox .p-serviceBox_point_heading_inner {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.p-serviceBox .p-serviceBox_point_heading p+p {
  margin-top: 0
}

.p-serviceBox .p-serviceBox_point_label {
  font-size: 1.4rem
}

.p-serviceBox .p-serviceBox_point_ttl {
  font-size: 4rem;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  line-height: 1.2;
  color: #3fa657;
  margin-bottom: 3px
}

.p-serviceBox .p-serviceBox_point_txt {
  color: #3fa657;
  font-weight: 700
}

.p-serviceBox .p-serviceBox_point_body {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.p-serviceBox.p-serviceBox__pink {
  border-color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_heading {
  border-color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_heading_ttl strong {
  color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_heading_ttl span {
  background-color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_item:before {
  background-color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_item_ttl {
  color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_item_subTtl {
  color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_item_list li:before {
  background-color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_point_heading:before {
  background-color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_point_ttl {
  color: #f58692
}

.p-serviceBox.p-serviceBox__pink .p-serviceBox_point_txt {
  color: #f58692
}

.p-serviceBox.p-serviceBox__purple {
  border-color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_heading {
  border-color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_heading_ttl strong {
  color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_heading_ttl span {
  background-color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_item:before {
  background-color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_item_ttl {
  color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_item_subTtl {
  color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_item_list li:before {
  background-color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_point_heading:before {
  background-color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_point_ttl {
  color: #9263ba
}

.p-serviceBox.p-serviceBox__purple .p-serviceBox_point_txt {
  color: #9263ba
}

.p-optionCardUnit.p-optionCardUnit__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -30px;
  margin-top: -30px
}

.p-optionCardUnit.p-optionCardUnit__col3>* {
  margin-top: 30px;
  margin-right: 30px;
  width: calc((100%/3) - 30px)
}

.p-optionCard_ttl {
  text-align: center;
  margin-bottom: 10px
}

.p-optionCard_img {
  margin-bottom: 15px
}

.p-optionCard_img img {
  width: 100%
}

.voice-house-movie {
  text-align: center;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin-bottom: 30px;
}
.voice-house-movie iframe {
  position: relative;
  width: 1000px;
  height: 563px;
  margin: auto;
}
@media screen and (max-width:1000px) {
  .voice-house-movie iframe {
    position: absolute;
    top: 0;
    left:0;
    width: 100%;
    max-width: 1000px;
    height: 100%;
    margin: 0 auto 60px;
  }
}

.p-voiceList ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -60px 0 0 -30px
}

.p-voiceList li {
  width: calc((100% - 90px)/ 3);
  margin: 60px 0 0 30px
}

.p-voiceList li p {
  margin-top: 5px;
  font-size: 2.5rem;
  font-weight: 700;
  color: #174987
}
.p-voiceList.media-info li p {
  margin-top: 0;
  line-height: 1.3em;
}
.p-voiceList.media-info li .media-date {
  margin-top: 5px;
  font-size: 1em;
}

.p-voiceList li figure {
  display: block
}

.p-voiceList li figure img {
  width: 100%
}

.p-voiceList--movie figure {
  position: relative
}

.p-voiceList--movie figure:before {
  content: ' ';
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 1;
  width: 94px;
  height: 94px;
  background: url(/assets/images/voice/icon-start.svg) no-repeat;
  background-size: cover
}

.p-voiceGoals {
  margin-top: 90px
}

.p-voiceGoals_btn {
  margin-top: 56px;
  text-align: center
}

.p-voiceGoals_btn .c-btn {
  width: 100%;
  max-width: 468px
}

.p-topGallery {
  margin-bottom: 130px
}

.p-topGallery_list {
  margin-bottom: 55px
}

.p-topGallery_list ul {
  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;
  width: 100%;
  max-width: 1804px;
  margin: 0 auto
}

.p-topGallery_list li {
  width: calc(100% / 4)
}

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

.p-galleryList img {
  width: 100%
}

.p-galleryList ul {
  margin-top: -14px
}

.p-galleryList li {
  margin-top: 14px
}

.p-galleryList_wrap {
  width: 100%;
  max-width: 592px
}

.p-galleryList_col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}

.p-galleryList_col li {
  width: calc((100% - 14px)/ 2)
}

.p-interview_kv {
  padding: 64px 0;
  text-align: center;
  background: #dfdfdf
}

.p-interview_kv_title {
  margin-bottom: 70px;
  font-size: 3.6rem;
  font-weight: 700;
  color: #174987
}

.p-interview_wrap {
  width: 1000px;
  margin: 0 auto
}

.p-interview_profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 80px
}

.p-interview_profile_detail {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}

.p-interview_profile_detail_label {
  width: 280px;
  margin-bottom: 10px;
  padding: 8px 0 5px;
  text-align: center;
  background: #ffea33
}

.p-interview_profile_detail_label span {
  margin-left: .5em;
  font-size: 2rem;
  color: #28488d;
  line-height: 1;
  letter-spacing: .5em
}

.p-interview_profile_detail dl {
  margin-bottom: 15px
}

.p-interview_profile_detail dt {
  font-size: 3.5rem;
  font-weight: 700
}

.p-interview_profile_detail dd {
  font-size: 2.1rem
}

.p-interview_profile_detail dd:last-child {
  font-size: 3rem
}

.p-interview_profile_image {
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
  width: 500px;
  margin-right: 60px
}

.p-interview_qa_sect:not(:first-child) {
  margin-top: 60px
}

.p-interview_qa_title {
  margin-bottom: 25px;
  font-size: 3rem;
  font-weight: 700;
  color: #174987
}

.p-interview_qa_comment {
  font-size: 1.9rem
}

.p-interview_qa_image {
  margin-top: 90px
}

.interview01_profile.box-green {
  padding:30px;
  background-color: #008578;
  color:#fff;
}
.interview01_profile.box-green .interview01_profile-label {
  text-align: left;
  margin-bottom: 4.3rem;
}
.interview01_profile.box-green .interview01_profile-label span {
  background-color: #fff;
  color: #008578;
  padding: 5px 60px;
}
.interview01_profile.box-green .interview01_profile-label span em {
  display:inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 100 !important;
  transform: scaleX(1.3);
}
.interview01_profile.box-green .p-interview_profile_image {
  width:480px;
}
.interview01_profile.box-green .interview01_btn {
    color: #2c4384;
    background-color: #f9de4b;
    border-color: #f9de4b;
}

.p-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  background: #3eb157
}

.p-loading_wrap {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  text-align: center
}

.p-loading_logo img {
  width: 100%;
  max-width: 400px
}

.p-loading_loader {
  margin: 100px auto;
  font-size: 16px;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load5 1.1s infinite ease;
  animation: load5 1.1s infinite ease;
  -webkit-transform: translateZ(0);
  transform: translateZ(0)
}

.p-loading_disp {
  overflow: hidden
}

.p-loading_disp .l-wrapper {
  opacity: 0
}

@-webkit-keyframes load5 {
  0%, 100% {
    -webkit-box-shadow: 0 -2.6em 0 0 #fff, 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .5), -1.8em -1.8em 0 0 rgba(255, 255, 255, .7);
    box-shadow: 0 -2.6em 0 0 #fff, 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .5), -1.8em -1.8em 0 0 rgba(255, 255, 255, .7)
  }
  12.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .7), 1.8em -1.8em 0 0 #fff, 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .5);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .7), 1.8em -1.8em 0 0 #fff, 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .5)
  }
  25% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .5), 1.8em -1.8em 0 0 rgba(255, 255, 255, .7), 2.5em 0 0 0 #fff, 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .5), 1.8em -1.8em 0 0 rgba(255, 255, 255, .7), 2.5em 0 0 0 #fff, 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  37.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .5), 2.5em 0 0 0 rgba(255, 255, 255, .7), 1.75em 1.75em 0 0 #fff, 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .5), 2.5em 0 0 0 rgba(255, 255, 255, .7), 1.75em 1.75em 0 0 #fff, 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  50% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .5), 1.75em 1.75em 0 0 rgba(255, 255, 255, .7), 0 2.5em 0 0 #fff, -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .5), 1.75em 1.75em 0 0 rgba(255, 255, 255, .7), 0 2.5em 0 0 #fff, -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  62.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .5), 0 2.5em 0 0 rgba(255, 255, 255, .7), -1.8em 1.8em 0 0 #fff, -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .5), 0 2.5em 0 0 rgba(255, 255, 255, .7), -1.8em 1.8em 0 0 #fff, -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  75% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .5), -1.8em 1.8em 0 0 rgba(255, 255, 255, .7), -2.6em 0 0 0 #fff, -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .5), -1.8em 1.8em 0 0 rgba(255, 255, 255, .7), -2.6em 0 0 0 #fff, -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  87.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .5), -2.6em 0 0 0 rgba(255, 255, 255, .7), -1.8em -1.8em 0 0 #fff;
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .5), -2.6em 0 0 0 rgba(255, 255, 255, .7), -1.8em -1.8em 0 0 #fff
  }
}

@keyframes load5 {
  0%, 100% {
    -webkit-box-shadow: 0 -2.6em 0 0 #fff, 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .5), -1.8em -1.8em 0 0 rgba(255, 255, 255, .7);
    box-shadow: 0 -2.6em 0 0 #fff, 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .5), -1.8em -1.8em 0 0 rgba(255, 255, 255, .7)
  }
  12.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .7), 1.8em -1.8em 0 0 #fff, 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .5);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .7), 1.8em -1.8em 0 0 #fff, 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .5)
  }
  25% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .5), 1.8em -1.8em 0 0 rgba(255, 255, 255, .7), 2.5em 0 0 0 #fff, 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .5), 1.8em -1.8em 0 0 rgba(255, 255, 255, .7), 2.5em 0 0 0 #fff, 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  37.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .5), 2.5em 0 0 0 rgba(255, 255, 255, .7), 1.75em 1.75em 0 0 #fff, 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .5), 2.5em 0 0 0 rgba(255, 255, 255, .7), 1.75em 1.75em 0 0 #fff, 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  50% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .5), 1.75em 1.75em 0 0 rgba(255, 255, 255, .7), 0 2.5em 0 0 #fff, -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .5), 1.75em 1.75em 0 0 rgba(255, 255, 255, .7), 0 2.5em 0 0 #fff, -1.8em 1.8em 0 0 rgba(255, 255, 255, .2), -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  62.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .5), 0 2.5em 0 0 rgba(255, 255, 255, .7), -1.8em 1.8em 0 0 #fff, -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .5), 0 2.5em 0 0 rgba(255, 255, 255, .7), -1.8em 1.8em 0 0 #fff, -2.6em 0 0 0 rgba(255, 255, 255, .2), -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  75% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .5), -1.8em 1.8em 0 0 rgba(255, 255, 255, .7), -2.6em 0 0 0 #fff, -1.8em -1.8em 0 0 rgba(255, 255, 255, .2);
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .5), -1.8em 1.8em 0 0 rgba(255, 255, 255, .7), -2.6em 0 0 0 #fff, -1.8em -1.8em 0 0 rgba(255, 255, 255, .2)
  }
  87.5% {
    -webkit-box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .5), -2.6em 0 0 0 rgba(255, 255, 255, .7), -1.8em -1.8em 0 0 #fff;
    box-shadow: 0 -2.6em 0 0 rgba(255, 255, 255, .2), 1.8em -1.8em 0 0 rgba(255, 255, 255, .2), 2.5em 0 0 0 rgba(255, 255, 255, .2), 1.75em 1.75em 0 0 rgba(255, 255, 255, .2), 0 2.5em 0 0 rgba(255, 255, 255, .2), -1.8em 1.8em 0 0 rgba(255, 255, 255, .5), -2.6em 0 0 0 rgba(255, 255, 255, .7), -1.8em -1.8em 0 0 #fff
  }
}

.c-sampleHeader {
  position: fixed;
  z-index: 1000;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #fff;
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, .75);
  box-shadow: 0 0 15px rgba(0, 0, 0, .75)
}

.c-sampleHeader .c-sampleHeader_ttl {
  font-weight: 700;
  font-size: 2rem
}

.c-sampleHeader .c-sampleHeader_inr {
  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;
  padding: 10px
}

.c-sampleHeader .c-sampleHeader_utility {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.c-sampleHeader .c-sampleHeader_utility ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end
}

.c-sampleHeader .c-sampleHeader_utility ul li {
  margin-right: 20px
}

.c-sampleHeader .c-sampleHeader_utility ul li:last-child {
  margin-right: 0
}

.c-sampleTtl {
  font-size: 4rem;
  font-weight: 700;
  margin-bottom: 50px;
  text-align: center;
  margin-top: -15px
}

.c-sampleBtn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 10px 50px;
  background-color: #000;
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  border-radius: 10px
}

.c-sampleBtn:active, .c-sampleBtn:focus, .c-sampleBtn:hover {
  text-decolation: none;
  color: #fff
}

.c-sampleBoxUnit {
  margin-bottom: 50px
}

.c-sampleBoxUnit.c-sampleBoxUnit__col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -2.5%;
  margin-top: -50px
}

.c-sampleBoxUnit.c-sampleBoxUnit__col3>* {
  margin-top: 50px;
  margin-right: 2.43902%;
  width: 17.56098%
}

.c-sampleBoxUnit.c-sampleBoxUnit__col4 {
  margin-right: -1.66667%;
  margin-top: -20px
}

.c-sampleBoxUnit.c-sampleBoxUnit__col4>* {
  float: left;
  margin-top: 20px;
  margin-right: 1.63934%;
  width: 23.36066%
}

.c-sampleBox {
  background-color: #efefef;
  padding: 30px;
  -webkit-box-shadow: 0 0 5px #000;
  box-shadow: 0 0 5px #000
}

.c-accordionSample {
  border-bottom: 1px solid #efefef
}

.c-accordionSample .c-accordionSample_btn {
  padding: 15px
}

.c-accordionSample .c-accordionSample_btn.is-active {
  background-color: #efefef
}

.c-accordionSample .c-accordionSample_body {
  padding: 15px;
  background-color: #efefef
}

.c-tabBtnSample {
  margin-bottom: 50px
}

.c-tabBtnSample.c-tabBtnSample__col6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -4.16667%;
  margin-top: -50px
}

.c-tabBtnSample.c-tabBtnSample__col6>* {
  margin-top: 50px;
  margin-right: 4%;
  width: 12.66667%
}

.c-tabBtnSample a {
  display: block;
  background-color: #efefef;
  padding: 10px;
  text-align: center;
  border-radius: 5px
}

.c-tabBtnSample a.is-active {
  background-color: #000
}

.c-sampleFooter {
  position: relative;
  background-color: #0b318f;
  text-align: center;
  padding: 50px 10px
}

.c-sampleFooter .c-sampleFooter_ttl {
  font-weight: 700;
  font-size: 2rem;
  color: #fff
}

.js-more_items>:nth-child(n+5) {
  display: none
}

.c-sampleModal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, .75)
}

.c-sampleModal .c-sampleModal_inner {
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 50px;
  padding-bottom: 50px
}

.c-sampleModal .c-sampleModal_content {
  background-color: #fff;
  padding: 50px
}

.u-fwb {
  font-weight: 700!important
}

.u-tal {
  text-align: left!important
}

.u-tac {
  text-align: center!important
}

.u-tar {
  text-align: right!important
}

.u-underline {
  text-decoration: underline!important
}

.u-centerring {
  margin-left: auto;
  margin-right: auto
}

.u-colorBase {
  color: #333!important
}

.u-colorTheme {
  color: #0c63ba!important
}

.u-colorRed {
  color: #e33124!important
}

.u-bgTheme {
  background-color: #0c63ba!important
}

.u-bgGray {
  background-color: #eee!important
}

.u-bgGray2 {
  background-color: #eee!important
}

.u-bgPoint {
  background-color: #0c63ba!important;
  position: relative
}

.u-bgPoint:before {
  content: " ";
  position: absolute;
  bottom: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  border-width: 28px;
  border-color: transparent transparent #0c63ba transparent;
  border-style: solid
}

.u-fsSmall {
  font-size: 1.2rem
}

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

.u-w100 {
  width: 100%!important
}

.u-mbSmall {
  margin-bottom: 20px
}

.u-mbNormal {
  margin-bottom: 40px
}

.u-mbMedium {
  margin-bottom: 60px
}

.u-mbLarge {
  margin-bottom: 80px
}

.u-mbExLarge {
  margin-bottom: 120px
}

.u-mb0 {
  margin-bottom: 0!important
}

.u-mb5 {
  margin-bottom: 5px!important
}

.u-mb10 {
  margin-bottom: 10px!important
}

.u-mb15 {
  margin-bottom: 15px!important
}

.u-mb20 {
  margin-bottom: 20px!important
}

.u-mb25 {
  margin-bottom: 25px!important
}

.u-mb30 {
  margin-bottom: 30px!important
}

.u-mb35 {
  margin-bottom: 35px!important
}

.u-mb40 {
  margin-bottom: 40px!important
}

.u-mb45 {
  margin-bottom: 45px!important
}

.u-mb50 {
  margin-bottom: 50px!important
}

.u-mb55 {
  margin-bottom: 55px!important
}

.u-mb60 {
  margin-bottom: 60px!important
}

.u-mb65 {
  margin-bottom: 65px!important
}

.u-mb70 {
  margin-bottom: 70px!important
}

.u-mb75 {
  margin-bottom: 75px!important
}

.u-mb80 {
  margin-bottom: 80px!important
}

.u-mb85 {
  margin-bottom: 85px!important
}

.u-mb90 {
  margin-bottom: 90px!important
}

.u-mb95 {
  margin-bottom: 95px!important
}

.u-mb100 {
  margin-bottom: 100px!important
}

.u-mt0 {
  margin-top: 0!important
}

.u-mt5 {
  margin-top: 5px!important
}

.u-mt10 {
  margin-top: 10px!important
}

.u-mt15 {
  margin-top: 15px!important
}

.u-mt20 {
  margin-top: 20px!important
}

.u-mt25 {
  margin-top: 25px!important
}

.u-mt30 {
  margin-top: 30px!important
}

.u-mt35 {
  margin-top: 35px!important
}

.u-mt40 {
  margin-top: 40px!important
}

.u-mt45 {
  margin-top: 45px!important
}

.u-mt50 {
  margin-top: 50px!important
}

.u-mt55 {
  margin-top: 55px!important
}

.u-mt60 {
  margin-top: 60px!important
}

.u-mt65 {
  margin-top: 65px!important
}

.u-mt70 {
  margin-top: 70px!important
}

.u-mt75 {
  margin-top: 75px!important
}

.u-mt80 {
  margin-top: 80px!important
}

.u-mt85 {
  margin-top: 85px!important
}

.u-mt90 {
  margin-top: 90px!important
}

.u-mt95 {
  margin-top: 95px!important
}

.u-mt100 {
  margin-top: 100px!important
}

.u-mbLast {
  margin-bottom: 80px
}

.u-pb0 {
  padding-bottom: 0!important
}

.u-pb5 {
  padding-bottom: 5px!important
}

.u-pb10 {
  padding-bottom: 10px!important
}

.u-pb15 {
  padding-bottom: 15px!important
}

.u-pb20 {
  padding-bottom: 20px!important
}

.u-pb25 {
  padding-bottom: 25px!important
}

.u-pb30 {
  padding-bottom: 30px!important
}

.u-pb35 {
  padding-bottom: 35px!important
}

.u-pb40 {
  padding-bottom: 40px!important
}

.u-pb45 {
  padding-bottom: 45px!important
}

.u-pb50 {
  padding-bottom: 50px!important
}

.u-pb55 {
  padding-bottom: 55px!important
}

.u-pb60 {
  padding-bottom: 60px!important
}

.u-pb65 {
  padding-bottom: 65px!important
}

.u-pb70 {
  padding-bottom: 70px!important
}

.u-pb75 {
  padding-bottom: 75px!important
}

.u-pb80 {
  padding-bottom: 80px!important
}

.u-pb85 {
  padding-bottom: 85px!important
}

.u-pb90 {
  padding-bottom: 90px!important
}

.u-pb95 {
  padding-bottom: 95px!important
}

.u-pb100 {
  padding-bottom: 100px!important
}

.u-pt0 {
  padding-top: 0!important
}

.u-pt5 {
  padding-top: 5px!important
}

.u-pt10 {
  padding-top: 10px!important
}

.u-pt15 {
  padding-top: 15px!important
}

.u-pt20 {
  padding-top: 20px!important
}

.u-pt25 {
  padding-top: 25px!important
}

.u-pt30 {
  padding-top: 30px!important
}

.u-pt35 {
  padding-top: 35px!important
}

.u-pt40 {
  padding-top: 40px!important
}

.u-pt45 {
  padding-top: 45px!important
}

.u-pt50 {
  padding-top: 50px!important
}

.u-pt55 {
  padding-top: 55px!important
}

.u-pt60 {
  padding-top: 60px!important
}

.u-pt65 {
  padding-top: 65px!important
}

.u-pt70 {
  padding-top: 70px!important
}

.u-pt75 {
  padding-top: 75px!important
}

.u-pt80 {
  padding-top: 80px!important
}

.u-pt85 {
  padding-top: 85px!important
}

.u-pt90 {
  padding-top: 90px!important
}

.u-pt95 {
  padding-top: 95px!important
}

.u-pt100 {
  padding-top: 100px!important
}

.u-pr0 {
  padding-right: 0!important
}

.u-pr5 {
  padding-right: 5px!important
}

.u-pr10 {
  padding-right: 10px!important
}

.u-pr15 {
  padding-right: 15px!important
}

.u-pr20 {
  padding-right: 20px!important
}

.u-pr25 {
  padding-right: 25px!important
}

.u-pr30 {
  padding-right: 30px!important
}

.u-pr35 {
  padding-right: 35px!important
}

.u-pr40 {
  padding-right: 40px!important
}

.u-pr45 {
  padding-right: 45px!important
}

.u-pr50 {
  padding-right: 50px!important
}

.u-pr55 {
  padding-right: 55px!important
}

.u-pr60 {
  padding-right: 60px!important
}

.u-pr65 {
  padding-right: 65px!important
}

.u-pr70 {
  padding-right: 70px!important
}

.u-pr75 {
  padding-right: 75px!important
}

.u-pr80 {
  padding-right: 80px!important
}

.u-pr85 {
  padding-right: 85px!important
}

.u-pr90 {
  padding-right: 90px!important
}

.u-pr95 {
  padding-right: 95px!important
}

.u-pr100 {
  padding-right: 100px!important
}

.u-pl0 {
  padding-left: 0!important
}

.u-pl5 {
  padding-left: 5px!important
}

.u-pl10 {
  padding-left: 10px!important
}

.u-pl15 {
  padding-left: 15px!important
}

.u-pl20 {
  padding-left: 20px!important
}

.u-pl25 {
  padding-left: 25px!important
}

.u-pl30 {
  padding-left: 30px!important
}

.u-pl35 {
  padding-left: 35px!important
}

.u-pl40 {
  padding-left: 40px!important
}

.u-pl45 {
  padding-left: 45px!important
}

.u-pl50 {
  padding-left: 50px!important
}

.u-pl55 {
  padding-left: 55px!important
}

.u-pl60 {
  padding-left: 60px!important
}

.u-pl65 {
  padding-left: 65px!important
}

.u-pl70 {
  padding-left: 70px!important
}

.u-pl75 {
  padding-left: 75px!important
}

.u-pl80 {
  padding-left: 80px!important
}

.u-pl85 {
  padding-left: 85px!important
}

.u-pl90 {
  padding-left: 90px!important
}

.u-pl95 {
  padding-left: 95px!important
}

.u-pl100 {
  padding-left: 100px!important
}

.u-mh0 {
  max-height: 0!important
}

.u-mh1 {
  max-height: 1px!important
}

.u-mh2 {
  max-height: 2px!important
}

.u-mh3 {
  max-height: 3px!important
}

.u-mh4 {
  max-height: 4px!important
}

.u-mh5 {
  max-height: 5px!important
}

.u-mh6 {
  max-height: 6px!important
}

.u-mh7 {
  max-height: 7px!important
}

.u-mh8 {
  max-height: 8px!important
}

.u-mh9 {
  max-height: 9px!important
}

.u-mh10 {
  max-height: 10px!important
}

.u-mh11 {
  max-height: 11px!important
}

.u-mh12 {
  max-height: 12px!important
}

.u-mh13 {
  max-height: 13px!important
}

.u-mh14 {
  max-height: 14px!important
}

.u-mh15 {
  max-height: 15px!important
}

.u-mh16 {
  max-height: 16px!important
}

.u-mh17 {
  max-height: 17px!important
}

.u-mh18 {
  max-height: 18px!important
}

.u-mh19 {
  max-height: 19px!important
}

.u-mh20 {
  max-height: 20px!important
}

.u-mh21 {
  max-height: 21px!important
}

.u-mh22 {
  max-height: 22px!important
}

.u-mh23 {
  max-height: 23px!important
}

.u-mh24 {
  max-height: 24px!important
}

.u-mh25 {
  max-height: 25px!important
}

.u-mh26 {
  max-height: 26px!important
}

.u-mh27 {
  max-height: 27px!important
}

.u-mh28 {
  max-height: 28px!important
}

.u-mh29 {
  max-height: 29px!important
}

.u-mh30 {
  max-height: 30px!important
}

.u-mh31 {
  max-height: 31px!important
}

.u-mh32 {
  max-height: 32px!important
}

.u-mh33 {
  max-height: 33px!important
}

.u-mh34 {
  max-height: 34px!important
}

.u-mh35 {
  max-height: 35px!important
}

.u-mh36 {
  max-height: 36px!important
}

.u-mh37 {
  max-height: 37px!important
}

.u-mh38 {
  max-height: 38px!important
}

.u-mh39 {
  max-height: 39px!important
}

.u-mh40 {
  max-height: 40px!important
}

.u-mh41 {
  max-height: 41px!important
}

.u-mh42 {
  max-height: 42px!important
}

.u-mh43 {
  max-height: 43px!important
}

.u-mh44 {
  max-height: 44px!important
}

.u-mh45 {
  max-height: 45px!important
}

.u-mh46 {
  max-height: 46px!important
}

.u-mh47 {
  max-height: 47px!important
}

.u-mh48 {
  max-height: 48px!important
}

.u-mh49 {
  max-height: 49px!important
}

.u-mh50 {
  max-height: 50px!important
}

.u-mh51 {
  max-height: 51px!important
}

.u-mh52 {
  max-height: 52px!important
}

.u-mh53 {
  max-height: 53px!important
}

.u-mh54 {
  max-height: 54px!important
}

.u-mh55 {
  max-height: 55px!important
}

.u-mh56 {
  max-height: 56px!important
}

.u-mh57 {
  max-height: 57px!important
}

.u-mh58 {
  max-height: 58px!important
}

.u-mh59 {
  max-height: 59px!important
}

.u-mh60 {
  max-height: 60px!important
}

.u-mh61 {
  max-height: 61px!important
}

.u-mh62 {
  max-height: 62px!important
}

.u-mh63 {
  max-height: 63px!important
}

.u-mh64 {
  max-height: 64px!important
}

.u-mh65 {
  max-height: 65px!important
}

.u-mh66 {
  max-height: 66px!important
}

.u-mh67 {
  max-height: 67px!important
}

.u-mh68 {
  max-height: 68px!important
}

.u-mh69 {
  max-height: 69px!important
}

.u-mh70 {
  max-height: 70px!important
}

.u-mh71 {
  max-height: 71px!important
}

.u-mh72 {
  max-height: 72px!important
}

.u-mh73 {
  max-height: 73px!important
}

.u-mh74 {
  max-height: 74px!important
}

.u-mh75 {
  max-height: 75px!important
}

.u-mh76 {
  max-height: 76px!important
}

.u-mh77 {
  max-height: 77px!important
}

.u-mh78 {
  max-height: 78px!important
}

.u-mh79 {
  max-height: 79px!important
}

.u-mh80 {
  max-height: 80px!important
}

.u-mh81 {
  max-height: 81px!important
}

.u-mh82 {
  max-height: 82px!important
}

.u-mh83 {
  max-height: 83px!important
}

.u-mh84 {
  max-height: 84px!important
}

.u-mh85 {
  max-height: 85px!important
}

.u-mh86 {
  max-height: 86px!important
}

.u-mh87 {
  max-height: 87px!important
}

.u-mh88 {
  max-height: 88px!important
}

.u-mh89 {
  max-height: 89px!important
}

.u-mh90 {
  max-height: 90px!important
}

.u-mh91 {
  max-height: 91px!important
}

.u-mh92 {
  max-height: 92px!important
}

.u-mh93 {
  max-height: 93px!important
}

.u-mh94 {
  max-height: 94px!important
}

.u-mh95 {
  max-height: 95px!important
}

.u-mh96 {
  max-height: 96px!important
}

.u-mh97 {
  max-height: 97px!important
}

.u-mh98 {
  max-height: 98px!important
}

.u-mh99 {
  max-height: 99px!important
}

.u-mh100 {
  max-height: 100px!important
}

@media only screen and (max-width:768px) {
  body {
    position: relative;
    min-width: 320px;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    padding-top: 50px
  }
  .l-wrapper {
    font-size: 1.4rem
  }
  .l-wrap {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .l-wrap.l-wrap__small {
    width: auto
  }
  .l-2col {
    display: block
  }
  .l-2col_main {
    width: 100%
  }
  .l-2col_side {
    margin-top: 40px;
    width: 100%
  }
  .l-container {
    padding: 50px 0
  }
  .l-container02 {
    padding: 50px 0
  }
  
  .l-containerLast {
    padding: 30px 0
  }
  .l-sect {
    margin-bottom: 60px
  }
  .l-sect02 {
    margin-bottom: 50px
  }
  .l-sect03 {
    margin-bottom: 40px
  }
  .l-fixConsultation {
    top: inherit;
    bottom: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }
  .l-fixConsultation.is-fixed {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  .l-fixConsultation_btnList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%
  }
  .l-fixConsultation_btnList_item {
    border-radius: 0;
    width: 33.2894%;
    height: 65px
  }
  .l-fixConsultation_btnList_item:not(:last-child) {
    margin-bottom: 0
  }
  .l-fixConsultation_btnList_item_link {
    border-radius: 0;
    width: 100%;
    height: 100%
  }
  .l-fixConsultation_btnList_item_link.l-fixConsultation_btnList_item_link__mail img {
    height: 33px
  }
  .l-fixConsultation_btnList_item_link.l-fixConsultation_btnList_item_link__line img {
    height: 41px
  }
  .l-fixConsultation_btnList_item_link.l-fixConsultation_btnList_item_link__tel img {
    height: 40px
  }
  .l-footer_utility {
    display: block;
    padding: 30px 20px
  }
  .l-footer_utility_link {
    display: block;
    margin-top: 15px
  }
  .l-footer_logo {
    text-align: center
  }
  .l-footer_linkList {
    font-size: 1.3rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  .l-footer_pagetop {
    margin-left: 0;
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 30px
  }
  .l-header {
    padding: 9px 10px
  }
  .l-header .l-header_logo {
    margin-right: 0
  }
  .l-header .l-header_logo a {
    width: 228px;
    height: 32px
  }
  .l-header .l-header_btn {
    width: 100%;
    height: auto;
    margin-left: 0;
    font-size: 1.3rem;
    padding: 14px;
    border-radius: 25px
  }
  .l-header .l-header_btn2 {
    width: 100%;
    height: auto;
    margin-left: 0;
    font-size: 1.3rem;
    padding: 14px;
    border-radius: 25px
  }  
  .l-header .l-header_utility {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: calc(100vh - 50px);
    padding: 30px 20px;
    background-color: #fff;
    overflow: auto
  }
  .is-headerWhite:not(.is-fixed) .l-header {
    background: 0 0
  }
  .l-gNav {
    display: block;
    font-size: 1.3rem;
    text-align: center;
    margin-bottom: 30px
  }
  .l-gNav .l-gNav_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 30px
  }
  .l-gNav .l-gNav_item .l-gNav_item_link {
    display: block;
    height: auto
  }
  .l-gNav .l-gNav_item .l-gNav_item_child {
    position: static;
    margin: 0 -20px;
    background-color: #ededed;
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    width: auto;
    opacity: 1;
    margin-top: 30px;
    padding-bottom: 20px;
    display: none;
    -webkit-transition: 0s;
    transition: 0s
  }
  .l-gNav .l-gNav_item .l-gNav_item_child:before {
    display: none
  }
  .l-gNav .l-gNav_item .l-gNav_item_child a {
    color: #333
  }
  .l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_topLink {
    display: block
  }
  .l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_list {
    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;
    margin-top: -18px;
    padding: 0 20px
  }
  .l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_list li {
    margin-top: 18px;
    padding-bottom: 2px;
    line-height: 1
  }
  .l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_list li:not(:first-child) {
    padding-left: 15px;
    margin-left: 15px;
    border-left: 1px solid #aeaeae
  }
  .l-gNav .l-gNav_item .l-gNav_item_child .l-gNav_item_child_list li a {
    padding: 0
  }
  .l-gNav .l-gNav_item.has-subNav .l-gNav_item_link span {
    position: relative;
    display: inline-block
  }
  .l-gNav .l-gNav_item.has-subNav .l-gNav_item_link span:before {
    content: " ";
    position: absolute;
    top: 5px;
    right: -17px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    width: 7px;
    height: 7px;
    -webkit-transition: .5s;
    transition: .5s
  }
  .c-pageTtl_body {
    height: 250px;
    padding-top: 65px
  }
  .c-pageTtl_inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .c-pageTtl_ttl_en {
    font-size: 3rem;
    margin-bottom: 4px
  }
  .c-pageTtl_ttl_jp {
    font-size: 1.9rem
  }
  .c-pageTtl_desc {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .c-pageTtl_desc {
    margin: -35px 0 0
  }
  .c-pageTtl_desc:before {
    display: none
  }
  .c-pageTtl_desc_body {
    margin-left: -20px;
    padding: 10px 20px;
    min-height: initial
  }
  .c-pageTtl_desc_inner {
    display: block
  }
  .c-pageTtl_desc_icon {
    margin-right: 0;
    margin-bottom: 5px
  }
  .c-pageTtl_desc_icon li {
    width: 40px
  }
  .c-pageTtl_desc_icon li:not(:last-child) {
    margin-right: 10px
  }
  .c-pageTtl_desc_txt {
    font-size: 1.9rem;
    line-height: 1.57895
  }
  .c-pageTtl02 {
    height: 200px
  }
  .c-pageTtl02_ttl {
    font-size: 2.6rem
  }
  .c-pageTtl02.c-pageTtl02__large {
    height: 412px
  }
  .c-pageTtl02.c-pageTtl02__large .c-pageTtl02__ttl {
    font-size: 2.9rem
  }
  .c-pageTtl03 {
    min-height: 412px;
    padding-top: 68px;
    padding-bottom: 30px
  }
  .c-pageTtl03_body {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .c-pageTtl03_label {
    font-size: 1.6rem;
    margin-bottom: 5px
  }
  .c-pageTtl03_ttl {
    font-size: 2.9rem;
    margin-bottom: 7px
  }
  .c-pageTtl03_txt {
    font-size: 1.6rem
  }
  .c-sectTtl {
    font-size: 2.4rem;
    margin-bottom: 33px;
    padding: 0 45px;
    margin-top: 0
  }

  .c-sectTtl_label {
    padding: 0 15px
  }
   
  .c-sectTtl02 {
    font-size: 2rem
  }
  .c-sectTtl03 {
    font-size: 1.8rem;
    margin-bottom: 25px
  }
  .c-sectTtl04 {
    font-size: 1.8rem;
    margin-top: -8px;
    padding-bottom: 16px;
    margin-bottom: 20px
  }
  .c-sectTtl04:before {
    width: 18px;
    height: 2px
  }
  .c-sectTtl05 {
    margin-bottom: 25px
  }
  .c-sectTtl05_label {
    font-size: 1.5rem;
    padding: 3px 15px 8px;
    margin-bottom: 13px
  }
  .c-sectTtl05_ttl {
    font-size: 2.6rem
  }
  .c-sectTtl06 {
    padding: 15px 0;
    font-size: 1.8rem
  }
  .c-pinpointTtl {
    font-size: 2.6rem;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: -8px;
    margin-bottom: 30px;
    background-size: 220px auto;
    padding-bottom: 10px;
    margin-bottom: 30px
  }
  .c-pinpointTtl em {
    font-size: 4.1rem
  }
  .c-sectLead {
    text-align: left;
    margin-bottom: 25px
  }
  .c-label {
    font-size: 1.2rem;
    min-width: 135px;
    padding: 3px 10px 7px
  }
  .c-label.c-label__small {
    min-width: 100px
  }
  .c-btn {
    font-size: 1.5rem;
    width: 225px;
    padding: 9px 0 13px
  }
  .c-btn.c-btn__large {
    width: 250px
  }
  .c-btn.c-btn__small {
    width: 225px
  }
  .c-btn.c-btn__exSmall {
    width: 150px
  }
  .c-simpleImg {
    margin-bottom: 20px
  }
  .c-simpleImg_caption {
    margin-top: 14px;
    margin-bottom: 10px
  }
  .c-borderImg {
    margin-bottom: 20px
  }
  .c-borderImg_img {
    padding: 15px 10px
  }
  
  .c-borderImg_img_point {
    padding: 0px 0px
  }
  
  
  .c-borderImg_caption {
    margin-top: 14px;
    margin-bottom: 10px
  }
  .c-focalBox {
    margin-bottom: 40px
  }
  .c-focalBox .c-focalBox_img {
    max-width: initial;
    margin-left: -20px
  }
  .c-focalBox .c-focalBox_body {
    max-width: initial;
    margin-top: -30px
  }
  .c-focalBox_desc {
    margin-right: -20px;
    padding: 30px;
    min-height: initial
  }
  .c-focalBox_ttl {
    font-size: 2rem;
    margin-bottom: 13px
  }
  .c-focalBox_ttl_label {
    font-size: 1.6rem;
    margin-right: 15px
  }
  .c-focalBox_btnList {
    display: block
  }
  .c-focalBox_btnList_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 20px
  }
  .c-pointBoxUnit {
    margin-bottom: 30px
  }
  .c-pointBox {
    display: block
  }
  .c-pointBox>* {
    width: 100%
  }
  .c-pointBox_img {
    margin-bottom: 10px;
  }
  
  
  .c-pointBox_point {
    font-size: 1.6rem;
    margin-top: -3px;
    margin-bottom: 2px
  }
  .c-pointBox_point span {
    font-size: 2.9rem;
    top: -2px;
    margin-left: 5px
  }
  .c-pointBox_ttl {
    font-size: 2rem;
    margin-bottom: 15px
  }
  
  
  .c-pointBox_txt {
    margin-bottom: 10px
  }
  .c-pointBox_definition dt span {
    font-size: 1.6rem
  }
  .c-strangeBoxUnit {
    margin-bottom: 30px
  }
  .c-strangeBox {
    padding-right: 0;
    margin-bottom: 15px
  }
  .c-strangeBox .c-strangeBox_img {
    position: relative;
    top: 0;
    width: 100%
  }
  .c-strangeBox .c-strangeBox_body {
    min-height: initial;
    padding: 20px
  }
  .c-strangeBox_ttl {
    font-size: 2.1rem;
    margin-top: -5px;
    margin-bottom: 13px
  }
  .c-strangeBox_catch {
    font-size: 1.6rem;
    margin-bottom: 12px
  }
  .c-strangeBox_txt {
    margin-bottom: 15px
  }
  .c-strangeBox_support {
    display: block
  }
  .c-strangeBox_support_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 10px
  }
  .c-strangeBox_support_item dt {
    font-size: 1.3rem
  }
  .c-strangeBox_support_item dd {
    font-size: 1.6rem
  }
  .c-strangeBox_definition dt {
    font-size: 1.6rem;
    margin-bottom: 10px
  }
  .c-mediaBox {
    display: block
  }
  .c-mediaBox_img {
    margin-right: 0;
    margin-bottom: 40px;
    text-align: center
  }
  .c-mediaBox_ttl {
    font-size: 2.9rem;
    margin-top: -7px;
    margin-bottom: 15px
  }
  .c-mediaBox_txt {
    font-size: 1.6rem;
    line-height: 1.6875
  }
  .c-meritBox {
    display: block;
    padding: 30px 25px;
    margin-bottom: 20px
  }
  .c-meritBox_ttl {
    margin-top: -8px;
    font-size: 2rem;
    font-weight: 700;
    width: auto;
    text-align: center;
    margin-right: 0;
    margin-bottom: 18px
  }
  .c-meritBox_list.c-meritBox_list__col2 {
    margin-top: 0;
    margin-right: 0
  }
  .c-meritBox_list.c-meritBox_list__col2>:first-child {
    margin-top: 0
  }
  .c-meritBox_list.c-meritBox_list__col2>* {
    margin-top: 10px;
    width: 100%;
    margin-right: 0
  }
  .c-meritBox_list.c-meritBox_list__col3 {
    margin-top: 0;
    margin-right: 0
  }
  .c-meritBox_list.c-meritBox_list__col3>:first-child {
    margin-top: 0
  }
  .c-meritBox_list.c-meritBox_list__col3>* {
    margin-top: 10px;
    width: 100%;
    margin-right: 0
  }
  .c-meritBox_list_item {
    margin-bottom: 10px
  }
  .c-meritBox_list_item {
    font-size: 1.5rem;
    padding-left: 30px
  }
  .c-meritBox_list_item:before {
    top: .2em;
    width: 20px;
    height: 20px
  }
  .c-meritBox_list_item_definition dt {
    margin-bottom: 5px
  }
  .c-meritBox_list_item_definition dd {
    font-size: 1.4rem;
    margin-left: -30px
  }
  .c-meritBox_numberList.c-meritBox_numberList__col2 {
    margin-top: 0;
    margin-right: 0
  }
  .c-meritBox_numberList.c-meritBox_numberList__col2>:first-child {
    margin-top: 0
  }
  .c-meritBox_numberList.c-meritBox_numberList__col2>* {
    margin-top: 10px;
    width: 100%;
    margin-right: 0
  }
  .c-meritBox_numberList_item dl dt {
    padding-left: 30px;
    font-size: 1.7rem;
    margin-bottom: 5px
  }
  .c-meritBox_numberList_item dl dt:before {
    top: .3em;
    width: 20px;
    height: 20px;
    padding-top: .05em
  }
  .c-grayBox {
    padding: 30px 20px
  }
  .c-grayBox_ttl {
    font-size: 1.9rem
  }
  .c-whiteBox {
    padding: 30px 20px
  }
  .c-aroundBox .c-aroundBox_img {
    max-width: 100%;
    margin-bottom: 15px
  }
  .c-aroundBox .c-aroundBox_img img {
    width: 100%
  }
  .c-aroundBox.c-aroundBox__left .c-aroundBox_img {
    margin-right: 0;
    margin-bottom: 15px;
    float: none
  }
  .c-aroundBox.c-aroundBox__right .c-aroundBox_img {
    margin-left: 0;
    float: none;
    margin-bottom: 15px
  }
  .c-submitNote {
    margin-bottom: 40px
  }
  .c-submitNote>p {
    text-align: left
  }
  .c-privacyArea {
    height: 250px;
    margin-bottom: 30px
  }
  .c-privacyArea_inner {
    padding: 15px
  }
  .c-privacyArea_inner>:not(:last-child) {
    margin-bottom: 15px
  }
  .c-simpleCardUnit.c-simpleCardUnit__col3 {
    margin-top: 0;
    margin-right: 0
  }
  .c-simpleCardUnit.c-simpleCardUnit__col3>:first-child {
    margin-top: 0
  }
  .c-simpleCardUnit.c-simpleCardUnit__col3>* {
    margin-top: 20px;
    width: 100%;
    margin-right: 0
  }
  .c-simpleCard_body {
    padding: 20px
  }
  .c-simpleCard_ttl {
    margin-bottom: 5px
  }
  .c-simpleCard_ttl_num {
    width: 20px;
    height: 20px;
    padding-top: 1px;
    font-size: 1.4rem
  }
  .c-simpleCard_ttl_label {
    font-size: 1.8rem;
    margin-top: -5px
  }
  .c-simpleCard_ttl_label small {
    font-size: 1.8rem
  }
  .c-simpleCard02Unit.c-simpleCard02Unit__col3 {
    margin-top: 0;
    margin-right: 0
  }
  .c-simpleCard02Unit.c-simpleCard02Unit__col3>:first-child {
    margin-top: 0
  }
  .c-simpleCard02Unit.c-simpleCard02Unit__col3>* {
    margin-top: 35px;
    width: 100%;
    margin-right: 0
  }
  .c-simpleCard02_ttl {
    font-size: 1.8rem
  }
  .c-heroCardUnit.c-heroCardUnit__col2 {
    margin-top: 0;
    margin-right: 0
  }
  .c-heroCardUnit.c-heroCardUnit__col2>:first-child {
    margin-top: 0
  }
  .c-heroCardUnit.c-heroCardUnit__col2>* {
    margin-top: 45px;
    width: 100%;
    margin-right: 0
  }
  .c-heroCard_body {
    padding: 30px 20px
  }
  .c-heroCard_ttl {
    font-size: 2rem;
    margin-top: -5px;
    margin-bottom: 21px
  }
  .c-heroCard_txt {
    margin-bottom: 25px
  }
  .c-stylishCardUnit.c-stylishCardUnit__col2 {
    margin-top: 0;
    margin-right: 0
  }
  .c-stylishCardUnit.c-stylishCardUnit__col2>:first-child {
    margin-top: 0
  }
  .c-stylishCardUnit.c-stylishCardUnit__col2>* {
    margin-top: 20px;
    width: 100%;
    margin-right: 0
  }
  .c-stylishCardUnit.c-stylishCardUnit__col3 {
    margin-top: 0;
    margin-right: 0
  }
  .c-stylishCardUnit.c-stylishCardUnit__col3>:first-child {
    margin-top: 0
  }
  .c-stylishCardUnit.c-stylishCardUnit__col3>* {
    margin-top: 20px;
    width: 100%;
    margin-right: 0
  }
  .c-stylishCard_body {
    padding: 20px
  }
  .c-stylishCard_body p+p {
    margin-top: 10px
  }
  .c-stylishCard_ttl {
    font-size: 1.6rem
  }
  .c-stylishCard_definition {
    margin-top: 17px
  }
  .c-definitionCardUnit {
    margin-bottom: 20px
  }
  .c-definitionCardUnit.c-definitionCardUnit__col3 {
    margin-top: 0;
    margin-right: 0
  }
  .c-definitionCardUnit.c-definitionCardUnit__col3>:first-child {
    margin-top: 0
  }
  .c-definitionCardUnit.c-definitionCardUnit__col3>* {
    margin-top: 20px;
    width: 100%;
    margin-right: 0
  }
  .c-definitionCard_ttl {
    font-size: 1.8rem
  }
  .c-definitionCard_body {
    padding: 20px 15px
  }
  .c-definitionCard_emphosis {
    font-size: 2.1rem
  }
  .c-definitionCard_emphosis small {
    font-size: 1.6rem
  }
  .c-videoCardUnit.c-videoCardUnit__col3 {
    margin-top: 0;
    margin-right: 0
  }
  .c-videoCardUnit.c-videoCardUnit__col3>:first-child {
    margin-top: 0
  }
  .c-videoCardUnit.c-videoCardUnit__col3>* {
    margin-top: 30px;
    width: 100%;
    margin-right: 0
  }
  .c-videoCard_ttl {
    font-size: 1.5rem;
    margin-bottom: 10px
  }
  .c-contentCard_wrap {
    padding-top: 38%;
    padding-left: 40px;
    height: auto;
    background-size: 100% auto
  }
  .c-contentCard_inner {
    width: 100%;
    margin-top: -12%;
    padding: 20px;
    position: relative;
    top: inherit;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  .c-contentCard_ttl {
    margin-bottom: 10px;
    font-size: 1.8rem
  }
  .c-contentCard_text {
    font-size: 1.4rem
  }
  .c-horizBtnList {
    display: block
  }
  .c-horizBtnList_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 20px
  }
  .c-submitBtnList_item {
    width: 131px
  }
  .c-submitBtnList_btn {
    font-size: 1.6rem;
    padding: 9px 0 13px
  }
  .c-definitionList_item dl {
    padding-top: 15px;
    padding-bottom: 15px
  }
  .c-definitionList_item dl dt {
    font-size: 1.5rem
  }
  .c-numberList_item {
    padding-top: 15px;
    padding-bottom: 15px
  }
  .c-numberList_item_ttl {
    font-size: 1.5rem
  }
  .c-numberList_item_ttl:before {
    width: 18px;
    height: 18px;
    font-size: 1.1rem
  }
  .c-tabBtnList {
    margin-bottom: 20px;
    overflow-x: auto;
    white-space: nowrap;
    letter-spacing: -.4em;
    width: 100%;
    padding-bottom: 10px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
    row-gap: 10px
  }
  .c-tabBtnList.c-tabBtnList__small .c-tabBtnList_item {
    width: calc((100% - 10px)/ 2)
  }
  .c-tabBtnList_item {
    display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
    width: calc((100% - 10px)/ 2)
  }
  .c-tabBtnList_item:not(:last-child) {
    margin-right: 0
  }
  .c-tabBtnList_item a {
    font-size: 1.6rem;
    padding: 10px 12px 15px
  }
  .c-tabBtnList_item a.is-active:before {
    display: none
  }
  .c-faqList {
    margin-bottom: 30px
  }
  .c-faqList_item:not(:last-child) {
    margin-bottom: 17px
  }
  .c-faqList_item dl dd, .c-faqList_item dl dt {
    padding-left: 25px
  }
  .c-faqList_item dl dd:before, .c-faqList_item dl dt:before {
    width: 20px;
    height: 20px;
    font-size: 1.3rem;
    padding-top: 1px;
    top: 2px
  }
  .c-faqList_item dl dt {
    font-size: 1.5rem;
    padding-top: 0;
    padding-bottom: 18px
  }
  .c-faqList_item dl dt:after {
    margin-top: -12px
  }
  .c-faqList_item dl dd {
    padding-top: 18px;
    padding-bottom: 15px
  }
  .c-faqList_item dl dd:before {
    top: 20px
  }
  .c-iconList.c-iconList__col2 {
    margin-top: 0;
    margin-right: 0
  }
  .c-iconList.c-iconList__col2>:first-child {
    margin-top: 0
  }
  .c-iconList.c-iconList__col2>* {
    margin-top: 20px;
    width: 100%;
    margin-right: 0
  }
  .c-iconList_item {
    padding: 20px
  }
  .c-iconList_item_icon {
    width: 40px;
    margin-right: 20px
  }
  .c-iconList_item_ttl {
    font-size: 1.8rem;
    margin-bottom: 5px
  }
  .c-noteList {
    font-size: 1.2rem
  }
  .c-stepList_item {
    margin-bottom: 20px
  }
  .c-stepList_item:not(:last-child):before {
    border-width: 10px 18px
  }
  .c-stepList_item_heading {
    width: 80px
  }
  .c-stepList_item_heading:after {
    font-size: 2.6rem;
    margin-top: 0
  }
  .c-stepList_item_definition dt {
    font-size: 1.6rem
  }
  .c-panelList {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: -3px
  }
  .c-panelList_item {
    width: 50%;
    -webkit-box-flex: 1;
    -ms-flex: auto;
    flex: auto;
    margin-top: 3px
  }
  .c-panelList_item:nth-child(odd) {
    border-left: none
  }
  .c-panelList_item a {
    height: 200px;
    font-size: 2rem
  }
  .c-panelList_item_ttl {
    font-size: 2rem
  }
  .c-philosophyList {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 304px;
    margin: 0 auto
  }
  .c-philosophyList>* {
    width: 145px;
    height: 145px;
    margin-right: 7px;
    font-size: 1.2rem
  }
  .c-philosophyList>:nth-child(2) {
    margin-right: 0
  }
  .c-philosophyList>:last-child {
    margin-top: -9px
  }
  .c-philosophyList>* em {
    font-size: 2.5rem;
    margin-bottom: 5px
  }
  .c-sitemapListUnit.c-sitemapListUnit__col2 {
    margin-top: 0;
    margin-right: 0
  }
  .c-sitemapListUnit.c-sitemapListUnit__col2>:first-child {
    margin-top: 0
  }
  .c-sitemapListUnit.c-sitemapListUnit__col2>* {
    margin-top: 25px;
    width: 100%;
    margin-right: 0
  }
  .c-sitemapList_item {
    padding-bottom: 27px;
    margin-bottom: 25px
  }
  .c-sitemapList_item ul li {
    font-size: 1.3rem
  }
  .c-sitemapList_item ul li:before {
    top: .45em
  }
  .c-sitemapList_ttl {
    background-size: 14px auto;
    padding-left: 26px
  }
  .c-sitemapList_lv2 {
    padding-left: 25px
  }
  .c-newsList_item {
    display: block;
    padding: 15px 20px
  }
  .c-newsList_item_heading {
    margin-right: 0;
    margin-bottom: 8px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }
  .c-tileList.c-tileList__col4 {
    margin-top: 0;
    margin-right: 0
  }
  .c-tileList.c-tileList__col4>* {
    margin-top: 0;
    margin-right: 0;
    width: 50%
  }
  .c-employeeList {
    margin-top: 0;
    margin-right: 0
  }
  .c-employeeList>* {
    margin-top: 0;
    margin-right: 0;
    width: 33.33333%
  }
  .c-employeeList_ttl {
    font-size: 1.8rem
  }
  .c-inputList.c-inputList__col3>li {
    width: calc(100% / 2 - 10px);
    margin-right: 20px
  }
  .c-inputList.c-inputList__col3>li:nth-child(even) {
    margin-right: 0
  }
  .c-linkPanelUnit {
    margin-top: -1px;
    margin-right: -1px;
    margin-bottom: 1px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
  .c-linkPanel {
    width: calc(100% / 2 - 1px);
    margin-top: 1px;
    height: 200px
  }
  .c-linkPanel:nth-child(even) {
    margin-right: 0
  }
  .c-linkPanel_txt {
    font-size: 2.3rem
  }
  .c-heroPanel_inner {
    display: block
  }
  .c-heroPanel_heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .c-heroPanel_ttl {
    font-size: 1.9rem;
    margin-top: 0;
    margin-bottom: 0
  }
  .c-heroPanel_body {
    padding: 20px
  }
  .c-halfBanner {
    display: block
  }
  .c-halfBanner:before {
    border-width: 3px
  }
  .c-halfBanner_body {
    padding: 50px 20px
  }
  .c-halfBanner_ttl {
    font-size: 1.5rem
  }
  .c-definitionTableUnit {
    margin-bottom: 40px
  }
  .c-definitionTableUnit.c-definitionTableUnit__col2 {
    margin-top: 0;
    margin-right: 0
  }
  .c-definitionTableUnit.c-definitionTableUnit__col2>:first-child {
    margin-top: 0
  }
  .c-definitionTableUnit.c-definitionTableUnit__col2>* {
    margin-top: 10px;
    width: 100%;
    margin-right: 0
  }
  .c-definitionTable {
    margin-bottom: 20px
  }
  .c-definitionTable.c-definitionTable__form {
    padding-top: 0
  }
  .c-definitionTable.c-definitionTable__form .c-definitionTable_cell {
    display: block;
    padding: 20px 0;
    margin-bottom: 0
  }
  .c-definitionTable.c-definitionTable__form .c-definitionTable_cell>* {
    display: block
  }
  .c-definitionTable.c-definitionTable__form .c-definitionTable_cell>dt {
    width: 100%;
    border-right: none;
    margin-bottom: 13px;
    padding: 0
  }
  .c-definitionTable.c-definitionTable__form .c-definitionTable_cell>dd {
    padding-left: 0
  }
  .c-definitionTable.c-definitionTable__form input[type=text] {
    font-size: 1.4rem
  }
  .c-definitionTable.c-definitionTable__form input[type=text].is-small {
    width: 100%
  }
  .c-definitionTable.c-definitionTable__form input[type=text].is-middle {
    width: 100%
  }
  .c-definitionTable_cell>dt {
    width: 80px
  }
  .c-definitionTable_cell>dd {
    padding: 0 15px 2px
  }
  .c-definitionTable_childUnit {
    display: block
  }
  .c-definitionTable_childUnit>:not(:last-child) {
    margin-right: 0
  }
  .c-definitionTable_inputItemUnit {
    display: block
  }
  .c-definitionTable_inputItem {
    margin-right: 0;
    margin-bottom: 20px
  }
  .c-definitionTable_inputItem dd {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1
  }
  .c-definitionTable_required:before {
    font-size: 1.3rem;
    right: 0;
    width: 43px;
    top: 0
  }
  .c-definitionTable_salestrends {
    margin-top: 20px
  }
  .c-modal .c-modal_content {
    padding: 20px
  }
  .c-modal .c-modal_close {
    width: 21px
  }
  .c-modalVideo {
    width: calc(100% - (20px * 2))
  }
  .js-spAccordion_btn {
    cursor: pointer
  }
  .js-spMenu {
    display: none
  }
  .js-spMenuBtn {
    display: block
  }
  .c-skip {
    right: 50%;
    -webkit-transform: translateX(50%);
    transform: translateX(50%)
  }
  .c-bnrUnit {
    margin-bottom: 20px;
    padding: 0 20px
  }
  .p-projectMV {
    height: 146vw;
    margin-bottom: 0
  }
  .p-projectMV_vis {
    padding: 0 20px;
    max-height: initial
  }
  .p-projectMV02_main {
    margin-top: 20vw
  }
  .p-projectMV02_main p:first-child img {
    max-width: 75%
  }
  .p-projectMV02_main p:nth-child(2) {
    margin: 30px 0
  }
  .p-projectMV02_main p:nth-child(2) img {
    max-width: 79.8%
  }
  .p-projectMV02_main h2 img {
    max-width: 60.39%
  }
  .p-projectMV02_movie video {
    height: 100vh
  }
  .p-projectMV02_scl {
    bottom: 30px;
    width: 7.63%
  }
  .p-topMV .p-topMV_ttl {
    display: none
  }
  .p-topMV .p-topMV_bgMain:before {
    background-color: rgba(96, 96, 96, .1)
  }
  .p-topMV_bgList {
    display: block
  }
  .p-topMV_bgList_item {
    height: 33.3333%;
    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;
    text-align: center;
    padding: 0 10px
  }
  .p-topMV_bgList_item_btn {
    width: 100%;
    display: block;
    font-size: 1.8rem;
    line-height: 1.27778;
    background-color: rgba(0, 0, 0, .3);
    border: 1px solid #fff;
    border-radius: 30px;
    color: #fff;
    font-weight: 600;
    font-family: "Noto Serif JP", serif;
    padding: 4px 10px 8px
  }
  .p-topMV .p-topMV_itemUnit {
    position: static;
    display: block
  }
  .p-topMV .p-topMV_item {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -45%);
    transform: translate(-50%, -45%);
    background-color: rgba(255, 255, 255, .8);
    width: calc(100% - 40px);
    z-index: 50;
    padding: 30px 15px;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all .5s;
    transition: all .5s
  }
  .p-topMV .p-topMV_item.is-active {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
  }
  .p-topMV .p-topMV_item .p-topMV_item_close {
    display: block;
    position: absolute;
    right: 0;
    bottom: 100%
  }
  .p-topMV .p-topMV_item .p-topMV_item_ttl {
    line-height: 2;
    font-size: 2rem;
    text-shadow: none;
    color: #333;
    margin-top: -12px;
    padding-bottom: 0;
    margin-bottom: 19px
  }
  .p-topMV .p-topMV_item .p-topMV_item_ttl:before {
    display: none
  }
  .p-topMV .p-topMV_item .p-topMV_item_body {
    max-height: initial
  }
  .p-topMV .p-topMV_item .p-topMV_item_btnList li:not(:last-child) {
    margin-bottom: 15px
  }
  .p-topMV .p-topMV_item .p-topMV_item_btnList li a {
    font-size: 1.3rem
  }
  .p-topTtl {
    font-size: 3.2rem;
    margin-top: -9px;
    margin-bottom: 25px
  }
  .p-topTtl_sml {
    font-size: 2rem
  }
  .p-topCm {
    padding: 35px 0 0
  }
  .p-topCm_logo {
    padding: 0 20px;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px
  }
  .p-topNews {
    padding: 35px 0;
    margin-bottom: 65px
  }
  .p-topNews_inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
    row-gap: 40px;
    padding: 0 20px
  }
  .p-topNews_item {
    display: block
  }
  .p-topNews_item dt {
    margin-right: 0
  }
  .p-topNews_item dt time {
    font-size: 1.3rem;
    margin-right: 15px
  }
  .p-topNews_item dt .c-label {
    min-width: 80px
  }
  .p-topNews_item dd {
    margin-top: 15px
  }
  .p-topNews_item dd a {
    display: block;
    font-size: 1.5rem
  }
  .p-topNews_list li:not(:first-child) {
    margin-top: 25px
  }
  .p-topNews_btn {
    position: relative;
    font-size: 1.3rem;
    padding: 2px 0 4px;
    margin: 0 0 25px auto
  }
  .p-topPhilosophy {
    padding: 75px 0
  }
  .p-topPhilosophy_content {
    padding: 50px 10px;
    background-image: none
  }
  .p-topPhilosophy_icon {
    position: static;
    text-align: center;
    margin-bottom: 40px
  }
  .p-topPhilosophy_heading {
    display: block;
    margin-bottom: 22px
  }
  .p-topPhilosophy_heading .c-pinpointTtl {
    margin-bottom: 30px;
    margin-top: -8px
  }
  .p-topPhilosophy_heading .c-philosophyList {
    max-width: 520px;
    padding: 5%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-image: url(/assets/images/home/image_f_three.png);
    background-position: left 8% top 50%;
    background-repeat: no-repeat;
    background-size: 50% auto
  }
  .p-topPhilosophy_heading .c-philosophyList li {
    -ms-flex-item-align: end;
    align-self: flex-end
  }
  .p-topPhilosophy_heading .c-philosophyList li:not(:first-child) {
    margin-top: 25px
  }
  .p-topPhilosophy_txt {
    font-size: 1.5rem;
    line-height: 1.66667;
    margin-bottom: 34px
  }
  .p-topMov {
    margin-bottom: 45px
  }
  .p-topMov_inner_spthumb {
    padding-top: 0;
    height: auto
  }
  .p-topMov__col2 {
    display: block
  }
  .p-topMov__col2>* {
    width: 100%;
    margin-bottom: 45px
  }
  .p-topMov__col2>:last-child {
    margin-bottom: 0
  }
  .p-topMov_body {
    font-size: 1.6rem;
    margin-top: -20px
  }
  .p-topLpBanner {
    margin-top: 40px;
    margin-bottom: 37px
  }
  .p-topLpBanner_img img {
    aspect-ratio: auto 50/43
  }
  .p-topPickup {
    padding: 10px 0 40px
  }
  .p-topPickup_ttl {
    font-size: 3.8rem
  }
  .p-topPickup_ttl span {
    font-size: 2.4rem
  }
  .p-topSDGs {
    padding: 75px 0 30px
  }
  .p-topSDGs_txt {
    font-size: 1.5rem;
    margin-bottom: 33px;
    line-height: 1.66667
  }
  .p-topSDGs_img {
    margin-bottom: 40px
  }
  .p-topSDGs_employee {
    margin-top: 45px
  }
  .p-topPerformance_wrap {
    padding: 30px 0 50px;
    background-image: url(/assets/images/home/bg-performance02_sp.jpg)
  }
  .p-topPerformance_txt {
    margin-bottom: 35px;
    font-size: 2rem;
    line-height: 1.66667
  }
  .p-topPerformance_txt>span {
    font-size: 1.2rem
  }
  .p-topPerformance_cardUnit {
    margin-top: -10px;
    margin-right: -10px
  }
  .p-topPerformance_cardUnit>* {
    margin-top: 10px;
    margin-right: 10px;
    width: calc((100%/2) - 10px)
  }
  .p-topPerformance_ambassador {
    position: relative;
    right: 0;
    bottom: 0;
    margin-top: 30px
  }
  .p-topPerformance_card {
    padding: 15px 10px
  }
  .p-topPerformance_card_ttl {
    font-size: 1.8rem;
    margin-bottom: 10px
  }
  .p-topPerformance_card_ttl span {
    font-size: 1.4rem
  }
  .p-topPerformance_card_num {
    font-size: 2.1rem;
    margin-bottom: 20px
  }
  .p-topPerformance_card_num em {
    font-size: 3.7rem
  }
  .p-topPerformance_card_note {
    font-size: 1.3rem
  }
  .p-topSystem {
    margin-top: 40px;
    margin-bottom: 20px;
    padding: 105px 0 50px
  }
  .p-topSystem_inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .p-topSystem_ttl {
    font-size: 2.4rem;
    padding-top: 10px;
    left: 20px
  }
  .p-topSystem_ttl:before {
    height: 90px;
    bottom: calc(100% + 10px)
  }
  .p-topSystem_slideWrapper {
    margin-right: 0
  }
  .p-topSystem_slide {
    margin-right: -20px;
    margin-bottom: 40px
  }
  .p-topSystem_slide_list_item {
    padding-left: 0;
    padding-bottom: 0
  }
  .p-topSystem_slide_list_item_img {
    height: 230px;
    margin-left: 80px
  }
  .p-topSystem_slide_list_item_desc {
    width: calc(100% - 40px);
    position: static;
    padding: 20px;
    margin-top: 20px
  }
  .p-topSystem_slide_list_item_desc_heading {
    display: block;
    margin-bottom: 10px
  }
  .p-topSystem_slide_list_item_desc_time {
    display: block;
    font-size: 1.3rem;
    margin-left: 0;
    margin-top: 10px
  }
  .p-topSystem_slide_list_item_desc_ttl {
    font-size: 2rem;
    margin-bottom: 13px
  }
  .p-topSystem_slide_list_item_desc_def dt {
    font-size: 1.6rem
  }
  .p-topSystem_slide_list_item_desc_def dd {
    font-size: 2rem
  }
  .p-topSystem_slide_list_item_btn {
    position: static;
    margin-top: 20px
  }
  .p-topSystem_slide_list .slick-arrow {
    width: 30px;
    height: 30px
  }
  .p-topSystem_slide_list .slick-arrow.slick-prev {
    left: auto;
    right: 90px
  }
  .p-topSystem_slide_list .slick-arrow.slick-next {
    left: auto;
    right: 40px
  }
  .p-topSystem_slideNav {
    margin-bottom: 33px
  }
  .p-topSystem_subTtl {
    font-size: 2.6rem;
    margin-bottom: 23px
  }
  .p-topSystem_list {
    margin-top: -14px;
    margin-right: -14px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }
  .p-topSystem_list li a {
    margin-right: 14px;
    margin-top: 14px;
    width: 145px;
    height: 145px;
    background-position: left 50% bottom 32px
  }
  .p-topSystem_list li a span {
    font-size: 1.5rem;
    line-height: 1.53333
  }
  .p-topVoice {
    margin-top: 40px;
    margin-bottom: 20px;
    padding: 105px 0 50px
  }
  .p-topVoice_inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .p-topVoice_ttl {
    font-size: 2.4rem;
    padding-top: 10px;
    left: 20px
  }
  .p-topVoice_ttl:before {
    height: 90px;
    bottom: calc(100% + 10px)
  }
  .p-topVoice_slideWrapper {
    margin-right: 0
  }
  .p-topVoice_slide {
    margin-right: -20px;
    margin-bottom: 40px
  }
  .p-topVoice_slide_list_item {
    padding-left: 0;
    padding-bottom: 0
  }
  .p-topVoice_slide_list_item_img {
    height: 230px;
    margin-left: 80px
  }
  .p-topVoice_slide_list_item_desc {
    width: calc(100% - 40px);
    position: static;
    padding: 20px;
    margin-top: 20px
  }
  .p-topVoice_slide_list_item_desc_heading {
    display: block;
    margin-bottom: 10px
  }
  .p-topVoice_slide_list_item_desc_time {
    display: block;
    font-size: 1.3rem;
    margin-left: 0;
    margin-top: 10px
  }
  .p-topVoice_slide_list_item_desc_ttl {
    font-size: 2rem;
    margin-bottom: 13px
  }
  .p-topVoice_slide_list_item_desc_def dt {
    font-size: 1.6rem
  }
  .p-topVoice_slide_list_item_desc_def dd {
    font-size: 2rem
  }
  .p-topVoice_slide_list_item_btn {
    position: static;
    margin-top: 20px
  }
  .p-topVoice_slide_list .slick-arrow {
    width: 30px;
    height: 30px
  }
  .p-topVoice_slide_list .slick-arrow.slick-prev {
    left: auto;
    right: 90px
  }
  .p-topVoice_slide_list .slick-arrow.slick-next {
    left: auto;
    right: 40px
  }
  .p-topVoice_slideNav {
    margin-bottom: 33px
  }
  .p-topVoice_subTtl {
    font-size: 2.6rem;
    margin-bottom: 23px
  }
  .p-topVoice_list {
    margin-top: -14px;
    margin-right: -14px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }
  .p-topVoice_list li a {
    margin-right: 14px;
    margin-top: 14px;
    width: 145px;
    height: 145px;
    background-position: left 50% bottom 32px
  }
  .p-topVoice_list li a span {
    font-size: 1.5rem;
    line-height: 1.53333
  }
  .p-topMovie {
    margin-top: 40px;
    padding: 40px 0
  }
  .p-topCaseOther {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 35px;
    margin-bottom: 65px
  }
  .p-topCaseOther_list li {
    margin-top: 1px
  }
  .p-topCaseOther_list li a>span {
    font-size: 1.7rem
  }
  .p-topCaseOther_list li a>span br {
    display: none
  }
  .p-topCaseOther_list li a>span span {
    margin-left: .5em
  }
  .p-topCaseOther_list:nth-child(1) {
    width: 100%
  }
  .p-topCaseOther_list:nth-child(1) li:nth-child(1) {
    height: 100px;
    border-bottom: none
  }
  .p-topCaseOther_list:nth-child(1) li:nth-child(1) a:after {
    background-image: url(/assets/images/home/image-case-other01_sp.jpg)
  }
  .p-topCaseOther_list:nth-child(1) li:nth-child(2) {
    height: 100px
  }
  .p-topCaseOther_list:nth-child(1) li:nth-child(2) a:after {
    background-image: url(/assets/images/home/image-case-other04_sp.jpg)
  }
  .p-topCaseOther_list:nth-child(2) {
    width: 100%;
    border: none
  }
  .p-topCaseOther_list:nth-child(2) li:nth-child(1) {
    height: 100px;
    border-bottom: none
  }
  .p-topCaseOther_list:nth-child(2) li:nth-child(1) a:after {
    background-image: url(/assets/images/home/image-case-other02_sp.jpg)
  }
  .p-topCaseOther_list:nth-child(2) li:nth-child(2) {
    height: 100px
  }
  .p-topCaseOther_list:nth-child(2) li:nth-child(2) a:after {
    background-image: url(/assets/images/home/image-case-other05_sp.jpg)
  }
  .p-topCaseOther_list:nth-child(3) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%
  }
  .p-topCaseOther_list:nth-child(3) li:nth-child(1) {
    height: 100px;
    border-bottom: none
  }
  .p-topCaseOther_list:nth-child(3) li:nth-child(1) a:after {
    background-image: url(/assets/images/home/image-case-other03_sp.jpg)
  }
  .p-topCaseOther_list:nth-child(3) li:nth-child(2), .p-topCaseOther_list:nth-child(3) li:nth-child(3) {
    width: 100%;
    height: 100px
  }
  .p-topCaseOther_list:nth-child(3) li:nth-child(2) a:after {
    background-image: url(/assets/images/home/image-case-other06_sp.jpg)
  }
  .p-topCaseOther_list:nth-child(3) li:nth-child(3) {
    border-left: none
  }
  .p-topCaseOther_list:nth-child(3) li:nth-child(3) a:after {
    background-image: url(/assets/images/home/image-case-other07_sp.jpg)
  }
  .p-topCase {
    margin-bottom: 20px;
    padding: 145px 0 0
  }
  .p-topCase:before {
    top: 65px;
    height: calc(100% - 85px);
    width: calc(100% - 20px)
  }
  .p-topCase_inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .p-topCase_ttl {
    font-size: 3.2rem;
    padding-top: 10px;
    left: 20px
  }
  .p-topCase_ttl:before {
    height: 90px;
    bottom: calc(100% + 10px)
  }
  .p-topCase_slideWrapper {
    margin-right: 0
  }
  .p-topCase_slide {
    margin-right: -20px;
    margin-bottom: 40px
  }
  .p-topCase_slide_list_item {
    padding-left: 0;
    padding-bottom: 0
  }
  .p-topCase_slide_list_item_img {
    height: 183px;
    margin-left: 60px
  }
  .p-topCase_slide_list_item_desc {
    width: calc(100% - 40px);
    position: static;
    padding: 20px;
    margin-top: 20px
  }
  .p-topCase_slide_list_item_desc_heading {
    display: block;
    margin-bottom: 10px
  }
  .p-topCase_slide_list_item_desc_time {
    display: block;
    font-size: 1.3rem;
    margin-left: 0;
    margin-top: 10px
  }
  .p-topCase_slide_list_item_desc_ttl {
    font-size: 2rem;
    margin-bottom: 13px
  }
  .p-topCase_slide_list_item_desc_def dt {
    font-size: 1.6rem
  }
  .p-topCase_slide_list_item_desc_def dd {
    font-size: 2rem
  }
  .p-topCase_slide_list_item_btn {
    position: static;
    margin-top: 20px
  }
  .p-topCase_slide_list .slick-arrow {
    width: 30px;
    height: 30px
  }
  .p-topCase_slide_list .slick-arrow.slick-prev {
    left: auto;
    right: 90px
  }
  .p-topCase_slide_list .slick-arrow.slick-next {
    left: auto;
    right: 40px
  }
  .p-topCase_slideNav {
    margin-bottom: 33px
  }
  .p-topCase_subTtl {
    font-size: 2.6rem;
    margin-bottom: 23px
  }
  .p-topCase_list {
    margin-top: -14px;
    margin-right: -14px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }
  .p-topCase_list li a {
    margin-right: 14px;
    margin-top: 14px;
    width: 145px;
    height: 145px;
    background-position: left 50% bottom 32px
  }
  .p-topCase_list li a span {
    font-size: 1.5rem;
    line-height: 1.53333
  }
  .p-choose {
    padding: 50px 20px 30%;
    background-size: 100% auto
  }
  .p-choose_ttl {
    font-size: 3rem;
    margin-top: -7px;
    margin-bottom: 35px
  }
  .p-choose_btnList {
    display: block;
    margin-bottom: 30px;
    text-align: center
  }
  .p-choose_btnList_item {
    width: 225px;
    text-align: center;
    margin: 0 auto 20px
  }
  .p-choose_btnList_item:not(:last-child) {
    margin-right: auto
  }
  .p-disasterSect {
    padding: 60px 0;
    text-align: left
  }
  .p-disasterSect_ttl {
    font-size: 2.5rem;
    margin-top: -10px;
    margin-bottom: 25px;
    text-align: center
  }
  .p-disasterSect_note {
    margin-top: 13px;
    margin-bottom: 28px
  }
  .p-case {
    padding: 60px 0 15px
  }
  .p-case_ttl {
    font-size: 2.4rem;
    margin-top: -5px;
    margin-bottom: 10px
  }
  .p-case_txt {
    font-size: 1.6rem;
    margin-bottom: 15px
  }
  .p-case_slide .slick-dots {
    margin-right: -5px
  }
  .p-case_slide .slick-dots li {
    max-width: 64px;
    margin-right: 5px
  }
  .p-greeting {
    padding: 75px 0
  }
  .p-greeting_ttl {
    font-size: 2.3rem;
    margin-top: -5px;
    margin-bottom: 20px
  }
  .p-greeting_txt {
    text-align: left;
    margin-bottom: 25px
  }
  .p-greeting_company {
    font-size: 1.2rem
  }
  .p-greeting_name span {
    font-size: 2rem
  }
  .p-frontierCustomer {
    margin-top: -47px;
    padding-top: 28px;
    padding-bottom: 50px
  }
  .p-frontierCustomer:before {
    top: 0;
    width: calc(100% - (20px * 2))
  }
  .p-contactSect {
    padding: 50px 0
  }
  .p-contactSect_ttl {
    font-size: 2.5rem;
    margin-top: -10px;
    margin-bottom: 18px
  }
  .p-contactSect_txt {
    font-size: 1.5rem;
    margin-bottom: 25px
  }
  .p-contactSect_btnList {
    display: block
  }
  .p-contactSect_btnList_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 20px
  }
  .p-news_heading {
    margin-bottom: 20px
  }
  .p-news_heading .c-label {
    margin-left: 10px
  }
  .p-news_ttl {
    font-size: 2.4rem;
    margin-top: -8px;
    margin-bottom: 15px
  }
  .p-news_img {
    margin-bottom: 40px
  }
  .p-news_content {
    padding-bottom: 40px;
    margin-bottom: 40px
  }
  .p-news_content h2 {
    font-size: 1.8rem;
    padding-bottom: 9px;
    margin-bottom: 15px
  }
  .p-news_content h3 {
    font-size: 1.6rem;
    padding-left: 10px;
    margin-bottom: 20px
  }
  .p-news_content h3:before {
    width: 3px
  }
  .p-news_content h4 {
    font-size: 1.5rem;
    margin-bottom: 20px
  }
  .p-news_content_googlemap {
    padding-top: 80%
  }
  .p-modelhouse {
    margin-top: -50px;
    padding: 30px 0 60px
  }
  .p-modelhouse .l-wrap {
    padding: 0
  }
  .p-modelhouse_ttl {
    font-size: 2.9rem;
    margin-top: -9px;
    margin-bottom: 37px
  }
  .p-modelhouse_img {
    margin-bottom: 33px
  }
  .p-modelhouse_txt {
    font-size: 1.6rem;
    line-height: 1.6875;
    text-align: left
  }
  .p-sdgs {
    margin-top: -50px;
    padding: 30px 0 60px
  }
  .p-sdgs .l-wrap {
    padding: 0
  }
  .p-sdgs_about {
    margin-bottom: 50px
  }
  .p-sdgs_ttl {
    font-size: 2.9rem;
    margin-top: -9px;
    margin-bottom: 37px
  }
  .p-sdgs_img {
    margin-bottom: 33px
  }
  .p-sdgs_txt {
    font-size: 1.6rem;
    line-height: 1.6875;
    text-align: left
  }
  .p-sdgs_inner {
    padding: 15px 20px
  }
  .p-sdgs_lead {
    margin-bottom: 20px;
    padding-bottom: 20px
  }
  .p-sdgs_list {
    margin-bottom: 20px
  }
  .p-sdgs_list dt {
    font-size: 1.5rem
  }
  .p-sdgs_list dd {
    font-size: 1.3rem
  }
  .p-sdgsSect {
    padding: 50px 0
  }
  .p-sdgsSect_iconList {
    margin-bottom: 25px
  }
  .p-sdgsSect_iconList li {
    width: 64px
  }
  .p-sdgsSect_ttl {
    font-size: 2.5rem;
    margin-top: -10px;
    margin-bottom: 48px
  }
  .p-sdgsSect_txt {
    font-size: 1.6rem;
    line-height: 1.5625;
    text-align: left
  }
  .p-afterPremium_pageTtl {
    min-height: 550px;
    padding-top: 68px;
    padding-bottom: 30px;
    background-image: url(/assets/images/company/afterpremium/mainvis_sp.jpg)
  }
  .p-afterPremium_pageTtl_body {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .p-afterPremium_pageTtl_label {
    font-size: 1.6rem;
    margin-bottom: 5px
  }
  .p-afterPremium_pageTtl_ttl {
    font-size: 2.9rem;
    margin-bottom: 7px
  }
  .p-afterPremium_pageTtl_txt {
    font-size: 1.6rem;
    margin-bottom: 24px
  }
  .p-afterPremium_pageTtl_btnList {
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
    display: block
  }
  .p-afterPremium_pageTtl_btnList_item:not(:last-child) {
    margin-right: 0;
    margin-bottom: 15px
  }
  .p-afterPremium_pageTtl_btnList_btn {
    background-size: auto 30px;
    padding-left: 75px;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 30px;
    background-size: 15px;
    background-position: top 50% right 20px
  }
  .p-afterPremium_pageTtl_btnList_btn:before {
    background-size: auto 30px;
    width: 54px
  }
  .p-afterPremium_pageTtl_btnList_btn_label {
    font-size: 1.3rem
  }
  .p-afterPremium_pageTtl_btnList_btn_ttl {
    font-size: 2.1rem
  }
  .p-serviceBox {
    margin-bottom: 20px;
    padding: 38px 18px 0;
    margin-bottom: 20px
  }
  .p-serviceBox .p-serviceBox_heading {
    margin-bottom: 30px;
    padding-bottom: 20px;
    margin-top: 0
  }
  .p-serviceBox .p-serviceBox_heading_ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .p-serviceBox .p-serviceBox_heading_ttl strong {
    font-size: 2.6rem
  }
  .p-serviceBox .p-serviceBox_heading_ttl span {
    font-size: 1.4rem;
    margin-left: 0;
    padding: 3px 5px 5px;
    margin-bottom: 5px
  }
  .p-serviceBox .p-serviceBox_heading_txt {
    font-size: 1.8rem
  }
  .p-serviceBox_itemUnit {
    display: block;
    margin-bottom: 20px
  }
  .p-serviceBox_itemUnit .p-serviceBox_item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none
  }
  .p-serviceBox .p-serviceBox_item {
    margin-right: 0;
    padding-bottom: 25px;
    margin-bottom: 30px;
    border-bottom: 1px solid #e6e6e6
  }
  .p-serviceBox .p-serviceBox_item:before {
    display: none
  }
  .p-serviceBox .p-serviceBox_item_ttl {
    font-size: 1.9rem;
    margin-bottom: 17px
  }
  .p-serviceBox .p-serviceBox_item_subTtl {
    font-size: 1.6rem;
    margin-bottom: 8px
  }
  .p-serviceBox .p-serviceBox_item_img {
    margin-bottom: 15px
  }
  .p-serviceBox .p-serviceBox_item_border {
    margin-bottom: 15px;
    padding: 23px
  }
  .p-serviceBox .p-serviceBox_item_list.p-serviceBox_item_list__horiz {
    display: block;
    margin-right: 0;
    margin-top: 0
  }
  .p-serviceBox .p-serviceBox_item_list.p-serviceBox_item_list__horiz li {
    margin-right: 0;
    margin-top: 0;
    margin-bottom: 5px
  }
  .p-serviceBox .p-serviceBox_item_list li {
    padding-left: 22px;
    font-size: 1.5rem;
    margin-bottom: 5px
  }
  .p-serviceBox .p-serviceBox_item_list li:before {
    width: 15px;
    height: 15px;
    background-size: 12px auto
  }
  .p-serviceBox .p-serviceBox_point {
    margin: 0 -18px;
    padding: 20px 18px 15px;
    display: block
  }
  .p-serviceBox .p-serviceBox_point_heading {
    width: auto;
    margin-bottom: 15px
  }
  .p-serviceBox .p-serviceBox_point_heading:before {
    width: 65px;
    height: 65px;
    font-size: 1.5rem;
    margin-right: 15px
  }
  .p-serviceBox .p-serviceBox_point_label {
    font-size: 1.3rem
  }
  .p-serviceBox .p-serviceBox_point_ttl {
    font-size: 2.6rem
  }
  .p-optionCardUnit.p-optionCardUnit__col3 {
    margin-top: 0;
    margin-right: 0
  }
  .p-optionCardUnit.p-optionCardUnit__col3>:first-child {
    margin-top: 0
  }
  .p-optionCardUnit.p-optionCardUnit__col3>* {
    margin-top: 35px;
    width: 100%;
    margin-right: 0
  }
  .p-voiceList ul {
    margin: -40px 0 0 -20px
  }
  .p-voiceList li {
    width: calc((100% - 40px)/ 2);
    margin: 40px 0 0 20px
  }
  .p-voiceList li p {
    font-size: 1.6rem
  }
  .p-voiceList--movie figure:before {
    width: 46px;
    height: 46px
  }
  .p-voiceGoals {
    margin-top: 45px
  }
  .p-voiceGoals_btn {
    margin-top: 30px
  }
  .p-topGallery {
    margin-bottom: 65px
  }
  .p-topGallery_list {
    margin-bottom: 25px
  }
  .p-topGallery_list ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    max-width: initial
  }
  .p-topGallery_list li {
    width: 100%
  }
  .p-topGallery_list li img {
    width: 100%
  }
  .p-galleryList {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
  .p-galleryList ul {
    margin-top: -10px
  }
  .p-galleryList li {
    margin-top: 10px
  }
  .p-galleryList_wrap {
    max-width: initial
  }
  .p-galleryList_col li {
    width: calc((100% - 10px)/ 2)
  }
  .p-interview_kv {
    padding: 30px 0 45px
  }
  .p-interview_kv_title {
    margin-bottom: 25px;
    font-size: 2.9rem
  }
  .p-interview_kv_image img {
    width: 100%
  }
  .p-interview_wrap {
    width: 100%;
    padding: 0 20px
  }
  .p-interview_profile {
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 50px;
    padding-bottom: 80px
  }
  .p-interview_profile_detail {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0
  }
  .p-interview_profile_detail_label {
    width: 220px;
    padding: 6px 0 3px
  }
  .p-interview_profile_detail_label span {
    font-size: 1.6rem
  }
  .p-interview_profile_detail .c-btn {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }
  .p-interview_profile_image {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    margin-right: 0
  }
  .p-interview_profile_image img {
    width: 100%
  }
  .p-interview_profile dt {
    font-size: 2.6rem
  }
  .p-interview_profile dd {
    font-size: 1.8rem
  }
  .p-interview_profile dd:last-child {
    font-size: 2.2rem
  }
  .p-interview_qa_sect:not(:first-child) {
    margin-top: 30px
  }
  .p-interview_qa_title {
    font-size: 2.1rem
  }
  .p-interview_qa_comment {
    font-size: 1.6rem
  }
  .p-interview_qa_image {
    margin-top: 45px
  }
  .p-interview_qa_image img {
    width: 100%
  }
  .p-loading_logo img {
    max-width: 300px
  }
  .p-loading_loader {
    font-size: 12px
  }
  .c-sampleHeader .c-sampleHeader_utility {
    position: absolute;
    width: 100%;
    top: 100%;
    left: 0;
    background-color: #000
  }
  .c-sampleHeader .c-sampleHeader_utility ul {
    display: block
  }
  .c-sampleHeader .c-sampleHeader_utility ul li {
    margin-right: 0
  }
  .c-sampleBoxUnit.c-sampleBoxUnit__col3 {
    margin-top: -20px;
    margin-right: -4%
  }
  .c-sampleBoxUnit.c-sampleBoxUnit__col3>* {
    margin-top: 20px;
    margin-right: 3.84615%;
    width: 29.48718%
  }
  .c-sampleBoxUnit.c-sampleBoxUnit__col4 {
    margin-top: 0;
    margin-right: 0
  }
  .c-sampleBoxUnit.c-sampleBoxUnit__col4>:first-child {
    margin-top: 0
  }
  .c-sampleBoxUnit.c-sampleBoxUnit__col4>* {
    float: none
  }
  .c-sampleBoxUnit.c-sampleBoxUnit__col4>* {
    margin-top: 20px;
    width: 100%;
    margin-right: 0
  }
  .c-tabBtnSample.c-tabBtnSample__col6 {
    margin-top: -50px;
    margin-right: -7.26744%
  }
  .c-tabBtnSample.c-tabBtnSample__col6>* {
    margin-top: 50px;
    margin-right: 6.77507%;
    width: 9.8916%
  }
  .c-sampleModal .c-sampleModal_inner {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }
  .u-tal_sp {
    text-align: left!important
  }
  .u-tac_sp {
    text-align: center!important
  }
  .u-tar_sp {
    text-align: right!important
  }
  .u-bgPoint:before {
    border-width: 21px
  }
  .u-mbSmall {
    margin-bottom: 10px
  }
  .u-mbNormal {
    margin-bottom: 20px
  }
  .u-mbMedium {
    margin-bottom: 30px
  }
  .u-mbLarge {
    margin-bottom: 40px
  }
  .u-mbExLarge {
    margin-bottom: 60px
  }
  .u-mb0_sp {
    margin-bottom: 0!important
  }
  .u-mb5_sp {
    margin-bottom: 5px!important
  }
  .u-mb10_sp {
    margin-bottom: 10px!important
  }
  .u-mb15_sp {
    margin-bottom: 15px!important
  }
  .u-mb20_sp {
    margin-bottom: 20px!important
  }
  .u-mb25_sp {
    margin-bottom: 25px!important
  }
  .u-mb30_sp {
    margin-bottom: 30px!important
  }
  .u-mb35_sp {
    margin-bottom: 35px!important
  }
  .u-mb40_sp {
    margin-bottom: 40px!important
  }
  .u-mb45_sp {
    margin-bottom: 45px!important
  }
  .u-mb50_sp {
    margin-bottom: 50px!important
  }
  .u-mb55_sp {
    margin-bottom: 55px!important
  }
  .u-mb60_sp {
    margin-bottom: 60px!important
  }
  .u-mb65_sp {
    margin-bottom: 65px!important
  }
  .u-mb70_sp {
    margin-bottom: 70px!important
  }
  .u-mb75_sp {
    margin-bottom: 75px!important
  }
  .u-mb80_sp {
    margin-bottom: 80px!important
  }
  .u-mb85_sp {
    margin-bottom: 85px!important
  }
  .u-mb90_sp {
    margin-bottom: 90px!important
  }
  .u-mb95_sp {
    margin-bottom: 95px!important
  }
  .u-mb100_sp {
    margin-bottom: 100px!important
  }
  .u-mt0_sp {
    margin-top: 0!important
  }
  .u-mt5_sp {
    margin-top: 5px!important
  }
  .u-mt10_sp {
    margin-top: 10px!important
  }
  .u-mt15_sp {
    margin-top: 15px!important
  }
  .u-mt20_sp {
    margin-top: 20px!important
  }
  .u-mt25_sp {
    margin-top: 25px!important
  }
  .u-mt30_sp {
    margin-top: 30px!important
  }
  .u-mt35_sp {
    margin-top: 35px!important
  }
  .u-mt40_sp {
    margin-top: 40px!important
  }
  .u-mt45_sp {
    margin-top: 45px!important
  }
  .u-mt50_sp {
    margin-top: 50px!important
  }
  .u-mt55_sp {
    margin-top: 55px!important
  }
  .u-mt60_sp {
    margin-top: 60px!important
  }
  .u-mt65_sp {
    margin-top: 65px!important
  }
  .u-mt70_sp {
    margin-top: 70px!important
  }
  .u-mt75_sp {
    margin-top: 75px!important
  }
  .u-mt80_sp {
    margin-top: 80px!important
  }
  .u-mt85_sp {
    margin-top: 85px!important
  }
  .u-mt90_sp {
    margin-top: 90px!important
  }
  .u-mt95_sp {
    margin-top: 95px!important
  }
  .u-mt100_sp {
    margin-top: 100px!important
  }
  .u-mbLast {
    margin-bottom: 40px
  }
  .u-pb0_sp {
    padding-bottom: 0!important
  }
  .u-pb5_sp {
    padding-bottom: 5px!important
  }
  .u-pb10_sp {
    padding-bottom: 10px!important
  }
  .u-pb15_sp {
    padding-bottom: 15px!important
  }
  .u-pb20_sp {
    padding-bottom: 20px!important
  }
  .u-pb25_sp {
    padding-bottom: 25px!important
  }
  .u-pb30_sp {
    padding-bottom: 30px!important
  }
  .u-pb35_sp {
    padding-bottom: 35px!important
  }
  .u-pb40_sp {
    padding-bottom: 40px!important
  }
  .u-pb45_sp {
    padding-bottom: 45px!important
  }
  .u-pb50_sp {
    padding-bottom: 50px!important
  }
  .u-pb55_sp {
    padding-bottom: 55px!important
  }
  .u-pb60_sp {
    padding-bottom: 60px!important
  }
  .u-pb65_sp {
    padding-bottom: 65px!important
  }
  .u-pb70_sp {
    padding-bottom: 70px!important
  }
  .u-pb75_sp {
    padding-bottom: 75px!important
  }
  .u-pb80_sp {
    padding-bottom: 80px!important
  }
  .u-pb85_sp {
    padding-bottom: 85px!important
  }
  .u-pb90_sp {
    padding-bottom: 90px!important
  }
  .u-pb95_sp {
    padding-bottom: 95px!important
  }
  .u-pb100_sp {
    padding-bottom: 100px!important
  }
  .u-pt0_sp {
    padding-top: 0!important
  }
  .u-pt5_sp {
    padding-top: 5px!important
  }
  .u-pt10_sp {
    padding-top: 10px!important
  }
  .u-pt15_sp {
    padding-top: 15px!important
  }
  .u-pt20_sp {
    padding-top: 20px!important
  }
  .u-pt25_sp {
    padding-top: 25px!important
  }
  .u-pt30_sp {
    padding-top: 30px!important
  }
  .u-pt35_sp {
    padding-top: 35px!important
  }
  .u-pt40_sp {
    padding-top: 40px!important
  }
  .u-pt45_sp {
    padding-top: 45px!important
  }
  .u-pt50_sp {
    padding-top: 50px!important
  }
  .u-pt55_sp {
    padding-top: 55px!important
  }
  .u-pt60_sp {
    padding-top: 60px!important
  }
  .u-pt65_sp {
    padding-top: 65px!important
  }
  .u-pt70_sp {
    padding-top: 70px!important
  }
  .u-pt75_sp {
    padding-top: 75px!important
  }
  .u-pt80_sp {
    padding-top: 80px!important
  }
  .u-pt85_sp {
    padding-top: 85px!important
  }
  .u-pt90_sp {
    padding-top: 90px!important
  }
  .u-pt95_sp {
    padding-top: 95px!important
  }
  .u-pt100_sp {
    padding-top: 100px!important
  }
  .u-mh0_sp {
    max-height: 0!important
  }
  .u-mh1_sp {
    max-height: 1px!important
  }
  .u-mh2_sp {
    max-height: 2px!important
  }
  .u-mh3_sp {
    max-height: 3px!important
  }
  .u-mh4_sp {
    max-height: 4px!important
  }
  .u-mh5_sp {
    max-height: 5px!important
  }
  .u-mh6_sp {
    max-height: 6px!important
  }
  .u-mh7_sp {
    max-height: 7px!important
  }
  .u-mh8_sp {
    max-height: 8px!important
  }
  .u-mh9_sp {
    max-height: 9px!important
  }
  .u-mh10_sp {
    max-height: 10px!important
  }
  .u-mh11_sp {
    max-height: 11px!important
  }
  .u-mh12_sp {
    max-height: 12px!important
  }
  .u-mh13_sp {
    max-height: 13px!important
  }
  .u-mh14_sp {
    max-height: 14px!important
  }
  .u-mh15_sp {
    max-height: 15px!important
  }
  .u-mh16_sp {
    max-height: 16px!important
  }
  .u-mh17_sp {
    max-height: 17px!important
  }
  .u-mh18_sp {
    max-height: 18px!important
  }
  .u-mh19_sp {
    max-height: 19px!important
  }
  .u-mh20_sp {
    max-height: 20px!important
  }
  .u-mh21_sp {
    max-height: 21px!important
  }
  .u-mh22_sp {
    max-height: 22px!important
  }
  .u-mh23_sp {
    max-height: 23px!important
  }
  .u-mh24_sp {
    max-height: 24px!important
  }
  .u-mh25_sp {
    max-height: 25px!important
  }
  .u-mh26_sp {
    max-height: 26px!important
  }
  .u-mh27_sp {
    max-height: 27px!important
  }
  .u-mh28_sp {
    max-height: 28px!important
  }
  .u-mh29_sp {
    max-height: 29px!important
  }
  .u-mh30_sp {
    max-height: 30px!important
  }
  .u-mh31_sp {
    max-height: 31px!important
  }
  .u-mh32_sp {
    max-height: 32px!important
  }
  .u-mh33_sp {
    max-height: 33px!important
  }
  .u-mh34_sp {
    max-height: 34px!important
  }
  .u-mh35_sp {
    max-height: 35px!important
  }
  .u-mh36_sp {
    max-height: 36px!important
  }
  .u-mh37_sp {
    max-height: 37px!important
  }
  .u-mh38_sp {
    max-height: 38px!important
  }
  .u-mh39_sp {
    max-height: 39px!important
  }
  .u-mh40_sp {
    max-height: 40px!important
  }
  .u-mh41_sp {
    max-height: 41px!important
  }
  .u-mh42_sp {
    max-height: 42px!important
  }
  .u-mh43_sp {
    max-height: 43px!important
  }
  .u-mh44_sp {
    max-height: 44px!important
  }
  .u-mh45_sp {
    max-height: 45px!important
  }
  .u-mh46_sp {
    max-height: 46px!important
  }
  .u-mh47_sp {
    max-height: 47px!important
  }
  .u-mh48_sp {
    max-height: 48px!important
  }
  .u-mh49_sp {
    max-height: 49px!important
  }
  .u-mh50_sp {
    max-height: 50px!important
  }
  .u-mh51_sp {
    max-height: 51px!important
  }
  .u-mh52_sp {
    max-height: 52px!important
  }
  .u-mh53_sp {
    max-height: 53px!important
  }
  .u-mh54_sp {
    max-height: 54px!important
  }
  .u-mh55_sp {
    max-height: 55px!important
  }
  .u-mh56_sp {
    max-height: 56px!important
  }
  .u-mh57_sp {
    max-height: 57px!important
  }
  .u-mh58_sp {
    max-height: 58px!important
  }
  .u-mh59_sp {
    max-height: 59px!important
  }
  .u-mh60_sp {
    max-height: 60px!important
  }
  .u-mh61_sp {
    max-height: 61px!important
  }
  .u-mh62_sp {
    max-height: 62px!important
  }
  .u-mh63_sp {
    max-height: 63px!important
  }
  .u-mh64_sp {
    max-height: 64px!important
  }
  .u-mh65_sp {
    max-height: 65px!important
  }
  .u-mh66_sp {
    max-height: 66px!important
  }
  .u-mh67_sp {
    max-height: 67px!important
  }
  .u-mh68_sp {
    max-height: 68px!important
  }
  .u-mh69_sp {
    max-height: 69px!important
  }
  .u-mh70_sp {
    max-height: 70px!important
  }
  .u-mh71_sp {
    max-height: 71px!important
  }
  .u-mh72_sp {
    max-height: 72px!important
  }
  .u-mh73_sp {
    max-height: 73px!important
  }
  .u-mh74_sp {
    max-height: 74px!important
  }
  .u-mh75_sp {
    max-height: 75px!important
  }
  .u-mh76_sp {
    max-height: 76px!important
  }
  .u-mh77_sp {
    max-height: 77px!important
  }
  .u-mh78_sp {
    max-height: 78px!important
  }
  .u-mh79_sp {
    max-height: 79px!important
  }
  .u-mh80_sp {
    max-height: 80px!important
  }
  .u-mh81_sp {
    max-height: 81px!important
  }
  .u-mh82_sp {
    max-height: 82px!important
  }
  .u-mh83_sp {
    max-height: 83px!important
  }
  .u-mh84_sp {
    max-height: 84px!important
  }
  .u-mh85_sp {
    max-height: 85px!important
  }
  .u-mh86_sp {
    max-height: 86px!important
  }
  .u-mh87_sp {
    max-height: 87px!important
  }
  .u-mh88_sp {
    max-height: 88px!important
  }
  .u-mh89_sp {
    max-height: 89px!important
  }
  .u-mh90_sp {
    max-height: 90px!important
  }
  .u-mh91_sp {
    max-height: 91px!important
  }
  .u-mh92_sp {
    max-height: 92px!important
  }
  .u-mh93_sp {
    max-height: 93px!important
  }
  .u-mh94_sp {
    max-height: 94px!important
  }
  .u-mh95_sp {
    max-height: 95px!important
  }
  .u-mh96_sp {
    max-height: 96px!important
  }
  .u-mh97_sp {
    max-height: 97px!important
  }
  .u-mh98_sp {
    max-height: 98px!important
  }
  .u-mh99_sp {
    max-height: 99px!important
  }
  .u-mh100_sp {
    max-height: 100px!important
  }
  .u-pc {
    display: none!important
  }
  


}

@media only screen and (min-width:769px) {
  .l-header .l-header_utility {
    display: -webkit-box!important;
    display: -ms-flexbox!important;
    display: flex!important
  }
  .l-gNav .l-gNav_item:hover .l-gNav_item_child {
    top: 65px;
    opacity: 1;
    visibility: visible
  }
  .c-inputList.c-inputList__col3>li:nth-child(3n) {
    margin-right: 0
  }
  .js-spAccordion_body {
    display: block!important
  }
  .p-topMV .p-topMV_item:hover .p-topMV_item_ttl:before {
    opacity: 0
  }
  .p-topMV .p-topMV_item:hover .p-topMV_item_body {
    max-height: 50vh
  }
  .p-topPhilosophy {
    background-attachment: fixed
  }
  .p-topPerformance_wrap {
    background-attachment: fixed
  }
  .u-tal_pc {
    text-align: left!important
  }
  .u-tac_pc {
    text-align: center!important
  }
  .u-tar_pc {
    text-align: right!important
  }
  .u-mb0_pc {
    margin-bottom: 0!important
  }
  .u-mb5_pc {
    margin-bottom: 5px!important
  }
  .u-mb10_pc {
    margin-bottom: 10px!important
  }
  .u-mb15_pc {
    margin-bottom: 15px!important
  }
  .u-mb20_pc {
    margin-bottom: 20px!important
  }
  .u-mb25_pc {
    margin-bottom: 25px!important
  }
  .u-mb30_pc {
    margin-bottom: 30px!important
  }
  .u-mb35_pc {
    margin-bottom: 35px!important
  }
  .u-mb40_pc {
    margin-bottom: 40px!important
  }
  .u-mb45_pc {
    margin-bottom: 45px!important
  }
  .u-mb50_pc {
    margin-bottom: 50px!important
  }
  .u-mb55_pc {
    margin-bottom: 55px!important
  }
  .u-mb60_pc {
    margin-bottom: 60px!important
  }
  .u-mb65_pc {
    margin-bottom: 65px!important
  }
  .u-mb70_pc {
    margin-bottom: 70px!important
  }
  .u-mb75_pc {
    margin-bottom: 75px!important
  }
  .u-mb80_pc {
    margin-bottom: 80px!important
  }
  .u-mb85_pc {
    margin-bottom: 85px!important
  }
  .u-mb90_pc {
    margin-bottom: 90px!important
  }
  .u-mb95_pc {
    margin-bottom: 95px!important
  }
  .u-mb100_pc {
    margin-bottom: 100px!important
  }
  .u-mt0_pc {
    margin-top: 0!important
  }
  .u-mt5_pc {
    margin-top: 5px!important
  }
  .u-mt10_pc {
    margin-top: 10px!important
  }
  .u-mt15_pc {
    margin-top: 15px!important
  }
  .u-mt20_pc {
    margin-top: 20px!important
  }
  .u-mt25_pc {
    margin-top: 25px!important
  }
  .u-mt30_pc {
    margin-top: 30px!important
  }
  .u-mt35_pc {
    margin-top: 35px!important
  }
  .u-mt40_pc {
    margin-top: 40px!important
  }
  .u-mt45_pc {
    margin-top: 45px!important
  }
  .u-mt50_pc {
    margin-top: 50px!important
  }
  .u-mt55_pc {
    margin-top: 55px!important
  }
  .u-mt60_pc {
    margin-top: 60px!important
  }
  .u-mt65_pc {
    margin-top: 65px!important
  }
  .u-mt70_pc {
    margin-top: 70px!important
  }
  .u-mt75_pc {
    margin-top: 75px!important
  }
  .u-mt80_pc {
    margin-top: 80px!important
  }
  .u-mt85_pc {
    margin-top: 85px!important
  }
  .u-mt90_pc {
    margin-top: 90px!important
  }
  .u-mt95_pc {
    margin-top: 95px!important
  }
  .u-mt100_pc {
    margin-top: 100px!important
  }
  .u-sp {
    display: none!important
  }
}

@media (aspect-ratio:16 / 9), (min-aspect-ratio:16 / 9) {
  .video-wrap video {
    width: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
  }
}

@media (max-aspect-ratio:16 / 9) {
  .video-wrap video {
    height: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
  }
}


/*# sourceMappingURL=sourcemaps/master.css.map */

/* interview01 20230622 */
.interview01_wrapper .pc {
  display: block;
}
.interview01_wrapper .tbsp {
  display: none;
}
.interview01_wrapper .tb {
  display: none;
}
.interview01_wrapper .sp {
  display: none;
}
.interview01_kv {
  display: flex;
}
.interview01_kv .interview01_txt-box,
.interview01_kv .interview01_img-box {
  width: 50%;
  height: 500px;
}
.interview01_kv .interview01_txt-box {
  display: flex;
  justify-content: flex-end;
  min-width: 800px;
  background-color: #008578;
  position: relative;
  z-index: 1;
}
.interview01_kv .interview01_txt-box::after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  border-top: 500px solid #008578;
  border-right: 125px solid transparent;
  position: absolute;
  top: 0;
  right: -125px;
  z-index: -1;
}
.interview01_txt-box-inner {
  padding: 70px 35px 40px;
}
.interview01_title {
  margin-bottom: 25px;
  font-size: 5.5rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
}
.interview01_kv-exam {
  margin-bottom: 30px;
  color: #fff;
}
.interview01_kv-exam dt {
  display: inline-block;
  margin-bottom: 15px;
  padding: 0 20px;
  font-size: 2rem;
  line-height: 34px;
  border: 1px solid #fff;
}
.interview01_kv-exam dd {
  font-size: 1.9rem;
  letter-spacing: .05em;
}
.interview01_kv-exam-img {
  display: flex;
  gap: 8px;
}
.interview01_kv .interview01_img-box img {
  width: 100%;
  height: 500px;
  object-fit: cover;
}
.interview01_kv .interview01_img-box .pc {
  display: block;
}
.interview01_kv .interview01_img-box .sp {
  display: none;
}
.interview01_exam {
  padding: 40px 0 120px;
  background-color: #e1f1dd;
}
.interview01_exam-ttl {
  margin-bottom: 20px;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
  color: #008578;
}
.image-largesystem,
.image-largesystem img {
  width: 100%;
  margin: 0 auto 3rem;
}
.interview01_exam-list {
  margin-bottom: 20px;
  display: flex;
  justify-content: space-around;
}
.interview01_exam-list li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 238px;
  height: 238px;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  color: #fff;
  position: relative;
  z-index: 0;
}
.interview01_exam-list li::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #00a761 0%, #00a761 50%, #009761 50%, #009761 100%);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%) rotate(15deg);
  overflow: hidden;
  z-index: -1;
}
.interview01_txt {
  font-size: 1.9rem;
  letter-spacing: .05em;
  margin-top: 1rem;
}
.interview01_case-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 50px;
  margin-top: 30px;
}
.interview01_case-list li {
  width: 465px;
}
.interview01_case-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 280px;
  font-size: 2.6rem;
  font-weight: 700;
  color: #fff;
  background-color: #008578;
}
.interview01_case-list li h4 {
  margin-top: 10px;
  font-size: 2.4rem;
  font-weight: 700;
}
.interview01_profile {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin-bottom: 90px;
}
.interview01_profile-label {
  width: 100%;
  margin-bottom: 90px;
  text-align: center;
}
.interview01_profile-label span {
  display: inline-block;
  padding: 10px 40px;
  font-size: 2rem;
  font-weight: 100;
  letter-spacing: .5em;
  color: #174886;
  background-color: #ffde00;
}
.interview01_profile-txt {
  width: calc(100% - 500px - 60px);
}
.interview01_profile-txt dl dt {
  margin-bottom: 20px;
  font-size: 3.5rem;
  font-weight: 700;
  line-height: 1;
}
.interview01_profile-txt dl dd {
  font-size: 2.1rem;
}
.interview01_profile-txt dl dd:last-child {
  font-size: 3rem;
}
.interview01_btn {
  margin-top: 20px;
  padding: 9px 0;
  text-align: center;
  background-color: #2c4384;
  border-color: #2c4384;
}
.interview01_btn:hover {
  color: #2c4384;
}
@media only screen and (max-width: 768px) {
  .interview01_wrapper .pc {
    display: none;
  }
  .interview01_wrapper .tbsp {
    display: block;
  }
  .interview01_wrapper .tb {
    display: block;
  }
  .interview01_wrapper .sp {
    display: none;
  }
  .interview01_kv {
    flex-direction: column-reverse;
  }
  .interview01_kv .interview01_txt-box,
  .interview01_kv .interview01_img-box {
    width: 100%;
  }
  .interview01_kv .interview01_txt-box {
    min-width: unset;
    height: auto;
  }
  .interview01_txt-box-inner {
    padding-top: 0;
  }
  .interview01_kv .interview01_txt-box::after {
    width: 150%;
    height: 120px;
    background-color: #008578;
    border: 0;
    top: -92px;
    right: unset;
    left: 0;
    transform: rotate(-9deg);
  }
  .interview01_title {
    text-align: center;
  }
  .interview01_kv-exam {
    text-align: center;
  }
  .interview01_kv-exam-img {
    width: 100%;
  }
  .interview01_kv-exam-img img {
    gap: 10px;
    width: calc((100% - 16px) / 3);
  }
  .interview01_kv .interview01_img-box,
  .interview01_kv .interview01_img-box img {
    height: 430px;
  }
  .interview01_kv .interview01_img-box .pc {
    display: none;
  }
  .interview01_kv .interview01_img-box .sp {
    display: block;
  }
  .interview01_exam {
    padding-bottom: 50px;
  }
  .image-largesystem,
  .image-largesystem img {
    margin: 0 auto 1rem;
  }
  .interview01_exam-list {
    flex-wrap: wrap;
    gap: 40px 0;
  }
  .interview01_exam-list li {
    width: 250px;
    height: 250px;
  }
  .interview01_case-list {
    gap: 30px 5%;
  }
  .interview01_case-list li {
    width: 100%;
  }
  .interview01_case-ttl {
    height: 150px;
  }
  .interview01_case-list li img {
    width: 100%;
  }
  .interview01_profile {
    flex-direction: column;
    margin-bottom: 30px;
  }
  .interview01_profile-label {
    margin-bottom: 30px;
    text-align: left;
  }
  .interview01_profile-txt {
    width: 100%;
    margin-bottom: 30px;
  }
  .interview01_profile.box-green {
    flex-direction: column;
  }
  .interview01_profile.box-green .p-interview_profile_image {
    width: 100%;
  }
  .interview01_btn {
    margin: 30px auto 0;
  }
  .interview01_qa_title {
    font-size: 30px;
  }
 }


@media only screen and (max-width: 480px) {
  .interview01_wrapper .pc {
    display: none;
  }
  .interview01_wrapper .tb {
    display: none;
  }
  .interview01_wrapper .sp {
    display: block;
  }
  .interview01_kv .interview01_img-box,
  .interview01_kv .interview01_img-box img {
    height: 215px;
  }
  .interview01_kv .interview01_txt-box::after {
    top: -45px;
  }
  .interview01_txt-box-inner {
    padding: 0 10px 10px;
  }
  .interview01_title {
    margin-bottom: 10px;
    font-size: 2.25rem;
  }
  .interview01_kv-exam {
    margin-bottom: 10px;
  }
  .interview01_kv-exam dt {
    margin-bottom: 10px;
    padding: 0 10px;
    font-size: 10px;
    line-height: 18px;
  }
  .interview01_kv-exam dd {
    font-size: 1rem;
  }
  .interview01_kv-exam-img {
    gap: 4px;
  }
  .interview01_kv-exam-img img {
    width: calc((100% - 8px) / 3);
  }
  .interview01_exam {
    padding: 20px 0 45px;
  }
  .interview01_exam-ttl {
    margin-bottom: 15px;
    font-size: 2.25rem;
  }
  .interview01_exam-list {
    gap: 8px 0;
  }
  .interview01_exam-list li {
    width: 160px;
    height: 160px;
    font-size: 1.7rem;
  }
  .interview01_txt {
    font-size: 1.25rem;
  }
  .interview01_case-list {
    gap: 0;
  }
  .interview01_case-list li:not(:first-child,:last-child) {
    margin-bottom: 30px;
  }
  .interview01_case-list li:first-child {
    margin-bottom: 10px;
  }
  .interview01_case-ttl {
    height: 75px;
    font-size: 1.8rem;
  }
  .interview01_case-list li h4 {
    margin-top: 5px;
    font-size: 1.7rem;
  }
  .interview01_profile-label {
    margin-bottom: 15px;
  }
  .interview01_profile-label span {
    padding: 2px 24px;
    font-size: 1rem;
  }
  .interview01_profile-txt dl dt {
    margin-bottom: 10px;
    font-size: 1.75rem;
  }
  .interview01_profile-txt dl dd {
    font-size: 1.05rem;
  }
  .interview01_profile-txt dl dd:last-child {
    font-size: 1.5rem;
  }
  .interview01_profile-txt {
    margin-bottom: 15px;
  }
  .interview01_btn {
    width: 130px;
    margin-top: 20px;
    padding: 4px;
    font-size: 1rem;
  }
  .interview01_qa_sect:not(:first-child) {
    margin-top: 10px;
  }
  .interview01_qa_title {
    font-size: 2.25rem;
    line-height: 1.45;
  }
  .interview01_qa_comment {
    font-size: 1.25rem;
  }
  .interview01_qa_image {
    margin-top: 30px;
  }

p.c-pointBox_txtbig {
  font-size: 120%!important;
  margin-bottom: 10px;
}
.c-pointBox_body img{
  width: auto;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
  .c-sectTtl_alli {
  font-size: 2.2rem;
    margin-bottom: 33px;
    padding: 0 45px;
    margin-top: 0;
}
}


    

/*ここから西塚小川20251001pm1600*/

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc {
  display: block !important;
}
.sp {
  display: none !important;
}

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
}

.show-pc {
  display: block;
}

.show-sp {
  display: none;
}

.show-sp480-over {
  display: block;
}

.show-sp480 {
  display: none;
}

@media screen and (max-width: 768px) {
  .show-pc {
    display: none;
  }
  .show-sp {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .show-sp480-over {
    display: none;
  }
  .show-sp480 {
    display: block;
  }
}

.profile-about .show-sp {
  display: none !important;
}
.profile-about .show-pc {
  display: block !important;
}

/* SP版での設定 */
@media screen and (max-width: 768px) {
  .profile-about .show-pc {
    display: none !important;
  }
  .profile-about .show-sp {
    display: block !important;
  }
}

.profile-about__wrap01 {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-bottom: 30px;
}

.profile-about__wrap01 .profile-about__box {
  width: calc(50% - 15px);
  flex-shrink: 0;
  position: relative;
}

.profile-about__wrap02 {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}
.profile-about__wrap02 .profile-about__box {
  width: 100%;
  position: relative;
}

.profile-about__wrap01:nth-of-type(3) .profile-about__box {
  width: calc(50% - 15px);
}

@media screen and (max-width: 768px) {
  .profile-about__wrap01 {
    flex-direction: column;
    gap: 20px;
    margin-bottom: 20px;
  }

  .profile-about__wrap02 {
    gap: 20px;
    margin-bottom: 20px;
  }

  .profile-about__wrap01 .profile-about__box {
    width: 100% !important;
    flex: none !important;
  }

  .profile-about__wrap02 .profile-about__box {
    width: 100%;
  }

  .profile-about__wrap01:nth-of-type(2) .profile-about__box.show-pc {
    display: none !important;
  }

  .profile-about__wrap01:nth-of-type(2) .profile-about__box.show-sp {
    display: block !important;
    width: 100% !important;
    margin-bottom: 20px;
  }
}

.profile-about__box img {
  display: block;
  width: 100%;
  height: auto;
}

.profile-about__txt {
  position: absolute;
  top: 20px;
  left: 20px;
  z-index: 10;
  font-size: 30px;
  font-weight: 900;
  letter-spacing: 0.5rem;
  color: #000000;
}
@media screen and (max-width: 550px) {
  .profile-about__txt {
    top: 10px;
    left: 20px;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 0.4rem;
  }
}

.profile-about__txt02 {
  position: absolute;
  bottom: 190px;
  left: 20px;
  z-index: 10;
  font-size: 30px;
  font-weight: 900;
  letter-spacing: 0.5rem;
  color: #000000;
}
@media screen and (max-width: 550px) {
  .profile-about__txt02 {
    bottom: 190px;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 0.4rem;
  }
}

.profile-about__txt03 {
  position: absolute;
  bottom: 10px;
  right: 20px;
  z-index: 10;
  font-size: 15px;

  color: #000000;
}
@media screen and (max-width: 550px) {
  .profile-about__txt03 {
    font-size: 10px;
  }
}

/*ここまで数字で見るフロンティア小川*/

/* ここから作業 調達力小川 */

.item-wrapper {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: 50px;
}

.item-wrap {
  width: calc(50% - 25px);
  flex: none;
  flex-shrink: 0;
}

/* SP版（768px以下）：1列縦並び */
@media screen and (max-width: 768px) {
  .item-wrapper {
    gap: 20px;
    margin-bottom: 50px;
  }

  .item-wrap {
    width: 100%;
  }
}

.item-ttl {
  font-size: 120px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 60px;
  letter-spacing: 0.14em;
}

@media screen and (max-width: 768px) {
  .item-ttl {
    font-size: clamp(
      55px,
      calc((100 - 55) * ((100vw - 375px) / (768 - 375)) + 55px),
      100px
    );
    line-height: 0.9;
    letter-spacing: 0.1em;
  }
}

.item-wrap__ttl {
  font-size: 22px;
  font-weight: 900;
  color: #ffffff !important;
  background-color: #000000;
  padding: 5px 20px;
  margin-bottom: 20px;
}

.item-ttl__span {
  font-size: 70px;
  font-weight: 900 !important;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 768px) {
  .item-ttl__span {
    font-size: clamp(
      35px,
      calc((70 - 35) * ((100vw - 375px) / (768 - 375)) + 35px),
      70px
    );
    line-height: 0.9;
    letter-spacing: 0.1em;
  }
}

.item-wrap__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.item-wrap__list dt {
  font-size: 20px;
  font-weight: bold;
  width: 100px;
  width: 30%;
  padding-right: 15px;
  margin-bottom: 5px;
}

.item-wrap__list dd {
  font-size: 20px;
  font-weight: bold;
  width: 70%;
  margin-bottom: 5px;
}
/*ここまで調達力小川*/

/*ここから Frontier ESSENCE 小川作業*/
.essence .base-ttl {
  font-size: 90px !important;
  font-weight: 900;
  margin-bottom: 30px;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 768px) {
  .essence .base-ttl {
    font-size: clamp(
      35px,
      calc((80 - 35) * ((100vw - 375px) / (768 - 375)) + 35px),
      80px
    ) !important;
  }
}

.essence-wrapper {
  display: flex;
  gap: 40px;
  border-bottom: 2px solid #cccccc;
  margin-bottom: 40px;
  padding-bottom: 40px;
}

.essence-item {
  width: calc(50% - 20px);
  position: relative;
  border-right: 2px solid #cccccc;
  padding-right: 40px;
}

.essence-item:nth-child(2) {
  border-right: none;
  padding-right: 0;
}

/* SP用 */
@media screen and (max-width: 768px) {
  .essence-wrapper {
    flex-direction: column;
    gap: 20px;
    padding-bottom: 0;
    margin-bottom: 20px;
    border-bottom: 2px solid #cccccc; /* wrapper 同士の間に線を追加 */
  }

  /* 最後の wrapper の線は不要 */
  .essence-wrapper:last-child {
    border-bottom: none;
  }

  .essence-item {
    width: 100%;
    border-right: none;
    padding-right: 0;
    border-bottom: 2px solid #cccccc; /* アイテム間の下線はそのまま */
    padding-bottom: 20px;
  }

  .essence-wrapper .essence-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
}

.essence-item__box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  padding: 20px;
}

.essence-text {
  font-size: 50px;
  font-weight: 900;
  color: #000000;
  margin-bottom: 10px;
  text-align: left;
  line-height: 1;
}

@media screen and (max-width: 550px) {
  .essence-text {
    font-size: 8.5vw;
    font-weight: 900;
    color: #000000;
    margin-bottom: 10px;
    text-align: left;
    line-height: 1;
  }
}

.essence-text__small {
  color: #000000;
  font-size: 21px;

  font-weight: bold;
  line-height: 1.4;
  text-align: left;
}

@media screen and (max-width: 550px) {
  .essence-text__small {
    color: #000000;
    font-size: 3.4vw;
    font-weight: bold;
    line-height: 1.4;
    text-align: left;
  }
}

.essence-item__box p + p {
  margin-top: 0px;
}
/*ここまで Frontier ESSENCE 小川作業*/

.about-ttl {
  font-size: 120px;
  font-weight: 900;
  line-height: 1.3;
  margin-bottom: 30px;
  letter-spacing: 0.14em;
}
@media screen and (max-width: 768px) {
  .about-ttl {
    font-size: 12vw;
  }
}

.base-ttl {
  font-size: 70px;
  font-weight: 900;
  margin-bottom: 30px;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 768px) {
  .base-ttl {
    font-size: clamp(
      27px,
      calc((50 - 27) * ((100vw - 375px) / (768 - 375)) + 27px),
      50px
    );
  }
}

.essence .base-ttl {
  font-size: 70px;
  font-weight: 900;
  letter-spacing: -0.01em;
}
.essencemini-ttl {
  font-weight: 800; /* 中太字 */
  font-size: 22px;
  letter-spacing: 0.01em;
}

.end-ttl {
  font-size: 120px;
  font-weight: 900;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .end-ttl {
    font-size: clamp(
      55px,
      calc((100 - 55) * ((100vw - 375px) / (768 - 375)) + 55px),
      100px
    );
    line-height: 0.9;
    letter-spacing: 0.02em;
  }
}

.item-wrap__ttl {
  font-size: 22px;
  font-weight: 600;
  color: #ffffff !important;
  background-color: #000000;
  padding: 5px 20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .item-wrap__ttl {
    font-size: clamp(
      15px,
      calc((22 - 15) * ((100vw - 375px) / (768 - 375)) + 15px),
      22px
    );
  }
}

.end-ttl__span {
  font-size: 70px;
  font-weight: 900 !important;
}
@media screen and (max-width: 768px) {
  .end-ttl__span {
    font-size: clamp(
      28px,
      calc((55 - 28) * ((100vw - 375px) / (768 - 375)) + 28px),
      55px
    );
  }
}

.item-wrap__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.item-wrap__list dt {
  font-size: 20px;
  font-weight: 600; /* 太字 */
  width: 100px;
  width: 30%;
  padding-right: 15px;
  margin-bottom: 5px;
}
.item-wrap__list dt {
  font-size: clamp(
    14px,
    calc((20 - 14) * ((100vw - 375px) / (768 - 375)) + 14px),
    20px
  );
}

.item-wrap__list dd {
  font-size: 20px;
  font-weight: 400; /* 細字 */
  width: 70%;
  margin-bottom: 5px;
}

@media screen and (max-width: 768px) {
  .item-wrap__list dd {
    font-size: clamp(
      14px,
      calc((20 - 14) * ((100vw - 375px) / (768 - 375)) + 14px),
      20px
    );
  }
}

.aboutline {
  font-weight: 400; /* 細字 */
  font-size: 20px;
  margin-bottom: 50px;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .aboutline {
    font-weight: 400; /* 細字 */
    font-size: 17px;
    margin-bottom: 50px;
    line-height: 2;
  }
}

.essenceline {
  font-weight: 800; /* 中太字 */
  font-size: 45px;
  margin-bottom: 90px;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .essenceline {
    font-size: clamp(
      22px,
      calc((35 - 22) * ((100vw - 375px) / (768 - 375)) + 22px),
      35px
    );
    line-height: 1.5;
    letter-spacing: 0em;
  }
}

.baseline {
  font-weight: 400; /* 細字 */
  font-size: 20px;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .baseline {
    font-size: clamp(
      14px,
      calc((20 - 14) * ((100vw - 375px) / (768 - 375)) + 14px),
      20px
    );
  }
}

.headline {
  font-weight: 600; /* 太字 */
  font-size: 20px;
  margin: 0; /* 上下余白をリセット */
}
@media screen and (max-width: 768px) {
  .headline {
    font-size: clamp(
      14px,
      calc((20 - 14) * ((100vw - 375px) / (768 - 375)) + 14px),
      20px
    );
  }
}

.headline2 {
  font-weight: 600; /* 太字 */
  font-size: 20px;
  margin: 15　0; /* 上下余白をリセット */
}
@media screen and (max-width: 768px) {
  .headline2 {
    font-size: clamp(
      14px,
      calc((20 - 14) * ((100vw - 375px) / (768 - 375)) + 14px),
      20px
    );
  }
}

.subline {
  font-weight: 400; /* 細字 */
  font-size: 20px;
  margin: 0;
  padding-left: 1.2em; /* 左に約1文字分下げる */
}
@media screen and (max-width: 768px) {
  .subline {
    font-size: clamp(
      14px,
      calc((20 - 14) * ((100vw - 375px) / (768 - 375)) + 14px),
      20px
    );
  }
}

.subline2 {
  font-weight: 400; /* 細字 */
  font-size: 20px;
  margin: 0;
  padding-left: 0.5em; /* 左に「・」分だけ下げる */
}
@media screen and (max-width: 768px) {
  .subline2 {
    font-size: clamp(
      14px,
      calc((20 - 14) * ((100vw - 375px) / (768 - 375)) + 14px),
      20px
    );
  }
}

section.work .base-ttl {
  font-size: 50px;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  section.work .base-ttl {
    font-size: clamp(
      30px,
      calc((50 - 30) * ((100vw - 375px) / (768 - 375)) + 30px),
      50px
    );
  }
}

section.work ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  /*    padding-top: 10%;*/
}

section.work ul li {
  max-width: 350px;
  width: 31%;
  margin: 0 0 30px;
  font-size: 0.9rem;
  text-align: center;
}

section.work ul li img {
  display: block;
  max-width: 350px;
  width: 100%;
  margin: 0 0 10px;
}

@media screen and (max-width: 768px) {
  section.work ul li {
    max-width: 380px;
    width: 49%;
    font-size: 0.7rem;
  }

  section.work ul li img {
    max-width: 380px;
  }
}

.label {
  background-color: black;
  color: white;
  font-weight: 400;
  font-size: 16px;
  padding: 6px 10px;
  text-align: left;
}

/*ここまで西塚小川20251001pm1600*/