@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


*,
*::before,
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	background: transparent;
	font-weight: inherit;
	font-size: inherit;
	font-style: inherit;
	-webkit-tap-highlight-color: transparent;
}

article,
aside,
details,
figcaption,
figure,
picture,
main,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ul,
ol {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

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

table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
}

button {
	font-family: inherit;
}

/*----------
	base
----------*/
html {
	width: 100%;
	font-size: 62.5%;
	background-color: #fff;
}
html.locked {
	position: fixed;
	overflow: hidden;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 1.57;
  color: #505050;
  font-weight: 300;
	letter-spacing: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

@media (max-width: 768px) {

  body {
    font-size: 14px;
  }

}
a {
  color: #707070;
}

a,
a:hover {
  text-decoration: none;
  transition: 0.7s;
}

img:not(.img-auto)  {
	width: 100%;
	height: auto;
	vertical-align: top;
}

sup {
	font-size: 65%;
	vertical-align: text-top;
}

sub {
	font-size: 65%;
	vertical-align: text-bottom;
}

@media (max-width: 767px) {
	.cp-pc-v {
		display: none;
	}
}

@media (min-width: 768px), print {
	.cp-sp-v {
		display: none;
	}
}


.l-maincontent {
  padding-top: 184px;
  background-image: url(/8954/202411/a/assets/img/bg.jpg);
}

@media (max-width: 767px) {
  .l-maincontent {
    padding: 135px 0 0 ;
    margin: auto;
    background-size: cover;
  }
  
}


/*----------
	header
----------*/
header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
}
.header__inner {
  width: 100%;
  background-color: #fff;
  height: 90px;
  padding: 0 80px 0 50px;
  box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
.header__inner .header__logo{
  display: flex;
  flex-wrap: wrap;
  gap: 0 32px;
  align-items: center;
}
.header__inner .header__logo h1 {
  max-width: 310px;
}

.header__inner .header__logo .header__link {
  color: #707070;
  position: relative;
}

.header__inner .header__link:hover {
  font-weight: 500;
}

.header__inner .header__logo .header__link::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  border-top: 1px solid #505050;
  border-left: 1px solid #505050;
  transform: rotate(133deg);
  right: -8px;
}

.header__inner .header__logo .header__link:hover::after {
  border-top: 2px solid #505050;
  border-left: 2px solid #505050;
}

.header__inner .header__menu {
  text-align: center;
  flex: auto;
  height: 100%;
}

.header__inner .header__menu .header__menu__inner {
  height: 100%;
}

.header__inner .header__menu ul {
  display: flex;
  justify-content: flex-end;
  height: 100%;
}

.header__inner .header__menu ul li {
  flex: 0 0 auto;
  margin-right: min(82px ,4vw);
  font-weight: 700;
  font-size: 16px;
  position: relative;
}

.header__inner .header__menu ul li:last-child {
  margin-right: 0;
}

.header__inner .header__menu ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  position: relative;
  color: #707070;
}

.header__inner .header__menu ul li.active {
  color: #090F44;
}

.header__inner .header__menu ul li.active::after {
  content: '';

  height: 10px;
  background-color: #090F44;
  position: absolute;
  bottom: 0;
  left: -13px;
  right: -13px;
}

.header__inner .header__menu ul li a:hover {
  color: #090F44;
}

.header__btn {
  display: none;
}

