@charset "utf-8";
/*
.any {
  @mixin objectfit;
}
@mixin objectfit; でcover:デフォルト
@mixin objectfit contain; でcontain等に上書き
object-fit-images用
*/

@media (min-width: 1201px),print {
  .c-box.c-box--left:first-child {
    margin-top: 3px;
  }
  .c-box.c-box--left dt.list-ttl {
    color: #0a3291;
    float: left;
    font-size: 1rem;
    letter-spacing: .14em;
    line-height: 1.7;
    padding: 0;
    width: 200px;
  }
  .c-box.c-box--left dt.list-ttl:before {
    display: none;
  }
  .c-box.c-box--left dd.list-txt {
    float: left;
    font-size: 1rem;
    letter-spacing: .1em;
    line-height: 1.7;
    padding: 0;
    width: calc(100% - 200px);
    margin-top: 0;
  }
  .basic dd {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    margin-top: 4px;
  }
  .basic__list {
    border-bottom: 1px solid #cfcfcf;
    overflow: hidden;
    padding: 23px 20px;
    width: calc(100% - 40px);
  }
  .basic__list:last-child {
    border-bottom: none;
  }
  .basic__list .list-txt ul {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .basic__list .list-txt ul li {
    /* width: calc(50% - 1.5em); */
    width: 100%;
  }
  .basic__list .list-txt ul a {
    text-decoration: underline;
  }
  .basic__list .list-txt ul a:hover {
    text-decoration: none;
  }
  .companies__list {
    display: flex;
  }
  .companies__list .logo_box {
    width: 25%;
    margin: 20px 0;
    align-content: center;
  }
  .companies__list .logo_box div { 
    text-align:center;
  }
  .companies__list .logo_box.logo_w_small .logo {
    height: 35px;
    width: auto;
  }
  .companies__list .logo_box.logo_w_tall .logo {
    height: 60px;
    width: auto;
  }
  .companies__list .detail_box {
    width: 75%;
    padding-left: 30px;
  }
  
  /*社長挨拶*/
  .greeting {
    margin-top: 60px;
  }
  .greeting dd {
    padding-left: 0;
    padding-right: 0;
    padding-top: 36px;
  }
  .greeting__inner {
    background-color: #f7f8fb;
    padding: 40px;
  }
  .greeting__inner figure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .greeting__inner figure img {
    width: 188px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .greeting__inner figure figcaption {
    margin-left: 40px;
    width: calc(100% - 228px);
  }
  .greeting__copy {
    font-weight: 700;
    color: #0a3291;
    font-size: 1.5rem;
    border-bottom: 1px solid #cfcfcf;
    padding: 12px 0 16px;
    margin-bottom: 26px;
  }
  .greeting .c-button {
    margin-top: 40px;
    text-align: right;
  }
  .greeting .c-button a {
    border: 1px solid #0a3291;
    padding: 6px 60px 7px;
    width: auto;
  }
  .greeting .c-button a span {
    font-weight: 400;
  }

  /*拠点一覧*/
  .branch {
    margin-top: 94px;
  }
  .branch dd {
    padding: 0 0 52px;
  }
  .branch__item {
    border-bottom: 1px solid #cfcfcf;
    margin: 0;
    overflow: hidden;
    width: calc(100% - 40px);
  }
  .branch .big-branch {
    margin: 0;
    padding: 33px 20px 49px;
  }
  .branch .big-branch__info {
    width: 520px;
  }
  .branch .big-branch__info-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 19px
  }
  .branch .big-branch__map {
    clear: both;
    padding: 34px 0 0 0;
    width: 960px;
    height: 280px;
  }
  .branch .big-branch__map iframe {
    width: 100%;
    height: 100%;
  }
  .branch .small-branch {
    margin: 0;
    padding: 33px 20px 34px;
  }
  .branch .small-branch__info {
    width: 520px;
  }
  .branch .small-branch__content {
    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;
  }
  .branch .c-button {
    margin-right: 12px;
    text-align: center;
  }
  .branch .c-button a {
    border: 1px solid #0a3291;
    padding: 6px 60px 7px;
    width: auto;
  }
  .branch .c-button a span {
    font-weight: 400;
  }
  .branch__item:first-child {
    padding-top: 20px;
  }
  .branch__item:last-child {
    border-bottom: none;
  }
  .branch__item p {
    letter-spacing: .1em;
  }
  /* イノベーションオフィス */
  .corporate_subtitle {
    margin: 56px 0 20px;
    padding-bottom: 5px;
    border-bottom: 1px solid #cfcfcf;
    font-weight: 700;
    font-size: 1.25rem !important;
    color: #0a3291;
    padding-left: 0 !important;
    margin-top: 0;
  }
  .corporate_subtitle::before {
    content: none !important;
  }
  .innovation_text {
    margin-bottom: 20px;
  }
  .innovation_box {
    margin-top: 0;
  }

  /*会社沿革*/
  .history {
    margin-top: 0px;
  }
  .history dd {
    padding: 30px 0 0;
  }
  .history .history__list {
    background: #f7f8fb;
    margin: 0;
    padding: 31px 39px;
  }
  .history .history__list .history__list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    text-indent: 0;
  }
  .history .history__list .history__list__item time {
    letter-spacing: .17em;
    padding-bottom: 32px;
    width: 137px;
  }
  .history .history__list .history__list__item ul {
    border-left: 1px solid #9b9b9b;
    padding: 0;
    width: calc(100% - 137px);
    margin: 0;
  }
  .history .history__list .history__list__item ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-bottom: 32px;
    margin: 0;
    text-indent: 0;
  }
  .history .history__list .history__list__item ul li span.month {
    letter-spacing: .17em;
    margin-right: 37px;
    text-align: right;
    width: 107px;
  }
  .history .history__list .history__list__item ul li:first-child {
    position: relative;
  }
  .history .history__list .history__list__item ul li:first-child:before {
    background-color: #0a3291;
    border-radius: 50%;
    content: '';
    position: absolute;
    top: 8px;
    left: -4px;
    width: 7px;
    height: 7px;
  }
  .history .history__list .history__list__item ul li span.text {
    letter-spacing: .087em;
    width: calc(100% - 144px);
  }
  .history .history__list .history__list__item:first-child time,
  .history .history__list .history__list__item:first-child ul {
    padding-top: 13px;
  }
  .history .history__list .history__list__item:last-child time,
  .history .history__list .history__list__item:last-child ul li:last-child {
    padding-bottom: 16px;
  }

  /*メディア・出版物関連情報*/
  .corporate .c-relation {
    margin: 80px 0 0;
  }
  .corporate .c-relation__box__name {
    text-align: center;
    font-size: 1.875rem;
    font-weight: 700;
    color: #0a3291;
    letter-spacing: 3px;
  }
  .corporate .c-relation__box__name .en {
    font-size: 1.125rem;
    color: #cfcfcf;
    display: block;
    margin-top: 6px;
    letter-spacing: 3px;
  }
  .corporate .c-relation__box__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .corporate .c-relation__box__row .item {
    -webkit-box-flex: 1;
    -ms-flex: 1 1;
    flex: 1 1;
    padding: 0 30px;
    padding-bottom: 70px;
    position: relative;
  }
  .corporate .c-relation__box__row .item p {
    word-break: break-all;
  }
  .corporate .c-relation__box__row .item__ttl {
    font-weight: 700;
    font-size: 1.25rem;
    text-align: center;
    margin-bottom: 18px;
    width: calc(100% + 60px);
    margin-left: -30px;
  }
  .corporate .c-relation__box__row .c-button {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .corporate .c-relation__box__row .item + .item {
    border-left: 1px solid #cfcfcf;
  }
  .corporate .c-relation__box + .c-relation__box {
    margin-top: 36px;
  }
  .corporate .c-relation__box__list {
    padding: 0 96px;
    margin-top: 13px;
  }
  .corporate .c-relation__box__list li a {
    padding: 24px 30px;
    padding-left: 14px;
    font-weight: 700;
    display: block;
    font-size: 1.125rem;
    position: relative;
  }
  .corporate .c-relation__box__list li a:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 2px solid #0a3291;
    border-right: 2px solid #0a3291;
    position: absolute;
    right: 8px;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .corporate .c-relation__box__list li + li {
    border-top: 1px solid #cfcfcf;
  }
  .corporate .c-relation__box__list li a span {
    color: #0a3291;
    font-weight: inherit;
    margin-right: 20px;
  }
  .corporate .c-relation__box__row .c-button a {
    width: 200px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 0;
  }
  .corporate .c-relation__box__list .c-button a {
    padding-left: 72px;
    padding-right: 72px;
  }
  .corporate .c-relation__box + .c-relation__box .text{
    text-align: center;
    margin: 30px;
  } 
  .c-relation__box__row-reverse .c-relation__box__list {
    width: 408px;
  }
  .c-relation__box__row-reverse {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    /* margin-bottom: 40px; */
  }
  .c-relation__box__row-reverse .c-relation__box__name {
    padding-bottom: 16px;
    border-bottom: 1px solid #cfb6b6;
    margin-bottom: 20px;
    text-align: left;
    color: #000;
    font-size: 1.875rem;
  }
  .c-relation__box__row-reverse .c-relation__box__item {
    width: 408px;
  }
  .c-relation__box__row-reverse .c-relation__box__item .c-button {
    margin-top: 54px;
  }
  .to-press{
    text-align: center;
    margin-top: 40px;
    margin-bottom: 24px;
  }
  .contact__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: 0;
  }
  .contact__links__item.tel a .tel__num {
    letter-spacing: 1px;
    color: #0a3291;
    font-size: 2.25rem;
    font-weight: 500;
    /* line-height: 1;
    margin-bottom: 8px; */
    padding-left: 20px;
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
  }
  .contact__links__item.others a {
    background: #fff;
    border-radius: 4px;
    border: 1px solid #cfcfcf;
    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: 392px;
    height: 70px;
  }
  .contact__links__item.tel {
    border-right: 1px solid #cfcfcf;
    text-align: center;
    padding-right: 30px;
    height: 70px;
  }
  .contact__links__item.others {
    margin-left: 38px;
  }
  .contact__links__item.tel a .tel__num small {
    font-size: 1rem;
    font-weight: 500;
  }
  .contact__links__item.tel a {
    display: block;
    position: relative;
  }
  .contact__links__item.tel a p {
    font-size: 0.875rem;
  }
  .contact__links__item.tel a .tel__num:before {
    content: '';
    width: 30px;
    height: 30px;
    background: url(../images/common/icon_tel.svg) no-repeat left top;
    background-size: contain;
    position: absolute;
    top: 12px;
    left: -22px;
  }
  .contact__links__item.others a span:before {
    content: "";
    display: inline-block;
    width: 21px;
    height: 15px;
    background: url(../images/common/icon_contact.svg) no-repeat left top;
    background-size: contain;
    margin-right: 11px;
  }
  .to-press p.bold {
    font-weight: 700;
    font-size: 1.3rem;
    margin-bottom: 20px;
  }

  .basic__list .board-member p {
    line-height: 2;
  }

}
@media (min-width: 768px) and (max-width: 1200px) {
  .c-box.c-box--left:first-child {
    margin-top: calc( var(--vw) * 0.234375 );
  }
  .c-box.c-box--left dt.list-ttl {
    color: #0a3291;
    float: left;
    font-size: calc( var(--vw) * 1.25 );
    letter-spacing: .14em;
    line-height: 1.7;
    padding: 0;
    width: calc( var(--vw) * 13.671875 );
  }
  .c-box.c-box--left dt.list-ttl:before {
    display: none;
  }
  .c-box.c-box--left dd.list-txt {
    float: left;
    font-size: calc( var(--vw) * 1.25 );
    letter-spacing: .1em;
    line-height: 1.7;
    padding: 0;
    width: calc(100% - calc( var(--vw) * 13.671875 ));
    margin-top: 0;
  }
  .basic dd {
    padding-left: 0;
    padding-right: 0;
    padding-top: 0;
    margin-top: calc( var(--vw) * 0.3125 );
  }
  .basic__list {
    border-bottom: 1px solid #cfcfcf;
    overflow: hidden;
    padding: calc( var(--vw) * 1.7968749999999998 ) calc( var(--vw) * 1.5625 );
    width: calc(100% - calc( var(--vw) * 3.125 ));
  }
  .basic__list:last-child {
    border-bottom: none;
  }
  .basic__list .list-txt ul {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .basic__list .list-txt ul li {
    width: calc(50% - 1.5em);
  }
  .basic__list .list-txt ul a {
    text-decoration: underline;
  }
  .basic__list .list-txt ul a:hover {
    text-decoration: none;
  }
  
  /*社長挨拶*/
  .greeting {
    margin-top: calc( var(--vw) * 4.6875 );
  }
  .greeting dd {
    padding-left: 0;
    padding-right: 0;
    padding-top: calc( var(--vw) * 2.8125 );
  }
  .greeting__inner {
    background-color: #f7f8fb;
    padding: calc( var(--vw) * 3.125 );
  }
  .greeting__inner figure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  }
  .greeting__inner figure img {
    width: calc( var(--vw) * 14.6875 );
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .greeting__inner figure figcaption {
    margin-left: calc( var(--vw) * 3.125 );
    width: calc(100% - calc( var(--vw) * 17.8125 ));
  }
  .greeting__copy {
    font-weight: 700;
    color: #0a3291;
    font-size: calc( var(--vw) * 1.875 );
    border-bottom: 1px solid #cfcfcf;
    padding: calc( var(--vw) * 0.9375 ) 0 calc( var(--vw) * 1.25 );
    margin-bottom: calc( var(--vw) * 2.03125 );
  }
  .greeting .c-button {
    margin-top: calc( var(--vw) * 3.125 );
    text-align: right;
  }
  .greeting .c-button a {
    border: 1px solid #0a3291;
    padding: calc( var(--vw) * 0.46875 ) calc( var(--vw) * 4.6875 ) calc( var(--vw) * 0.546875 );
    width: auto;
  }
  .greeting .c-button a span {
    font-weight: 400;
  }

  /*拠点一覧*/
  .branch {
    margin-top: calc( var(--vw) * 7.34375 );
  }
  .branch dd {
    padding: 0 0 calc( var(--vw) * 4.0625 );
  }
  .branch__item {
    border-bottom: 1px solid #cfcfcf;
    margin: 0;
    overflow: hidden;
    width: calc(100% - calc( var(--vw) * 3.125 ));
  }
  .branch .big-branch {
    margin: 0;
    padding: calc( var(--vw) * 2.578125 ) calc( var(--vw) * 1.5625 ) calc( var(--vw) * 3.8281250000000004 );
  }
  .branch .big-branch__info {
    width: calc( var(--vw) * 40.625 );
  }
  .branch .big-branch__info-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: calc( var(--vw) * 1.484375 )
  }
  .branch .big-branch__map {
    clear: both;
    padding: calc( var(--vw) * 2.65625 ) 0 0 0;
    width: calc( var(--vw) * 75 );
    height: calc( var(--vw) * 21.875 );
  }
  .branch .big-branch__map iframe {
    width: 100%;
    height: 100%;
  }
  .branch .small-branch {
    margin: 0;
    padding: calc( var(--vw) * 2.578125 ) calc( var(--vw) * 1.5625 ) calc( var(--vw) * 2.65625 );
  }
  .branch .small-branch__info {
    width: calc( var(--vw) * 40.625 );
  }
  .branch .small-branch__content {
    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;
  }
  .branch .c-button {
    margin-right: calc( var(--vw) * 0.9375 );
    text-align: center;
  }
  .branch .c-button a {
    border: 1px solid #0a3291;
    padding: calc( var(--vw) * 0.46875 ) calc( var(--vw) * 4.6875 ) calc( var(--vw) * 0.546875 );
    width: auto;
  }
  .branch .c-button a span {
    font-weight: 400;
  }
  .branch__item:first-child {
    padding-top: calc( var(--vw) * 1.5625 );
  }
  .branch__item:last-child {
    border-bottom: none;
  }
  .branch__item p {
    letter-spacing: .1em;
  }
  /* イノベーションオフィス */
  .corporate_subtitle {
    margin: calc( var(--vw) * 4.375 ) 0 calc( var(--vw) * 1.5625 );
    padding-bottom: calc( var(--vw) * 0.390625 );
    border-bottom: 1px solid #cfcfcf;
    font-weight: 700;
    font-size: calc( var(--vw) * 1.5625 ) !important;
    color: #0a3291;
    padding-left: 0 !important;
    margin-top: 0;
  }
  .corporate_subtitle::before {
    content: none !important;
  }
  .innovation_text {
    margin-bottom: 2vw;
  }
  .innovation_box {
    margin-top: 0;
  }
  .companies__list {
    display: flex;
  }
  .companies__list .logo_box {
    width: 30%;
    margin: 20px 0;
    align-content: center;
  }
  .companies__list .logo_box div { 
    text-align:center;
  }
  .companies__list .logo_box.logo_w_small .logo {
    height: 25px;
    width: auto;
    max-width: 100%;
  }
  .companies__list .logo_box.logo_w_tall .logo {
    height: 45px;
    width: auto;
    max-width: 100%;
  }
  .companies__list .detail_box {
    width: 70%;
    padding-left: 30px;
  }

  /*会社沿革*/
  .history {
    margin-top: calc( var(--vw) * 0 );
  }
  .history dd {
    padding: calc( var(--vw) * 2.34375 ) 0 0;
  }
  .history .history__list {
    background: #f7f8fb;
    margin: 0;
    padding: calc( var(--vw) * 2.421875 ) calc( var(--vw) * 3.046875 );
  }
  .history .history__list .history__list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    text-indent: 0;
  }
  .history .history__list .history__list__item time {
    letter-spacing: .17em;
    padding-bottom: calc( var(--vw) * 2.5 );
    width: calc( var(--vw) * 10.703125 );
  }
  .history .history__list .history__list__item ul {
    border-left: 1px solid #9b9b9b;
    padding: 0;
    width: calc(100% - calc( var(--vw) * 10.703125 ));
    margin: 0;
  }
  .history .history__list .history__list__item ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-bottom: calc( var(--vw) * 2.5 );
    margin: 0;
    text-indent: 0;
  }
  .history .history__list .history__list__item ul li span.month {
    letter-spacing: .17em;
    margin-right: calc( var(--vw) * 2.890625 );
    text-align: right;
    width: calc( var(--vw) * 8.359375 );
  }
  .history .history__list .history__list__item ul li:first-child {
    position: relative;
  }
  .history .history__list .history__list__item ul li:first-child:before {
    background-color: #0a3291;
    border-radius: 50%;
    content: '';
    position: absolute;
    top: calc( var(--vw) * 0.625 );
    left: calc( var(--vw) * -0.3125 );
    width: calc( var(--vw) * 0.546875 );
    height: calc( var(--vw) * 0.546875 );
  }
  .history .history__list .history__list__item ul li span.text {
    letter-spacing: .087em;
    width: calc(100% - calc( var(--vw) * 11.25 ));
  }
  .history .history__list .history__list__item:first-child time,
  .history .history__list .history__list__item:first-child ul {
    padding-top: calc( var(--vw) * 1.015625 );
  }
  .history .history__list .history__list__item:last-child time,
  .history .history__list .history__list__item:last-child ul li:last-child {
    padding-bottom: calc( var(--vw) * 1.25 );
  }

  /*メディア・出版物関連情報*/
  .corporate .c-relation {
    margin: calc( var(--vw) * 6.25 ) 0 0;
  }
  .corporate .c-relation__box {
    padding-top: calc( var(--vw) * 2.8125 );
  }
  .corporate .c-relation__box__name {
    text-align: center;
    font-size: calc( var(--vw) * 2.34375 );
    font-weight: 700;
    color: #0a3291;
    letter-spacing: calc( var(--vw) * 0.234375 );
  }
  .corporate .c-relation__box__name .en {
    font-size: calc( var(--vw) * 1.40625 );
    color: #cfcfcf;
    display: block;
    margin-top: calc( var(--vw) * 0.46875 );
    letter-spacing: calc( var(--vw) * 0.234375 );
  }
  .corporate .c-relation__box__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: calc( var(--vw) * 2.34375 );
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .corporate .c-relation__box__row .item {
    -webkit-box-flex: 1;
        -ms-flex: 1 1;
            flex: 1 1;
    padding: 0 calc( var(--vw) * 2.34375 );
    padding-bottom: calc( var(--vw) * 5.46875 );
    position: relative;
  }
  .corporate .c-relation__box__row .item p {
    word-break: break-all;
  }
  .corporate .c-relation__box__row .item__ttl {
    font-weight: 700;
    font-size: calc( var(--vw) * 1.5625 );
    text-align: center;
    margin-bottom: calc( var(--vw) * 1.40625 );
    width: calc(100% + calc( var(--vw) * 4.6875 ));
    margin-left: calc( var(--vw) * -2.34375 );
  }
  .corporate .c-relation__box__row .item + .item {
    border-left: 1px solid #cfcfcf;
  }
  .corporate .c-relation__box__row .c-button {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
  .corporate .c-relation__box__row .c-button a {
    width: calc( var(--vw) * 15.625 );
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: calc( var(--vw) * 0.78125 ) 0;
  }
  .corporate .c-relation__box + .c-relation__box {
    margin-top: calc( var(--vw) * 2.8125 );
  }
  .corporate .c-relation__box__list {
    padding: 0 calc( var(--vw) * 7.5 );
    margin-top: calc( var(--vw) * 1.015625 );
  }
  .corporate .c-relation__box__list li a {
    padding: calc( var(--vw) * 1.875 ) calc( var(--vw) * 2.34375 );
    padding-left: calc( var(--vw) * 1.09375 );
    font-weight: 700;
    display: block;
    font-size: calc( var(--vw) * 1.40625 );
    position: relative;
  }
  .corporate .c-relation__box__list li a:after {
    content: "";
    display: block;
    width: calc( var(--vw) * 0.78125 );
    height: calc( var(--vw) * 0.78125 );
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border-top: calc( var(--vw) * 0.15625 ) solid #0a3291;
    border-right: calc( var(--vw) * 0.15625 ) solid #0a3291;
    position: absolute;
    right: calc( var(--vw) * 0.625 );
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .corporate .c-relation__box__list li a span {
    color: #0a3291;
    font-weight: inherit;
    margin-right: calc( var(--vw) * 1.5625 );
  }
  .corporate .c-relation__box__list li + li {
    border-top: 1px solid #cfcfcf;
  }
  .corporate .c-relation__box__list .c-button {
    margin-top: calc( var(--vw) * 1.25 );
  }
  .corporate .c-relation__box__list .c-button a {
    padding-left: calc( var(--vw) * 5.625 );
    padding-right: calc( var(--vw) * 5.625 );
  }
  .corporate .c-relation__box + .c-relation__box .text{
    text-align: center;
    margin: 30px;
  }
  .c-relation__box__row-reverse .c-relation__box__item {
    width: calc( var(--vw) * 31.874999999999996 );
  }
  .c-relation__box {
    padding-top: calc( var(--vw) * 2.8125 );
  }
  .c-relation__box__row-reverse {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: calc( var(--vw) * 3.125 );
  }
  .c-relation__box__row-reverse .c-relation__box__name {
    padding-bottom: calc( var(--vw) * 1.25 );
    border-bottom: 1px solid #cfb6b6;
    margin-bottom: calc( var(--vw) * 1.5625 );
    text-align: left;
    color: #000;
    font-size: calc( var(--vw) * 2.34375 );
  }
  .c-relation__box__row-reverse .c-relation__box__item .c-button {
    margin-top: calc( var(--vw) * 4.21875 );
  }  
  .to-press {
    text-align: center;
    margin-top: calc( var(--vw) * 3.125 );
    margin-bottom: calc( var(--vw) * 3.125 );
  }
  .contact__links__item.tel a .tel__num {
    letter-spacing: 1px;
    color: #0a3291;
    font-size: calc( var(--vw) * 2.8125 );
    font-weight: 500;
    /* line-height: 1;
    margin-bottom: calc( var(--vw) * 0.625 ); */
    padding-left: calc( var(--vw) * 1.5625 );
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
  }
  .contact__links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: 0;
  }
  .contact__links__item.others {
    margin-left: calc( var(--vw) * 2.96875 );
  }
  .contact__links__item .tel {
    border-right: 1px solid #cfcfcf;
    text-align: center;
    padding-right: calc( var(--vw) * 3.90625 );
    height: calc( var(--vw) * 5.46875 );
  }
  .contact__links__item.others a {
    background: #fff;
    border-radius: calc( var(--vw) * 0.3125 );
    border: 1px solid #cfcfcf;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: calc( var(--vw) * 30.625000000000004 );
    height: calc( var(--vw) * 5.46875 );
  }
  .contact__links__item.others a span:before {
    content: "";
    display: inline-block;
    width: calc( var(--vw) * 1.640625 );
    height: calc( var(--vw) * 1.171875 );
    background: url(../images/common/icon_contact.svg) no-repeat left top;
    background-size: contain;
    margin-right: calc( var(--vw) * 0.8593750000000001 );
  }
  .contact__links__item.tel a .tel__num small {
    font-size: calc( var(--vw) * 1.25 );
    font-weight: 500;
  }
  .contact__links__item.tel a {
    display: block;
    position: relative;
  }
  .contact__links__item.tel a .tel__num:before {
    content: '';
    width: calc( var(--vw) * 2.34375 );
    height: calc( var(--vw) * 2.34375 );
    background: url(../images/common/icon_tel.svg) no-repeat left top;
    background-size: contain;
    /* position: absolute; */
    position: relative;
    left: calc( var(--vw) * -1 );
  }

  .basic__list .board-member p {
    line-height: 2;
  }

}
@media only screen and (max-width: 767px) {
  .c-box.c-box--left:first-child {
    margin-top: 1.3020833333333335vw;
  }
  .c-box .list-ttl {
    color: #0a3291;
    float: left;
    font-size: 3.6458333333333335vw;
    letter-spacing: .14em;
    line-height: 1.7;
    padding: 0;
    width: 31.25vw;
  }
  .c-box .list-ttl:before {
    display: none;
  }
  .c-box dd.list-txt {
    float: left;
    font-size: 3.6458333333333335vw;
    letter-spacing: .1em;
    line-height: 1.7;
    padding: 0;
    width: calc(100% - 31.25vw);
  }
  .basic__list {
    border-bottom: 0.26041666666666663vw solid #cfcfcf;
    overflow: hidden;
    padding: 4.947916666666666vw 0 5.338541666666666vw;
    width: 90.88541666666666vw;
  }
  .basic__list:first-of-type {
    padding-top: 2.604166666666667vw;
  }
  .basic__list:last-child {
    border-bottom: none;
  }
  .basic__list .list-txt ul {
    margin: 0;
  }
  .basic__list .list-txt ul a {
    text-decoration: underline;
  }
  .companies__list .logo_box {
    width: 40%;
    margin: 2.604166666666667vw 0;
    align-content: center;
  }
  .companies__list .logo_box.logo_w_small .logo {
    height: 25px;
    width: auto;
    max-width: 100%;
  }
  .companies__list .logo_box.logo_w_tall .logo {
    height: 45px;
    width: auto;
    max-width: 100%;
  }
  .companies__list .detail_box {
    width: 100%;
  }

  /*社長挨拶*/
  .greeting {
    margin-top: 5.989583333333334vw;
  }
  .greeting dd {
    padding-top: 3.90625vw;
  }
  .greeting__inner {
    background-color: #f7f8fb;
    padding: 10.416666666666668vw 4.947916666666666vw 9.895833333333332vw;
  }
  .greeting__inner figure {
    text-align: center;
  }
  .greeting__inner figure img {
    width: 60.416666666666664vw;
  }
  .greeting__inner figure figcaption {
    margin-top: 6.510416666666667vw;
  }
  .greeting__copy {
    font-weight: 700;
    color: #0a3291;
    font-size: 4.6875vw;
    margin-bottom: 5.989583333333334vw
  }
  .greeting .c-button {
    margin-top: 9.635416666666668vw;
  }
  .greeting .c-button a {
    border: 0.26041666666666663vw solid #0a3291;
    font-size: 3.6458333333333335vw;
    padding: 3.125vw 22.786458333333336vw;
    width: auto;
  }
  .greeting .c-button a span {
    font-weight: 500;
  }

  /*拠点一覧*/
  .branch > dd {
    padding: 0 0 5.208333333333334vw;
  }
  .branch__item {
    border-bottom: 0.26041666666666663vw solid #cfcfcf;
    margin: 0;
    width: 90.88541666666666vw;
  }
  .branch__item:last-child {
    border-bottom: none;
  }
  .branch__item p {
    letter-spacing: .1em;
  }
  .branch__item dt.list-ttl {
    float: none;
    width: 90.88541666666666vw;
    margin-bottom: 2.083333333333333vw;
  }
  .branch__item dd.list-txt {
    float: none;
    width: 90.88541666666666vw;
  }
  .branch__item dd.list-txt p {
    line-height: 1.85;
  }
  .branch__item .c-button {
    text-align: center;
    width: 90.88541666666666vw;
  }
  .branch__item .c-button a {
    border: 0.26041666666666663vw solid #0a3291;
    font-size: 3.6458333333333335vw;
    padding: 3.125vw 22.786458333333336vw;
    width: auto;
  }
  .branch__item .c-button a span {
    font-weight: 500;
  }
  .branch .big-branch {
    margin: 0;
    padding: 5.078125vw 0;
    position: relative;
  }
  .branch .big-branch__info-wrap {
    margin-bottom: 5.208333333333334vw;
  }
  .branch .big-branch__info-wrap .c-button {
    position: absolute;
    bottom: 6.510416666666667vw;
    left: 0;
  }
  .branch .big-branch__map {
    padding: 0;
    width: 90.88541666666666vw;
    height: 41.66666666666667vw;
  }
  .branch .big-branch__map iframe {
    width: 100%;
    height: 100%;
  }
  .branch .small-branch {
    margin: 0;
    padding: 5.078125vw 0;
  }
  .branch__item:first-child {
    padding-top: 8.203125vw;
  }
  .branch__item:last-child {
    border-bottom: none;
  }
  .branch__item p {
    letter-spacing: .1em;
  }
  /* イノベーションオフィス */
  .corporate_subtitle {
    margin: 10.416666666666668vw 0 2.604166666666667vw;
    padding-bottom: 2.083333333333333vw;
    border-bottom: 1px solid #cfcfcf;
    font-weight: 700;
    font-size: 4.427083333333334vw !important;
    color: #0a3291;
    padding-left: 0 !important;
    margin-top: 0;
  }
  .corporate_subtitle::before {
    content: none !important;
  }
  .innovation_text {
    margin-bottom: 5vw;
  }
  .br_pc {
    display: none;
  }
  .innovation_box {
    margin-top: 0;
  }

  /*会社沿革*/
  .history dd {
    padding: 5.598958333333334vw 0 0;
  }
  .history .history__list {
    background: #f7f8fb;
    margin: 0;
    padding: 3.90625vw 2.34375vw;
  }
  .history .history__list .history__list__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    text-indent: 0;
  }
  .history .history__list .history__list__item time {
    letter-spacing: .17em;
    line-height: 1.8;
    padding-bottom: 3.90625vw;
    width: 20.572916666666664vw;
  }
  .history .history__list .history__list__item ul {
    border-left: 0.26041666666666663vw solid #9b9b9b;
    padding: 0;
    margin: 0;
    width: calc(100% - 20.833333333333336vw);
  }
  .history .history__list .history__list__item ul li {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 2.083333333333333vw;
    width: 65.36458333333334vw;
    margin: 0;
    text-indent: 0;
  }
  .history .history__list .history__list__item ul li:first-child {
    position: relative;
  }
  .history .history__list .history__list__item ul li:first-child:before {
    background-color: #0a3291;
    border-radius: 50%;
    content: '';
    position: absolute;
    top: 2.604166666666667vw;
    left: -0.78125vw;
    width: 1.3020833333333335vw;
    height: 1.3020833333333335vw;
  }
  .history .history__list .history__list__item ul li:last-child {
    padding-bottom: 3.90625vw;
  }
  .history .history__list .history__list__item ul li span {
    display: block;
    line-height: 1.8;
    padding-left: 6.510416666666667vw;
    width: 58.854166666666664vw;
  }
  .history .history__list .history__list__item ul li span.month {
    letter-spacing: .17em;
  }
  .history .history__list .history__list__item ul li span.text {
    letter-spacing: .087em;
  }
  .history .history__list .history__list__item:first-child time,
  .history .history__list .history__list__item:first-child ul {
    padding-top: 13px;
  }
  .history .history__list .history__list__item:last-child time,
  .history .history__list .history__list__item:last-child ul li:last-child {
    padding-bottom: 16px;
  }

  /*メディア・出版物関連情報*/
  .corporate .c-relation {
    margin: 15.625vw 0 0;
    width: 100vw;
    margin-left: -5.208333333333334vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .corporate .c-relation__box {
    background-color: #fff;
    /*padding: 10.15625vw 5.208333333333334vw 0;*/
    margin-top: 4.427083333333334vw;
  }
  .corporate .c-relation__box + .c-relation__box {
    margin-top: 7.8125vw;
  }
  .corporate .c-relation__box__name {
    text-align: center;
    font-size: 4.6875vw;
    font-weight: 700;
    color: #0a3291;
    letter-spacing: 0.390625vw;
  }
  .corporate .c-relation__box__name .en {
    font-size: 3.2552083333333335vw;
    color: #cfcfcf;
    display: block;
    margin-top: 1.3020833333333335vw;
    letter-spacing: 0.390625vw;
  }
  .corporate .c-relation__box__row .item {
    padding: 8.333333333333332vw 0 10.416666666666668vw;
    position: relative;
  }
  .corporate .c-relation__box__row .item p {
    line-height: 1.7;
    word-break: break-all;
  }
  .corporate .c-relation__box__row .item__ttl {
    font-weight: 700;
    font-size: 4.427083333333334vw;
    text-align: center;
    margin-bottom: 2.34375vw;
  }
  .corporate .c-relation__box__row .item + .item {
    border-top: 1px solid #cfcfcf;
  }
  .corporate .c-relation__box__row .c-button {
    margin-top: 6.25vw;
  }
  .corporate .c-relation__box__row .c-button a {
    width: 65.10416666666666vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .corporate .c-relation__box__list {
    padding-bottom: 10.416666666666668vw;
  }
  .corporate .c-relation__box__list li a {
    padding: 7.03125vw 0;
    padding-right: 4.427083333333334vw;
    font-weight: 700;
    display: block;
    position: relative;
  }
  .corporate .c-relation__box__list li a:after {
    content: "";
    display: block;
    width: 1.8229166666666667vw;
    height: 1.8229166666666667vw;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border-top: 0.390625vw solid #0a3291;
    border-right: 0.390625vw solid #0a3291;
    position: absolute;
    right: 0.9114583333333334vw;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .corporate .c-relation__box__list li a span {
    color: #0a3291;
    font-weight: inherit;
    margin-right: 2.604166666666667vw;
  }
  .corporate .c-relation__box__list li + li {
    border-top: 1px solid #cfcfcf;
  }
  .corporate .c-relation__box__list .c-button {
    margin-top: 3.90625vw;
  }
  .corporate .c-relation__box__list .c-button a {
    width: 65.10416666666666vw;
  }
  .corporate .c-relation__box + .c-relation__box .text{
    text-align: center;
    margin: 30px;
  }
  .c-relation__box + .c-relation__box {
    margin-top: 7.8125vw;
  }
  .c-relation__box {
    background-color: #fff;
    padding: 10.15625vw 5.208333333333334vw 0;
    margin-top: 4.427083333333334vw;
  }
  .c-relation__box__row-reverse .c-relation__box__name {
    padding-bottom: 1.5625vw;
    border-bottom: 1px solid #cfcfcf;
    margin-top: 4.427083333333334vw;
    margin-bottom: 3.125vw;
    text-align: left;
    color: #000;
  }
  .c-relation__box__row-reverse .c-relation__box__item .c-button {
    margin-top: 6.510416666666667vw;
  }
  .c-relation__box__row-reverse {
    margin-bottom: 7.8125vw;
    padding-bottom: 10.416666666666668vw;
  }
  .c-relation__box .c-relation__box__row-reverse{
    margin-bottom: 7.8125vw;
    padding-bottom: 10.416666666666668vw;
  }
  .c-relation__box__row-reverse .c-relation__box__item .c-button a {
    width: 65.10416666666666vw;
  }
  .to-press {
    margin-top: 5.208333333333334vw;
  }
  .to-press p + p {
    margin-top: 1em;
  }
  .to-press p.bold {
    font-weight: 700;
  }
  .contact {
    margin-top: 6.510416666666667vw;
  }
  .contact__links__item.tel {
    text-align: center;
  }
  .contact__links__item.tel a {
    display: block;
    margin: 0 auto 7.552083333333333vw;
    position: relative;
  }
  .contact__links__item.tel a .tel__num {
    color: #0a3291;
    font-size: 7.161458333333333vw;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 1;
    margin-bottom: 2.604166666666667vw;
    margin-left: 9.114583333333332vw;
  }
  .contact__links__item.tel a .tel__num:before {
    content: '';
    width: 6.510416666666667vw;
    height: 6.510416666666667vw;
    background: url(../images/common/icon_tel.svg) no-repeat left top;
    background-size: contain;
    position: absolute;
    top: 0.6510416666666667vw;
    left: 50%;
    margin-left: -35.15625vw;
  }
  .contact__links__item.tel a p {
    font-size: 3vw;
    letter-spacing: .12em;
  }
  .contact__links__item.tel a .tel__num small {
    font-size: 3.2552083333333335vw;
    font-weight: 500;
  }
  .contact__links__item.others a {
    background: #fff;
    border-radius: 4px;
    border: 1px solid #cfcfcf;
    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: 79.16666666666666vw;
    height: 17.708333333333336vw;
    margin: 0 auto;
  }
  .contact__links__item.others a span {
    font-size: 3.6458333333333335vw;
    font-weight: 500;
    letter-spacing: .12em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .contact__links__item.others a span:before {
    content: "";
    display: inline-block;
    width: 4.296875vw;
    height: 3.125vw;
    background: url(../images/common/icon_contact.svg) no-repeat left center;
    background-size: contain;
    margin-right: 3.125vw;
  }
  .others{
    padding-bottom: 70px;
  }

  .basic__list .board-member p {
    line-height: 1.5;
    margin-top: 0.2em;
  }

  .basic__list .board-member p+p {
    margin-top: 0.5em;
  }

}

