@media (max-width: 1760px) {
  .font136 {
    font-size: calc(var(--fontsize) * 0.8);
  }
  .w1720,
  .w1600 {
    padding: 0 20px;
  }
	.w1720 {
		max-width: 1720px;
	}
	.w1600 {
		max-width: 1600px;
	}
  .sub-contents .company .information p br,
  .sub-contents .company .history p br {
    display: none;
  }
  .sub-contents .company .information .img {
    flex-shrink: 0;
  }
}
@media (max-width: 1600px) {
  .font136 {
    font-size: calc(var(--fontsize) * 0.7);
  }
  .font92,
	.font84,
  .font82,
  .font72,
  .font68 {
    font-size: calc(var(--fontsize) * 0.8);
  }
  main .strategy .item-box {
		column-gap: 20px;
  }
  main .firm .item sup {
    font-size: 4.4rem;
    transform: translateY(-5px);
  }
  .sub-contents .company .information .item {
		column-gap: 40px;
  }
  .sub-contents .company .information .img {
    width: 50%;
  }
  .sub-contents .responsibility p br {
    display: none;
  }
  .sub-contents .responsibility ol {
    padding: 40px;
    margin-top: 60px;
  }
}
@media (max-width: 1400px) {
  .font136 {
    font-size: calc(var(--fontsize) * 0.64);
  }
  .font92,
	.font84,
  .font82,
  .font72,
  .font68 {
    font-size: calc(var(--fontsize) * 0.74);
  }
  header .language {
    margin-left: 20px;
  }
  header .depth1 a {
    font-size: 1.8rem;
    padding: 0 15px;
  }
  main .firm .item span {
    font-size: 8rem;
  }
  main .portfolio .text {
		row-gap: 60px;
    margin: auto 0 40px 20px;
  }
  .sub-contents .sub-flex {
    flex-direction: column;
		row-gap: 40px;
  }
  .sub-contents .sub-flex > *:first-child {
    max-width: 100%;
  }
  .sub-contents .sub-flex > *:first-child br {
    display: none;
  }
  .sub-contents .company .history .list dl {
    width: calc(50% - 40px);
  }
  .sub-contents .company .history .list dl dt span {
    left: -43.5px;
  }
  .sub-contents .company .history .list dl.reverse dt span {
    left: auto;
    right: -43.5px;
  }
  .sub-contents .team .item-wrap {
		row-gap: 30px;
		column-gap: 30px;
  }
  .sub-contents .team .item-box {
    width: calc((100% - 60px) / 3);
		row-gap: 30px;
  }
  .sub-contents .team .item-box button.plus {
    right: 20px;
    bottom: 20px;
  }
  .sub-contents .team .item-box button.close {
    top: 20px;
    right: 20px;
  }
  .sub-contents .team .text {
    padding: 20px;
  }
  .sub-contents .team .text dl dt {
    font-size: 2.6rem;
  }
  .sub-contents .team .text .hidden {
    padding: 20px 0 0;
  }
  .sub-contents .team .detail {
    padding: 60px 40px;
  }
  .sub-contents .responsibility .strategies .item {
    height: 200px;
    font-size: 2.2rem;
  }
  .sub-contents .contact .text .br1400 {
    display: block;
  }
}
@media (max-width: 1200px) {
  html,
  body {
    font-size: 56.25%;
  }
  .col120 {
		row-gap: 80px;
  }
  .padding180 {
    padding: 120px 0;
  }
  .padding150 {
    padding: 100px 0;
  }
  header {
    height: 100px;
		z-index: 3;
  }
  header nav {
    display: none;
  }
  header .menu-button {
    transition: all 0s;
  }
  header .menu-button {
    margin-left: auto;
    position: relative;
  }
  header .menu-button::before {
    display: none;
  }
  header .menu-button span {
    transition: all 0s;
  }
  header .menu-button.on {
    display: flex;
    align-items: center;
    border-color: transparent;
    position: relative;
  }
  header .menu-button.on span {
    width: 36px;
    height: 2px;
    position: absolute;
    mix-blend-mode: revert;
  }
  header .menu-button.on span:nth-child(1),
	header .menu-button.on span:nth-child(4) {
    transform: translate(0, 0) rotate(45deg);
  }
  header .menu-button.on span:nth-child(2),
	header .menu-button.on span:nth-child(3) {
    transform: translate(0, 0) rotate(-45deg);
  }
  header.white .depth1 li a {
    color: var(--color-white);
  }
  .mobile-menu {
    width: 100vw;
    max-width: 375px;
    height: 100vh;
    padding: 100px 0 0;
    position: fixed;
    top: 0;
    right: 0;
		z-index: 2;
    display: none;
  }
	.mobile-menu::before {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background: var(--color-black);
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		z-index: -1;
		opacity: 0.8;
		transition: all 0.2s linear;
	}
  .mobile-menu .depth1 {
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .mobile-menu .depth1 li {
    width: 100%;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    padding: 30px 0 20px;
    opacity: 1;
  }
  .mobile-menu .depth1 li a {
    font-size: 2.9rem;
    padding: 0;
  }
	.mobile-menu.white::before {
		background: var(--color-white);
	}
	.mobile-menu.white .depth1 li {
		border-bottom: 1px solid rgba(0, 0, 0, 0.2);
	}
	.mobile-menu.white .depth1 li a {
		color: #222;
	}
  main .visual {
    margin: 100px 0 20px;
  }
  main .firm .title p br {
    display: none;
  }
  main .firm .item {
    padding: 40px 10px;
  }
  main .firm .item span {
    font-size: 6rem;
  }
  main .firm .item sub,
  main .firm .item sup {
    margin-left: 5px;
  }
  main .firm .item sub {
    font-size: 3rem;
  }
  main .firm .item p {
    font-size: 2rem;
    margin: 20px 0 0;
  }
  main .strategy .title {
    flex-direction: column-reverse;
		row-gap: 40px;
    align-items: flex-start;
  }
  main .strategy .item h5 {
    margin: 30px 0 0;
  }
  main .portfolio .contents {
    flex-wrap: wrap;
    align-items: flex-start;
  }
  main .portfolio .title {
    width: 100%;
  }
  main .message p {
    font-size: 2.2rem;
  }
  .sub-contents .company .history .top p {
    font-size: 2.2rem;
  }
  .sub-contents .company .history .list dl {
    flex-direction: column;
		row-gap: 20px;
  }
  .sub-contents .company .history .list dl dt {
    margin: 0;
  }
  .sub-contents .company .history .list dl.reverse {
    flex-direction: column;
    align-items: flex-end;
  }
  .sub-contents .strategy .process .item-box {
		column-gap: 20px;
  }
  .sub-contents .strategy .process .list-box p br {
    display: none;
  }
  .sub-contents .investment .portfolio .logo-list {
    grid-template-columns: repeat(3, 1fr);
  }
  .sub-contents .team h4 {
    font-size: 3.2rem;
    margin: 0 0 40px;
  }
  .sub-contents .team .item-wrap {
		row-gap: 20px;
		column-gap: 20px;
  }
  .sub-contents .team .item-box {
    width: calc((100% - 40px) / 3);
		row-gap: 20px;
  }
  .sub-contents .team .item-box button.plus {
    top: 20px;
    bottom: auto;
  }
  .sub-contents .team .item-box.hover .text .hidden {
    padding: 15px 0 0;
  }
  .sub-contents .team .text dl dt {
    font-size: 2.2rem;
  }
  .sub-contents .team .text dl dd {
    font-size: 1.9rem;
  }
  .sub-contents .team .text hr {
    margin: 10px 0;
  }
  .sub-contents .team .text div p {
    font-size: 1.7rem;
  }
  .sub-contents .responsibility h4 {
    font-size: 3.2rem;
  }
  .sub-contents .responsibility ol {
    padding: 30px 20px;
  }
  .sub-contents .responsibility .strategies .item-box {
    padding: 0 20px;
  }
  .sub-contents .responsibility .strategies .item {
    height: 160px;
    margin: 0 -20px;
  }
  .sub-contents .responsibility .governance .item-box {
		column-gap: 40px;
  }
  .sub-contents .responsibility .governance .title {
    height: 80px;
  }
  .sub-contents .contact .item-box {
		column-gap: 40px;
  }
  .sub-contents .contact .text {
    flex-shrink: 0;
		row-gap: 40px;
  }
  .sub-contents .contact .text dl {
		row-gap: 20px;
  }
  footer .buttons button {
    height: 60px;
  }
  footer .family ul {
    padding: 10px 20px;
  }
  footer .family-button {
    width: 220px;
    padding: 0 20px;
  }
  footer .top-button {
    width: 60px;
  }
}
@media (max-width: 1024px) {
  .bg-white .more {
    mix-blend-mode: revert;
    filter: brightness(0.2);
  }
}
@media (max-width: 960px) {
  .font136 {
    font-size: calc(var(--fontsize) * 0.5);
  }
  .font92,
	.font84,
  .font82,
  .font72,
  .font68 {
    font-size: calc(var(--fontsize) * 0.7);
  }
  main .firm .item-box {
    grid-template-columns: repeat(2, 1fr);
		row-gap: 20px;
		column-gap: 20px;
  }
  main .strategy .item-box {
		column-gap: 10px;
    margin: 60px 0 0;
  }
  main .message p br {
    display: none;
  }
  .sub-contents .company .information .item {
    width: 100%;
    max-width: 735px;
    flex-direction: column;
		row-gap: 40px;
    margin: 0 auto;
  }
  .sub-contents .company .information .img {
    /* width: 100%; */
		width: calc(100% - 50px);
    order: 1;
  }
  .sub-contents .company .information .text {
    order: 2;
  }
  .sub-contents .company .history .list {
		row-gap: 40px;
    padding: 40px 0;
  }
  .sub-contents .company .history .list p {
    font-size: 2rem;
  }
  .sub-contents .strategy .process .top {
    padding: 30px 10px;
  }
  .sub-contents .strategy .process .title {
    height: 80px;
  }
  .sub-contents .strategy .process .circle-box {
    min-height: 300px;
  }
  .sub-contents .strategy .process .list-box > div {
    padding: 20px 10px;
  }
  .sub-contents .strategy .process .target .circle-box {
    max-width: 80%;
  }
  .sub-contents .strategy .process .deal .circle-list {
    width: 100%;
  }
  .sub-contents .team .item-box {
    width: calc(50% - 10px);
  }
  .sub-contents .responsibility .strategies .item-box {
    flex-wrap: wrap;
  }
  .sub-contents .responsibility .strategies .item {
    width: 50%;
    margin: -10px -20px;
  }
  .sub-contents .responsibility .governance .item-box {
		column-gap: 20px;
  }
  .sub-contents .responsibility .governance .list-box {
    padding: 20px;
  }
  .sub-contents .contact .text dl dt {
    font-size: 2.2rem;
  }
  .sub-contents .contact .text dl dd p {
    font-size: 2rem;
  }
  footer .footer-box {
    align-items: flex-end;
  }
  footer .info dl {
    flex-direction: column;
		row-gap: 5px;
    align-items: flex-start;
  }
}
@media (max-width: 768px) {
  .font136 {
    font-size: calc(var(--fontsize) * 0.4);
  }
  .font92,
	.font84,
  .font82,
  .font72,
  .font68 {
    font-size: calc(var(--fontsize) * 0.56);
  }
  .padding180,
  .padding150 {
    padding: 80px 0;
  }
  header {
    height: 80px;
  }
  header .logo {
    width: 140px;
  }
  header .language hr {
    height: 10px;
  }
  header .menu-button {
    width: 40px;
    height: 40px;
  }
  header .menu-button.on span {
    width: 24px;
  }
  .mobile-menu {
    padding: 80px 0 0;
  }
  .mobile-menu .depth1 li {
    padding: 20px 0;
  }
  main .visual {
    margin: 80px 0 20px;
  }
  main .strategy .title p br {
    display: none;
  }
  main .strategy .item h5 {
    font-size: 2rem;
    margin: 20px 0 0;
  }
  main .portfolio .contents {
		row-gap: 40px;
  }
  main .portfolio .video-box {
    width: 55.814%;
    padding: 35.176% 0;
    margin: 0 auto;
  }
  main .portfolio .text {
		row-gap: 40px;
    margin: 0 0 0 auto;
  }
  .sub-contents .bg-gray {
    padding: 80px 0;
  }
  .sub-contents .company h3 {
    margin: 0 0 20px;
  }
  .sub-contents .company .history .bar {
    left: 20px;
    transform: translateX(0);
  }
  .sub-contents .company .history .list dl {
    width: calc(100% - 60px);
  }
  .sub-contents .strategy .process > .top {
    display: none;
  }
  .sub-contents .strategy .process .item-box {
    flex-direction: column;
		row-gap: 40px;
  }
  .sub-contents .strategy .process .circle-box {
    min-height: inherit;
  }
  .sub-contents .strategy .process .deal .circle-box {
    flex-direction: column;
    align-items: center;
  }
  .sub-contents .strategy .process .deal .circle-list {
    max-width: 80%;
    margin: -20px 0 0;
    position: relative;
  }
  .sub-contents .investment .portfolio .logo-list {
		row-gap: 10px;
		column-gap: 10px;
  }
  .sub-contents .team .item-box button {
    width: 40px;
    height: 40px;
  }
  .sub-contents .team .detail {
    padding: 60px 40px;
  }
  .sub-contents .team .detail p {
    font-size: 1.8rem;
  }
  .sub-contents .responsibility ol li {
    flex-direction: column;
    align-items: flex-start;
		row-gap: 10px;
  }
  .sub-contents .responsibility .governance .item-box {
    flex-direction: column;
		row-gap: 60px;
  }
  .sub-contents .responsibility .process .item-box {
    grid-template-columns: 22% 1% 22% 1% 22% 1% 22%;
    column-gap: inherit;
    justify-content: space-between;
  }
  .sub-contents .responsibility .process .circle p {
    font-size: 2rem;
  }
  .sub-contents .contact .item-box {
    width: 100%;
    max-width: 570px;
    flex-direction: column;
    align-items: flex-start;
		row-gap: 40px;
  }
  .sub-contents .contact .map {
    order: 1;
  }
  .sub-contents .contact .text {
    order: 2;
  }
  footer {
    padding: 40px 0;
  }
  footer .footer-box,
  footer .link {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
  }
  footer .footer-box {
		row-gap: 40px;
  }
  footer .info dl {
    flex-direction: row;
    align-items: center;
		column-gap: 20px;
  }
  footer .link {
		row-gap: 20px;
  }
}
@media (max-width: 640px) {
  .font136 {
    font-size: calc(var(--fontsize) * 0.3);
  }
  .font92,
	.font84,
  .font82,
  .font72,
  .font68 {
    font-size: calc(var(--fontsize) * 0.46);
  }
	.mobile-menu {
		max-width: 320px;
		max-width: 220px;
	}
	.mobile-menu .depth1 li a {
		font-size: 2.6rem;
	}
  .col120 {
		row-gap: 60px;
  }
  p {
    font-size: 2rem;
  }
  main .firm .item span {
    font-size: 5rem;
  }
  main .firm .item sub {
    font-size: 2.4rem;
  }
  main .strategy .title {
		row-gap: 20px;
  }
  main .strategy .item-box {
		column-gap: 10px;
  }
	main .strategy .item h5 {
		font-size: 1.7rem;
	}
  main .portfolio .text p br {
    display: none;
  }
  main .message .column {
		row-gap: 40px;
  }
	.sub-visual .text {
		padding-top: 5%;
	}
	.sub-visual .scroll {
		row-gap: 5px;
	}
	.sub-visual .scroll .bar {
		height: 40px;
	}
  .sub-contents .bg-gray {
    padding: 40px 0;
  }
  .sub-contents .company .history .bar {
    left: 9px;
  }
  .sub-contents .company .history .list {
    padding: 0;
  }
  .sub-contents .company .history .list dl {
    width: calc(100% - 40px);
  }
  .sub-contents .company .history .list dl dt {
    font-size: 3rem;
  }
  .sub-contents .company .history .list dl dt span {
    width: 5px;
    height: 5px;
    left: -33.5px;
  }
  .sub-contents .company .history .list dl.on dt span::before,
	.sub-contents .company .history .list dl.on dt span::after {
    width: 25px;
    height: 25px;
  }
  .sub-contents .strategy .process .top {
    font-size: 2.1rem;
  }
  .sub-contents .strategy .process .title {
    font-size: 2.3rem;
  }
  .sub-contents .investment .portfolio .logo-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .sub-contents .team h4 {
    font-size: 2.6rem;
  }
  .sub-contents .team .item-box {
    width: 100%;
  }
  .sub-contents .team .text dl dt {
    font-size: 2.6rem;
  }
  .sub-contents .team .text dl dd {
    font-size: 2.1rem;
  }
  .sub-contents .team .text div p {
    font-size: 1.9rem;
  }
  .sub-contents .team .detail {
    padding: 20px;
  }
  .sub-contents .team .detail > div {
    display: flex;
    flex-direction: column;
		row-gap: 20px;
  }
  .sub-contents .team .detail button.close {
    margin-left: auto;
    position: relative;
    top: auto;
    right: auto;
  }
  .sub-contents .responsibility .strategies .item {
    width: calc(50% + 10px);
    height: 140px;
    margin: -5px;
  }
  .sub-contents .responsibility .governance .title {
    height: 70px;
    font-size: 2.1rem;
  }
  footer .info dl {
    flex-direction: column;
    align-items: flex-start;
		row-gap: 5px;
  }
  footer .info dl dt {
    width: 100%;
  }
  footer .buttons button {
    height: 50px;
  }
  footer .family ul li a {
    padding: 5px 0;
  }
  footer .top-button {
    width: 50px;
  }
}
@media (max-width: 570px) {
  footer .contact.typeLink .box {
    display: flex;
    flex-wrap: wrap;
		row-gap: 40px;
		column-gap: 20px;
  }
  footer .contact.typeLink .map {
    width: 100%;
  }
  footer .contact.typeLink .map a {
    height: 280px;
  }
  footer .contact.typeLink .item {
    width: calc(50% - 10px);
  }
}
@media (max-width: 440px) {
  html,
  body {
    font-size: 50%;
  }
}