@media (max-width: 1220px) {

  .header__inner {
    height: 0;
    padding: 0;
    display: block;
    position: relative;
  }

  .header__btn {
    display: block;
    width: 30px;
    height: 16px;
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 10;
  }

  .header__btn span {
    width: 100%;
    height: 2px;
    background-color: #090F44;
    display: block;
    position: absolute;
    transition: 0.5s;
  }

  .header__btn span:nth-child(2) {
    bottom: 7px;
  }

  .header__btn span:last-child {
    bottom: 0;
  }

  .header__menu--open .header__btn span:nth-child(1) {
    transform: rotate(-30deg);
    background-color: #A8A8A8;
    bottom: 5px;
  }

  .header__menu--open .header__btn span:nth-child(2) {
    opacity: 0;
  }

  .header__menu--open .header__btn span:nth-child(3) {
    transform: rotate(30deg);
    background-color: #A8A8A8;
    bottom: 5px;
  }

  .header__inner .header__logo {
    padding: 28px 20px 18px;
    min-width: 105px;
    box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
    background-color: #fff;
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 0;
  }

  .header__inner .header__logo h1 {
    max-width: 218px;
  }

  .header__inner .header__logo .header__link {
    font-size: 13px;
    margin-top: 13px;
    display: table;
  }

  .header__inner .header__logo .header__link::after {
    width: 8px;
    height: 8px;
  }

  .header__inner .header__menu {
    display: none;
    align-items: center;
    width: 100%;
    height: calc(100vh - 115px);
    background-image: url(/8954/202411/a/assets/img/bg.jpg);
    background-size: cover;
  }

  .header__inner .header__menu .header__menu__inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 10% 18%;
  }

  .header__inner .header__menu__ttl {
    font-size: 24px;
    font-weight: 500;
    color: #090F44;
    text-align: left;
    width: 100%;
    margin: 0;
    margin-bottom: min(40px,4vh);
  }

  .header__inner .header__menu ul {
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    height: auto;
  }
  .header__inner .header__menu ul li {
    margin-right: 0;
  }

  .header__inner .header__menu ul li + li {
    margin-top: min(36px,4vh);
  }

  .header__inner .header__menu ul li a {
    background: #fff;
    font-size: 14px;
    box-shadow:3px 3px 5px rgba(0, 0, 0, 0.16);
    padding: 12px 10px;
    justify-content: start;
    gap: 10px;
    border-radius: 3px;
  }

  .header__inner .header__menu ul li a::before {
    content: '';
    width: 24px;
    height: 24px;
    background-size: contain;
  }

  .header__inner .header__menu ul li a:hover {
    font-weight: 500;
  }



  .header__inner .header__menu ul li.menu-topmessage a::before {
    background-image: url(../img/icn_topmessage.svg);
  }

  .header__inner .header__menu ul li.menu-highlight a::before {
    background-image: url(../img/icn_highlight.svg);
  }

  .header__inner .header__menu ul li.menu-growth a::before {
    background-image: url(../img/icn_growth.svg);
  }

  .header__inner .header__menu ul li.menu-portfolio a::before {
    background-image: url(../img/icn_portfolio.svg);
  }

  .header__inner .header__menu ul li.menu-information a::before {
    background-image: url(../img/icn_information.svg);
  }

  .header__inner .header__menu ul li::after,
  .header__inner .header__menu ul li.active::after{
    display: none;
  }

  .header__menu__footer {
    font-size: 11px;
    text-align: center;
    margin-top: min(56px,5vh);
  }

  

}

@media (max-width: 1220px) {}

/*----------
	footer
----------*/
.footer__inner {
  height: 210px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
}

@media (max-width: 768px) {
  .footer__inner {
    height: 100px;
    font-size: 9px;
  }

}


/*----------
	contents
----------*/
.l-section {
  margin: 0 auto;
  max-width: 1200px;
  background-color: #fff;
  box-sizing: border-box;
  padding: 70px 0 120px;
}

.l-section .l-section__inner {
  max-width: 1000px;
  margin: auto;
}

.ttl--secondary {
  margin-bottom: 28px;
  position: relative;
}

.ttl--secondary h2 {
  font-size: 28px;
  color: #090F44;
  font-weight: 500;
}

.ttl--secondary h2 span {
  font-weight: 300;
  font-size: 18px;
}

.ttl--tertiary {
  margin-bottom: 28px;
  position: relative;
  padding-left: 20px;
}

.ttl--tertiary::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 10px;
  height: 22px;
  background-color: #090F44;
}

.ttl--tertiary h3 {
  font-size: 22px;
  color: #090F44;
  font-weight: 500;
}

.list-note li {
  font-size: 12px;
  color: #505050;
  display: grid;
  grid-template-columns: auto 1fr;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}


@media (max-width: 768px) {
  
  .l-section {
    padding: 20px;
    margin: 0 5%;
    overflow: hidden;
  }

  .ttl--secondary {
    margin-bottom: 18px;
  }
  
  .ttl--secondary h2 {
    font-size: 20px;
    color: #505050;
    font-weight: 300;
  }
  
  .ttl--secondary h2 span {
    font-size: 12px;
    display: block;
  }

  .ttl--tertiary {
    margin-bottom: 14px;
    padding-left: 12px;
  }

  .ttl--tertiary h3 {
    font-size: 12px;
  }

  .ttl--tertiary::before {
    width: 5px;
    height: 17px;
  }

  .list-note li {
    font-size: 9px;
  }
  .highlight__graph .cp-sp-v{
    margin-right: -3%;

  }
}


.gototop {
  position: fixed;
  bottom: 5%;
  right: 3%;
  z-index: 9;
}
.gototop a {
  width: 47px;
  height: 47px;
  display: block;
  background-image: url(/8954/202411/a/assets/img/icn_back.png);
  background-size: cover;
}


@media (max-width: 768px) {
  .gototop {
    bottom: 3%;
  }

  .gototop a {
    width: 26px;
    height: 26px;
  }

}


/*----------
	投資主の皆様へ
----------*/
.topmessage .topmessage__kv {
  display: grid;
  margin-bottom: 42px;
  grid-template:"left img right" /1fr min(578px,57.8%) 1fr;
  align-items: end;
  gap: 30px;
}

.topmessage .topmessage__kv .topmessage__img {
  grid-area: img;
}

.topmessage .topmessage__kv .topmessage__name.left {
  grid-area: left;
}

.topmessage .topmessage__kv .topmessage__name.right {
  grid-area: right;
}

.topmessage .topmessage__kv .topmessage__name p + p {
  margin-top: 56px; 
}

.topmessage .topmessage__kv .topmessage__name p span {
  display: block;
  font-size: 12px;
  line-height: 1.33;
  margin-bottom: 17px;
}

@media (max-width: 768px) {
  .topmessage .topmessage__kv {
    grid-template:"img img" "left right"/1fr 1fr;
    gap: 0 20px;
    margin-bottom: 20px;
  }

  .topmessage .topmessage__kv .topmessage__name {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
  }

  .topmessage .topmessage__kv .topmessage__name p {
    
  }

  .topmessage .topmessage__kv .topmessage__name p img {
    width:  min(90%,200px);
  }

  .topmessage .topmessage__kv .topmessage__name p + p {
    margin: 0;
  }

  .topmessage .topmessage__kv .topmessage__name p span {
    font-size: 9px;
    margin-bottom: 10px;
  }

}


/*----------
	決算ハイライト
----------*/
.highlight .ttl--secondary {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.highlight .ttl--secondary p {
  font-size: 16px;
  color: #505050;
  font-weight: 400;
}

.highlight .highlight__list {
  margin-bottom: 100px;
}

.highlight .highlight__list ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.highlight .highlight__list ul li {
  flex: 0 0 480px;
  height: 120px;
  background-color: #CDDDEC;
  border-left: 10px solid #090F44;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  font-size: 20px;
  line-height: 1.2;
}

.highlight .highlight__list ul li:nth-child(n + 3) {
  margin-top: 28px;
}

.highlight .highlight__list ul li.item08 {
  flex-direction: column;
  justify-content: center;
}

.highlight .highlight__list ul li.item08 p {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}

.highlight .highlight__list ul li.item08 p span {
  display: block;
}


.highlight .highlight__list ul li .note {
  font-size: 16px;
  display: block;
  text-indent: -0.5em;
}

.highlight .highlight__list ul li .money {
  color: #090F44;
  font-size: 40px;
  font-weight: 500;
}

.highlight .highlight__list ul li .medium {
  font-weight: 500;
}

.highlight .highlight__list ul li .rank {
  font-size: 36px;
  font-weight: 500;
}

.highlight .highlight__list ul li .fz-32 {
  font-size: 32px;
}

.highlight .highlight__list ul li .blue {
  color: #090F44;
}

.highlight .highlight__graph {
  margin-bottom: 32px;
}

.highlight .highlight__graph .highlight__2col {
  display: flex;
  justify-content: space-between;
  margin-bottom: 100px;
}

.highlight .highlight__graph .highlight__2col .highlight__item {
  flex: 0 0 480px;
}

@media (max-width: 768px) {

  .highlight .ttl--secondary {
    align-items: flex-end;
  }

  .highlight .ttl--secondary p {
    font-size: 9px;
  }

  .highlight .highlight__list {
    margin-bottom: 44px;
  }

  .highlight .highlight__list ul li {
    flex: 0 0 auto;
    width: 100%;
    height: auto;
    min-height: 50px;
    padding: 5px 20px;
    font-size: 12px;
  }

  .highlight .highlight__list ul li .note {
    font-size: 10px;
  }

  .highlight .highlight__list ul li .money {
    font-size: 32px;
  }
  .highlight .highlight__list ul li .rank {
    font-size: 20px;
  }

  .highlight .highlight__list ul li .fz-32 {
    font-size: 18px;
  }

  .highlight .highlight__list ul li:nth-child(n + 2) {
    margin-top: 11px;
  }

  .highlight .highlight__graph .highlight__2col {
    display: block;
    margin-bottom: 46px;
  }

  .highlight .highlight__graph .highlight__2col .highlight__item {
    position: relative;
  }

  .highlight .highlight__graph .highlight__2col .highlight__item .highlight__item__wrap {
    overflow: scroll;
    position: relative;
  }

  .highlight .highlight__graph .highlight__2col .highlight__item .highlight__item__inner {
    width: 436px;
  }

  .highlight .highlight__graph .highlight__2col .highlight__item + .highlight__item {
    margin-top: 40px;
  }

}





/*----------
	入替戦略
----------*/

.growth .growth__lead {
  font-size: 18px;
  margin-bottom: 50px;
}

.growth .ttl--tertiary_num {
  font-weight: 500;
  font-size: 24px;
  margin-bottom: 23px;
}

.growth .ttl--tertiary_num span {
  display: inline-block;
  background: #090F44;
  color: #fff;
  width: 33px;
  height: 33px;
  text-align: center;
  line-height: 1.3;
  margin-right: 10px;
}

.growth .growth__effect_Items + .ttl--tertiary_num {
  margin-top: 65px;
}

.growth .growth__effect_Items {
  display: flex;
  justify-content: space-between;
  margin-bottom: 65px;
}

.growth .growth__effect_Items .growth__effect_Item {
  flex: 0 0 460px;
  position: relative;
}

.growth .growth__effect_Items .growth__effect_Item .growth__effect_ttl {
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
}

.growth .growth__effect_Items .growth__effect_Item .growth__effect_inner {
  display: flex;
  justify-content: space-evenly;
  padding: 14px 20px;
}

.growth .growth__effect_Items .growth__effect_Item .growth__effect_inner p {
  font-size: 16px;
}

.growth .growth__effect_Items .growth__effect_Item .growth__effect_inner p span {
  font-size: 24px;
  font-weight: 500;
}

.growth .growth__effect_Items .growth__effect_Item.growth__effect_sale {
  border: 1px solid #B5B5B6;
}

.growth .growth__effect_Items .growth__effect_Item.growth__effect_sale .growth__effect_ttl {
  background-color: #B5B5B6;
}

.growth .growth__effect_Items .growth__effect_Item.growth__effect_sale::after {
  content: '';
  position: absolute;
  right: -65px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 30px solid transparent;
  border-bottom: 30px solid transparent;
  border-left: 38px solid #b5b5b6;
  border-right: 0;
}

.growth .growth__effect_Items .growth__effect_Item.growth__effect_acquisition {
  border: 1px solid #5990BF;
}

.growth .growth__effect_Items .growth__effect_Item.growth__effect_acquisition .growth__effect_ttl {
  background-color: #5990BF;
}

.growth .growth__effect_Items.Items04 .growth__effect_Item {
  flex: 0 0 auto;
  width: 100%;
}

.growth .growth__effect_Items.Items04 .growth__effect_Item::after {
  content: none;
}

.growth .growth__effect_Items.Items04 .growth__effect_Item p {
  font-weight: 500;
}

.growth .growth__replacement_Items.growth__replacement_sale {
  margin-top: 50px;
  margin-bottom: 80px;
}

.growth .growth__replacement_Items .growth__replacement_ttl {
  color: #fff;
  text-align: center;
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 44px;
}

.growth .growth__replacement_acquisition .growth__replacement_ttl {
  background-color: #5990BF;
}


.growth .growth__replacement_sale .growth__replacement_ttl {
  background-color: #B5B5B6;
}


.growth .growth__replacement_Items .growth__replacement_inner ul {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  gap: 55px;
}

.growth .growth__replacement_Items .growth__replacement_inner ul li {
  flex: 0 0 120px;
  font-weight: 400;
  line-height: 1.33;
  text-align: center;
  font-size: 14px;
  
}

.growth .growth__replacement_sale .growth__replacement_inner ul {
  gap: 47px;
}

.growth .growth__replacement_Items .growth__replacement_inner ul li img {
  max-height: 130px;
  width: auto;
}


.growth .growth__replacement_Items .growth__replacement_inner ul li .growth__replacement_body {
  margin-top: 14px;
}

.growth .growth__replacement_Items .growth__replacement_inner ul li .growth__replacement_date {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #707070;
}

.growth .growth__replacement_sale .growth__replacement_inner ul li.item18 p {
  letter-spacing: -0.05em;
}

.growth .growth__replacement_sale .growth__replacement_inner ul li.item18 .growth__replacement_date p {
  letter-spacing: 0;
}

@media (max-width: 768px) {

  .growth .growth__lead {
    font-size: 14px;
    margin-bottom: 30px;
  }
  
  .growth .ttl--tertiary_num {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .growth .ttl--tertiary_num span {
    width: 22px;
    height: 22px;
    margin-right: 6px;
  }

  .growth .growth__effect_Items {
    display: block;
    margin-bottom: 0;
  }

  .growth .growth__effect_Items + .ttl--tertiary_num {
    margin-top: 22px;
  }

  .growth .growth__effect_Items .growth__effect_Item .growth__effect_ttl {
    font-size: 10px;
  }

  .growth .growth__effect_Items .growth__effect_Item.growth__effect_sale {
    margin-bottom: 40px;
  }

  .growth .growth__effect_Items .growth__effect_Item.growth__effect_sale::after {
    right: 0;
    left: 0;
    top: auto;
    bottom: -30px;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 19px solid #b5b5b6;
    border-bottom: 0;
}

  .growth .growth__effect_Items .growth__effect_Item .growth__effect_inner {
    padding: 10px;
  }

  .growth .growth__effect_Items .growth__effect_Item .growth__effect_inner p {
    text-align: center;
    font-size: 12px;
  }

  .growth .growth__effect_Items .growth__effect_Item .growth__effect_inner p span {
    display: block;
    font-size: 20px;
  }
  .growth .growth__effect_Items.Items03 .growth__effect_Item .growth__effect_inner p span {
    display: inline-block;
  }

  .growth .growth__effect_Items.Items04 .growth__effect_Item .growth__effect_inner p {
    text-align: left;
  }

  .growth .growth__replacement_Items .growth__replacement_ttl {
    font-size: 12px;
    margin-bottom: 40px;
  }

  .growth .growth__replacement_Items .growth__replacement_inner {
    position: relative;
    overflow: hidden;
  }

  .growth .growth__replacement_Items .growth__replacement_inner .growth__replacement_wrap {
    overflow-x: scroll;
  }

  .growth .growth__replacement_Items .growth__replacement_inner ul {
    width: 780px;
    justify-content: start;
    gap: 40px 0;
  }

  .growth .growth__replacement_Items .growth__replacement_inner ul li {
    flex: 0 0 135px;
    font-size: 11px;
    margin-left: 16px;
  }

  .growth .growth__replacement_Items .growth__replacement_inner ul li .growth__replacement_date {
    margin-top: 5px;
    padding-top: 5px;
  }

  .growth .growth__replacement_sale .growth__replacement_inner ul {
    width: 780px;

  }

  .growth .growth__replacement_Items.growth__replacement_sale {
    margin-bottom: 20px;
  }

}





/*----------
	主要物件
----------*/

.portfolio .ttl--secondary {
  display: flex;
  align-items: baseline;
}

.portfolio .ttl--secondary p {
  font-size: 12px;
  color: #505050;
  margin-left: 20px;
}
.portfolio .portfolio__item + .portfolio__item {
  margin-top: 140px;
}

.portfolio .portfolio__ttl {
  text-align: center;
  color: #090F44;
  font-weight: 700;
  font-size: 20px;
  border-top: 1px solid #090F44;
  border-bottom: 1px solid #090F44;
  line-height: 1;
  padding: 8px 0;
  margin-bottom: 30px;
}

.portfolio .portfolio__ttl span {
  font-size: 32px;
}

.portfolio .portfolio__slider {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 40px 5%;
}

.portfolio :is(.portfolio__slider>li, .portfolio__slider .slick-slide)  {
  display: grid;
  gap: 20px 0;
  align-content: flex-start;
}

.portfolio .portfolio__slider li .portfolio__rank {
  min-height: 2.5em;
  display: flex;
  align-items: center;
}
.portfolio .portfolio__slider li .portfolio__rank h4{
  display: flex;
  align-items: center;

}

.portfolio .portfolio__slider li .portfolio__rank span {
  display: inline-block;
  vertical-align: middle;
  font-size: 26px;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 1;
  color: #fff;
  box-shadow: 4px 4px 0px 0px #777777;
  margin-right: 18px;
}

.portfolio .office .portfolio__slider li .portfolio__rank span {
  background-color: #004098;
}

.portfolio .shop .portfolio__slider li .portfolio__rank span {
  background-color: #E6A600;
}


.portfolio .house .portfolio__slider li .portfolio__rank span {
  background-color: #EB6112;
}

.portfolio .logistics .portfolio__slider li .portfolio__rank span {
  background-color: #81B440;
}

.portfolio .hotel .portfolio__slider li .portfolio__rank span {
  background-color: #8564A9;
}

.portfolio .portfolio__slider li .portfolio__rank p {
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}


@media (max-width: 768px) {

  .portfolio .l-section {
    padding-bottom: 80px;
  }

  .portfolio .ttl--secondary p {
    font-size: 9px;
  }

  .portfolio .portfolio__ttl {
    font-size: 12px;
  }

  .portfolio .portfolio__ttl span {
    font-size: 20px;
  }



  .portfolio .portfolio__slider {
    position: relative;
    grid-template-columns: 1fr;
  }

  .portfolio .portfolio__slider .slick-slide {
    margin: 0 18px;
  }

  .portfolio .portfolio__slider li .portfolio__rank p {
    font-size: 16px;
  }

  .portfolio .portfolio__slider li .portfolio__rank span {
    font-size: 20px;
    width: 25px;
    height: 25px;
    box-shadow: 3px 3px 0px 0px #777777;
    margin-right: 10px;
    line-height: 1.2;
  }

  .portfolio .portfolio__slider li .portfolio__body {
    font-size: 16px;
  }

  .slick-dots {
    position: absolute;
    bottom: -5%;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    width: 70px;
    margin: auto;
  }

  .portfolio .portfolio__slider .slick-dots li {
    flex: 0;
    text-indent: 9999px;
    width: 10px;
    height: 10px;
    border-radius: 20px;
    background-color: #B5B5B6;
  }

  .portfolio .portfolio__slider .slick-dots li.slick-active {
    background-color: #5990BF;
  }

  .slick-arrow {
    text-indent: -9999px;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    height: 100%;
    z-index: 5;
    width: 14px;
  }

  .slick-arrow.slick-next {
    right: 0;
    left: auto;
  }

  .slick-arrow::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 14px;
    height: 14px;
    border-top: 1px solid #505050;
    border-left: 1px solid #505050;
    transform:  rotate(-45deg);
  }

  .slick-arrow.slick-next::before {
    transform: rotate(135deg);
    left: auto;
    right: 0;
  }

  .portfolio .portfolio__item + .portfolio__item {
    margin-top: 70px;
  }

}


/*----------
	投資主インフォメーション
----------*/

.information .l-section p {
  font-weight: 400;
  margin-bottom: 1em;
}

.information .list-note li {
  text-indent: -3em;
  padding-left: 3em;
}

.information .information__calendar {
  margin: 100px 0;
  padding: 100px 0;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
}

.information .information__table table {
  width: 100%;
  text-align: left;
}

.information .information__table table th,
.information .information__table table td {
  padding: 10px 0;
}

.information .information__table table th {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-right: 25%;
  line-height: 1.2;
}

.information .information__table table th.adjustment {
  letter-spacing: 0.05em;
}

.information .information__2col {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
  margin-bottom: 50px;
}

.information .information__2col .information__img {
  flex: 0 0 800px;
}

.information__blue {
  margin: 40px 0;
  background-color: #D9DEEE;
  padding: 25px 30px;
}

.information__blue p.ttl {
  font-weight: 500;}

.information__blue p.txt {
  margin-bottom: 0;
}

.information__aqua {
  margin: 100px 0 0;
  padding: 20px 18px;
  background-color: #E6F6FD;
}

.information__aqua p.ttl {
  color: #090F44;
  font-size: 20px;
  font-weight: 500;}

.information__aqua p.txt +  p.ttl {
  margin-top: 37px;
}

@media (max-width: 768px) {
  .information .l-section p {
    font-size: 14px;
  }

  .information .information__scroll {
    position: relative;
  }

  .scrollicn {
    position: absolute;
    z-index: 5;
    right: 0;
    top: 10px;
    width: 47px;
    height: 38px;
    background-image: url(../img/icn_scroll.png);
    background-size: contain;}

  .information .information__scroll .information__scroll_wrap {
    overflow-x: scroll;
  }

  .information .information__scroll.scroll01 .information__scroll_inner {
    width: 840px;
  }

  .information .information__scroll.scroll02 .information__scroll_inner {
    width: 685px;
  }

  .information .information__scroll.scroll03 .information__scroll_inner {
    width: 610px;
  }

  .information .information__scroll.scroll04 .information__scroll_inner {
    width: 530px;
  }
  .information .information__scroll .information__scroll_inner img{
    width: 100%;
    height: auto;

  }


  .information .information__calendar {
    margin: 40px 0;
    padding: 40px 0;
  }

  .information .information__table table {
    font-size: 13px;
  }
  .information .information__table table th {
    background-color: #F0F0F0;
    padding: 5px;
    display: block;
    color: #505050;
    width: 100%;
    margin-bottom: 5px;
  }
  .information .information__table table td {
    padding-top: 0;
  }
  .information .information__table table th,
  .information .information__table table td {
    display: block;
  }

  .information .information__2col {
    display: block;
    margin-bottom: 40px;
  }

  .information__blue {
    margin: 26px 0;
    padding: 15px 13px;
  }

  .information__blue p.txt,
  .information__blue p.ttl {
    font-size: 12px;
  }

  .information__border {
    padding-bottom: 40px;
    border-bottom: 1px solid #707070;
  }

  .information__aqua {

    margin-top: 40px;
  }

  .information__aqua p.txt {
    font-size: 10px;
  }

  .information__aqua p.txt + p.ttl {
    margin-top: 22px;
  }

}







/* 汎用マージン */
.cp-margin-xs {
	margin-bottom: 10px !important;
}
@media (min-width: 768px), print {
	.cp-margin-xs {
		margin-bottom: 20px !important;
	}
}

.cp-margin-sm {
	margin-bottom: 20px !important;
}
@media (min-width: 768px), print {
	.cp-margin-sm {
		margin-bottom: 30px !important;
	}
}

.cp-margin-md {
	margin-bottom: 30px !important;
}
@media (min-width: 768px), print {
	.cp-margin-md {
		margin-bottom: 40px !important;
	}
}

.cp-margin-lg {
	margin-bottom: 50px !important;
}
@media (min-width: 768px), print {
	.cp-margin-lg {
		margin-bottom: 60px !important;
	}
}

.cp-margin-xl {
	margin-bottom: 60px !important;
}
@media (min-width: 768px), print {
	.cp-margin-xl {
		margin-bottom: 80px !important;
	}
}

.cp-margin-xxl {
	margin-bottom: 80px !important;
}
@media (min-width: 768px), print {
	.cp-margin-xxl {
		margin-bottom: 120px !important;
	}
}

.cp-margin-none {
  margin-bottom: 0 !important;
}
.information__scroll_inner.right{
  text-align: right;
}