@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans&display=swap");

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}

body {
  line-height: 1
}

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

nav ul {
  list-style: none
}

blockquote,
q {
  quotes: none
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold
}

del {
  text-decoration: line-through
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help
}

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0
}

input,
select {
  vertical-align: middle
}

@media screen and (max-width: 768px) {
  html {
    text-size-adjust: 100%;
    webkit-text-size-adjust: 100%
  }
}

body {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 15px;
  min-width: 1240px;
  color: #333
}

@media screen and (max-width: 768px) {
  body {
    min-width: 100%;
    text-size-adjust: 100%;
    webkit-text-size-adjust: 100%
  }
}

body.is-menu-open {
  overflow: hidden
}

a {
  text-decoration: none
}

a:hover {
  opacity: .86
}

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

.container {
  width: 1160px;
  margin: auto
}

@media screen and (max-width: 768px) {
  .container {
    padding: 0 16px;
    width: 100%;
    box-sizing: border-box
  }
}

.col {
  display: flex
}

.col.__center {
  align-items: center;
  justify-content: center
}

.col.__gap20 {
  gap: 20px
}

.col.__gap30 {
  gap: 30px
}

.sp {
  display: none
}

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

.pc {
  display: block
}

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

@media screen and (max-width: 768px) {
  main {
    padding-top: 70px
  }
}

.breadcrumb {
  border-top: 1px solid #dfdfdf;
  padding: 16px 0
}

@media screen and (max-width: 768px) {
  .breadcrumb {
    padding: 12px 0
  }
}

.breadcrumb ul {
  flex-wrap: wrap;
  display: block;
  width: 100%;
  max-width: 1160px;
  margin: auto;
  margin-inline: auto;
}

.breadcrumb ul li {
  line-height: 1.8;
  display: inline;
}

@media screen and (max-width: 768px) {
  .breadcrumb ul li {
    line-height: 1.6em;
    font-size: 12px;
  }
}

.breadcrumb ul li a {
  display: inline;
  margin-right: 10px;
  text-decoration: underline;
  padding-right: 25px;
  color: #5E0055;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%20%3Cg%20stroke-width%3D%220%22%2F%3E%20%3Cg%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3Cg%3E%20%3Cpath%20d%3D%22M9%206L15%2012L9%2018%22%20stroke%3D%22%23000%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center right/16px
}

.breadcrumb ul li a:hover {
  text-decoration: none
}

.page-header {
  background-color: #F4F4F4;
  padding: 40px 0
}

.page-header h1 {
  font-size: 36px;
  font-weight: 500;
  color: #333
}

@media screen and (max-width: 768px) {
  .page-header h1 {
    text-align: center;
    font-size: 34px
  }
}

.page-main {
  padding: 40px 0 80px
}

@media screen and (max-width: 768px) {
  .page-main {
    padding: 32px 0 64px
  }

  .page-main.container {
    padding: 32px 16px 64px
  }
}

.page-main .backto-top {
  margin-top: 72px
}

.page-main .backto-top .backto-top__btn {
  display: block;
  width: 300px;
  border: 2px solid #5E0055;
  color: #333;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  padding: 16px;
  text-decoration: none;
  border-radius: 40px;
  margin: 0 auto;
  text-align: center;
  transition: all .3s;
  background: url("/_assets/img/share/arrow-left.svg") no-repeat 15px center/16px #fff
}

.page-main .backto-top .backto-top__btn:hover {
  background-color: #5E0055;
  background-image: url("/_assets/img/share/arrow-white-left.svg");
  color: #fff;
  background-image: url("/_assets/img/share/arrow-white-left.svg")
}

.date {
  color: #5E0055;
  font-size: 16px;
  font-weight: 700
}

.category {
  color: #fff;
  font-weight: 500;
  font-size: 14px;
  padding: 5px 10px;
  border-radius: 4px;
  background: #5E0055
}

@media screen and (max-width: 768px) {
  .category {
    padding: 7px 14px
  }
}

.caption-heading {
  margin-bottom: 32px
}

.caption-heading .caption-heading__title {
  font-size: 32px;
  line-height: 1.5;
  letter-spacing: 1.3px;
  font-weight: 500
}

.caption-heading .caption-heading__title span {
  color: #5E0055;
  font-size: 14px;
  letter-spacing: 0;
  display: block
}

.border-ttl {
  font-size: 30px;
  font-weight: 700;
  border-left: 3px solid #5E0055;
  padding: 0 0 0 16px;
  margin-bottom: 32px;
  line-height: 1.5
}

@media screen and (max-width: 768px) {
  .border-ttl {
    font-size: 22px
  }
}

.qira {
  font-family: "Plus Jakarta Sans", "Arial"
}

.header {
  background-color: #5E0055
}

@media screen and (max-width: 768px) {
  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 5
  }
}

.header .header__wrap {
  justify-content: space-between
}

@media screen and (max-width: 768px) {
  .header .header__wrap {
    height: 70px;
    align-items: center
  }
}

.header .header__wrap .header__logo {
  max-width: 130px;
  display: flex;
  justify-content: center;
  align-items: center
}

@media screen and (max-width: 768px) {
  .header .header__burger-button {
    position: absolute;
    width: 31px;
    height: 22px;
    top: 0;
    bottom: 0;
    margin: auto;
    left: auto;
    right: 16px;
    cursor: pointer
  }

  .header .header__burger-button span {
    width: 100%;
    height: 3px;
    background: #fff;
    display: block;
    border-radius: 3px;
    transition: all .3s;
    position: absolute
  }

  .header .header__burger-button span:nth-of-type(1) {
    top: 0
  }

  .header .header__burger-button span:nth-of-type(2) {
    top: 0;
    bottom: 0;
    margin: auto
  }

  .header .header__burger-button span:nth-of-type(3) {
    bottom: 0
  }

  .header .header__burger-button.is-menu-open span:nth-of-type(1) {
    -webkit-transform: translateY(10px) rotate(-45deg);
    transform: translateY(10px) rotate(-45deg);
    top: 0
  }

  .header .header__burger-button.is-menu-open span:nth-of-type(2) {
    opacity: 0
  }

  .header .header__burger-button.is-menu-open span:nth-of-type(3) {
    -webkit-transform: translateY(-10px) rotate(45deg);
    transform: translateY(-10px) rotate(45deg);
    top: 20px
  }
}

@media screen and (max-width: 768px) {
  .header nav {
    opacity: 0;
    transform: translate(100vw, 0);
    transition: all .3s;
    width: 60vw;
    position: fixed;
    top: 70px;
    z-index: 1;
    right: 0;
    background: rgba(0, 0, 0, 0.8);
    display: block;
    padding: 20px 16px;
    max-height: calc(100lvh - 110px);
    overflow: scroll
  }

  .header nav .header__gnav__child {
    display: block;
    margin-left: 12vw
  }

  .header nav.is-menu-open {
    transform: translate(0, 0);
    opacity: 1
  }
}

@media screen and (max-width: 768px) {
  .header .header__gnav {
    flex-direction: column;
    padding-bottom: 75px
  }
}

.header .header__gnav li a {
  padding: 30px 20px;
  color: #fff;
  display: block;
  text-decoration: none;
  font-size: 18px
}

@media screen and (max-width: 768px) {
  .header .header__gnav li a {
    padding: 20px 8px;
    font-size: 16px;
    border-bottom: .2vw solid #fff;
    background: url("/_assets/img/share/arrow-white-right.svg") no-repeat right 2vw center/18px
  }
}

.header .header__gnav li a:hover {
  background-color: #4f0047
}

@media screen and (max-width: 768px) {
  .header .header__gnav li a:hover {
    background-color: transparent
  }
}

.header .header__gnav__child {
  display: none
}

.top {
  background: #F4F4F4
}

.top main p {
  font-size: 16px;
  line-height: 2;
  letter-spacing: .3px
}

@media screen and (max-width: 768px) {
  .top .caption-heading__link {
    margin-top: 32px
  }
}

.top .caption-heading__link a {
  display: block;
  width: 280px;
  border: 2px solid #5E0055;
  color: #333;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  padding: 16px;
  text-decoration: none;
  border-radius: 40px;
  margin: 0 auto;
  text-align: center;
  transition: all .3s;
  background: url("/_assets/img/share/arrow-right.svg") no-repeat right 15px center/16px #fff;
  line-height: 1
}

.top .caption-heading__link a:hover {
  background-color: #5E0055;
  background-image: url("/_assets/img/share/arrow-white-left.svg");
  color: #fff;
  background-image: url("/_assets/img/share/arrow-white-right.svg")
}

.top .kv {
  margin-bottom: 64px;
  position: relative
}

.top .kv h1 {
  background: url("/_assets/img/share/logo-black.svg") no-repeat center center/cover;
  font-size: 0;
  margin-bottom: 32px;
  width: 277px;
  height: 52px
}

@media screen and (max-width: 768px) {
  .top .kv h1 {
    width: 209px;
    height: 40px
  }
}

.top .kv p {
  font-size: 14px;
  line-height: 2.3;
  letter-spacing: 1px
}

.top .kv-slider__photo {
  display: flex;
  gap: 20px
}

.top .kv-slider__photo .slick-list {
  padding: 20px 50px 80px !important
}

.top .kv-slider__photo .kv-slider__photo__item {
  list-style-type: none;
  position: relative
}

.top .kv-slider__photo .kv-slider__photo__item img {
  border-radius: 16px
}

.top .kv-slider__photo .kv-slider__photo__item.item1 {
  width: 500px;
  left: -20px;
  top: 10px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__photo .kv-slider__photo__item.item1 {
    width: 335px
  }
}

.top .kv-slider__photo .kv-slider__photo__item.item2 {
  width: 500px;
  top: 65px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__photo .kv-slider__photo__item.item2 {
    width: 335px
  }
}

.top .kv-slider__photo .kv-slider__photo__item.item3 {
  left: -70px;
  width: 460px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__photo .kv-slider__photo__item.item3 {
    width: 290px
  }
}

.top .kv-slider__photo .kv-slider__photo__item.item4 {
  width: 500px;
  top: 60px;
  left: -50px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__photo .kv-slider__photo__item.item4 {
    width: 335px
  }
}

.top .kv-slider__photo .kv-slider__photo__item.item5 {
  width: 460px;
  left: -30px;
  top: 30px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__photo .kv-slider__photo__item.item5 {
    width: 290px
  }
}

.top .kv-slider__rect {
  position: absolute;
  bottom: 0;
  top: 0;
  margin: auto;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply
}

.top .kv-slider__rect .slick-track {
  display: flex;
  gap: 330px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__rect .slick-track {
    gap: 200px
  }
}

.top .kv-slider__rect .slick-list {
  height: 100%
}

.top .kv-slider__rect .kv-slider__rect__item {
  width: 138px;
  height: 120px;
  display: block;
  border-radius: 16px;
  background-color: #5E0055;
  position: relative
}

@media screen and (max-width: 768px) {
  .top .kv-slider__rect .kv-slider__rect__item {
    width: 69px;
    height: 60px
  }
}

.top .kv-slider__rect .kv-slider__rect__item.item1 {
  top: 260px;
  left: -80px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__rect .kv-slider__rect__item.item1 {
    top: 200px;
    left: -20px
  }
}

.top .kv-slider__rect .kv-slider__rect__item.item2 {
  top: 70px;
  left: -80px;
  background-color: #A94FBC
}

@media screen and (max-width: 768px) {
  .top .kv-slider__rect .kv-slider__rect__item.item2 {
    top: 80px;
    left: -20px
  }
}

.top .kv-slider__rect .kv-slider__rect__item.item3 {
  top: 240px;
  left: 0;
  background-color: #A94FBC
}

@media screen and (max-width: 768px) {
  .top .kv-slider__rect .kv-slider__rect__item.item3 {
    top: 200px
  }
}

.top .kv-slider__rect .kv-slider__rect__item.item4 {
  top: 200px;
  left: 0
}

@media screen and (max-width: 768px) {
  .top .kv-slider__rect .kv-slider__rect__item.item4 {
    top: 160px
  }
}

.top .kv-slider__rect .kv-slider__rect__item.item5 {
  top: 20px;
  left: -90px
}

@media screen and (max-width: 768px) {
  .top .kv-slider__rect .kv-slider__rect__item.item5 {
    top: 50px;
    left: -40px
  }
}

.top .company {
  position: relative;
  background: #fff;
  border-radius: 16px 0 0 16px;
  margin: 0 0 144px 82px
}

@media screen and (max-width: 768px) {
  .top .company {
    margin: 0 0 96px 16px
  }
}

.top .company:after,
.top .company:before {
  content: "";
  display: block;
  position: absolute
}

.top .company:before {
  height: 24px;
  background: #A24CB4;
  width: calc(100% - 109px);
  top: -24px;
  left: 109px;
  border-radius: 16px 0 0 0
}

@media screen and (max-width: 768px) {
  .top .company:before {
    left: 32px;
    width: calc(100% - 32px)
  }
}

.top .company:after {
  width: 100%;
  height: 100%;
  background: #5E0055;
  border-radius: 16px;
  bottom: -64px;
  left: -48px;
  z-index: 1
}

@media screen and (max-width: 768px) {
  .top .company:after {
    bottom: -32px;
    left: -32px
  }
}

.top .company .postlist {
  margin-bottom: 32px
}

.top .company .postlist .postlist__item {
  flex-basis: 265px
}

@media screen and (max-width: 768px) {
  .top .company .postlist .postlist__item {
    flex-basis: calc(50% - 8px)
  }
}

.top .company .postlist .postlist__item a {
  font-size: 18px
}

.top .company .container {
  position: relative;
  left: -41px;
  padding: 64px 56px;
  border-radius: 16px 0 0 16px;
  background: #fff
}

@media screen and (max-width: 768px) {
  .top .company .container {
    left: 0;
    padding: 32px 16px
  }
}

.top .company .company_inner {
  background: #fff;
  position: relative;
  border-radius: 16px 0 0 16px;
  z-index: 2
}

.top .company .caption-heading {
  justify-content: space-between;
  align-items: flex-end
}

.top .sustainability {
  gap: 40px;
  margin-bottom: 80px
}

@media screen and (max-width: 768px) {
  .top .sustainability {
    flex-direction: column;
    gap: 0
  }
}

.top .sustainability .caption-heading__title {
  margin-bottom: 32px
}

@media screen and (max-width: 768px) {
  .top .sustainability .caption-heading__title {
    margin-bottom: 0
  }
}

.top .sustainability .sustainability__desc {
  display: flex;
  align-items: center
}

.top .news {
  padding-bottom: 100px;
  flex-direction: column;
}
.top .news .caption-heading__link a {
  margin: 0 auto 0 0;
}

@media screen and (max-width: 768px) {
  .top .news {
    flex-direction: column;
    padding-bottom: 64px;
    gap: 0
  }
  .top .news .caption-heading__link a {
    margin: 0 auto;
  }
}

.top .news .caption-heading__title {
  margin-bottom: 32px
}

@media screen and (max-width: 768px) {
  .top .news .caption-heading__title {
    margin-bottom: 0
  }
}

.top .news .newslist {
  list-style-type: none;
  flex-grow: 1;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}


.top .news .newslist .newslist__item {
  width: calc((100% - 20px*3)/4);
}
@media screen and (max-width: 768px) {
  .top .news .newslist .newslist__item {
    width: 100%
  }
}

.top .news .newslist .newslist__item+.newslist__item {
  margin-top: 0
}

.top .news .newslist .newslist__item a {
  gap: 20px;
  box-sizing: border-box;
  width: 100%;
  border-radius: 16px;
  background: #fff;
  padding: 16px;
  display: flex;
  flex-direction: column;
  height: 100%

}

@media screen and (max-width: 768px) {
  .top .news .newslist .newslist__item a {
    flex-direction: column;
    gap: 16px;
    padding: 16px
  }
}

.top .news .newslist .newslist__item a figure {
  width: 100%
}
.top .news .newslist .newslist__item a figure img {
  width: 100%;
  aspect-ratio: 365/224;
  object-fit: contain;
}

@media screen and (max-width: 768px) {
  .top .news .newslist .newslist__item a figure {
    width: 100%
  }

  .top .news .newslist .newslist__item a figure img {
    width: 100%
  }
}

.top .news .newslist .newslist__item a .newslist__item__text {
  flex: 1
}

.top .news .newslist .newslist__item a time {
  color: #5E0055;
  font-size: 20px;
  display: block;
  margin-bottom: 12px;
  position: relative;
}

@media screen and (max-width: 768px) {
  .top .news .newslist .newslist__item a time {
    font-size: 18px
  }
}

span.tag {
  display: inline-block;
  border: 1px solid #606060;
  background: #F3F4F6;
  color: #606060;
  padding: .3em .8em;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 500;
  margin: 0 0 5px;
}
span.tag + .tag {
  margin-left: 10px;
}
span.tag.cat.shop,
span.tag.cat.purple {
  border-color: #7B52B9;
  color: #7B52B9;
  background: #F5EEFF;
}
span.tag.cat.service,
span.tag.cat.blue {
  border-color: #0A67B2;
  color: #0A67B2;
  background: #E8F3FF;
}
span.tag.cat.partner,
span.tag.cat.green {
  border-color: #008A5A;
  color: #008A5A;
  background: #EAF8F2;
}
span.tag.cat.company,
span.tag.cat.navy {
  border-color: #243B7D;
  color: #243B7D;
  background: #EBF0FF;
}
span.tag.cat.campaign,
span.tag.cat.orange {
  border-color: #D67B00;
  color: #D67B00;
  background: #FFF4E5;
}
span.tag.cat.sustainability,
span.tag.cat.lightgreen {
  border-color: #5B8C2A;
  color: #5B8C2A;
  background: #F2F8EC;
}
span.tag.cat.other,
span.tag.cat.gray {
  border-color: #606060;
  color: #606060;
  background: #F3F4F6;
}
span.tag.cat.pink {
  border-color: #D14B86;
  color: #D14B86;
  background: #FCE8EF;
}
span.tag.cat.lightblue {
  border-color: #2B9CB5;
  color: #2B9CB5;
  background: #E8F8FC;
}
span.tag.cat.yellow {
  border-color: #B88B00;
  color: #B88B00;
  background: #FFF7DA;
}
span.tag.cat.red {
  border-color: #C46B4D;
  color: #C46B4D;
  background: #F8E7DF;
}
span.tag.cat.brown {
  border-color: #8A6137;
  color: #8A6137;
  background: #F5EBDD;
}
span.tag.hash {
  border-color: #D9D9D9;
  background: #fff;
  color: #606060;
  margin-bottom: 0;
}
span.tag.year {
  border-color: #5E0055;
  background: #FBEBF9;
  color: #5E0055;
  margin-bottom: 0;
}
.newslist .newslist__item a .new,
.news .postlist .postlist__item .new,
.news .news-content__meta .new {
  display: inline-block;
  border: 1px solid #D64A4A;
  background: #FFE8E8;
  color: #D64A4A;
  padding: .3em .8em;
  border-radius: 5px;
  font-size: 16px;
  font-weight: 700;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.news .postlist .postlist__item .new ,
.news .news-content__meta .new {
  position: relative;
  right: unset;
  top: unset;
  transform: translateY(0);
}
.news .news-content__meta .tag {
  margin: 0;
}


.top .news .newslist .newslist__item a h3 {
  font-size: 16px;
  line-height: 2;
  color: #333;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

@media screen and (max-width: 768px) {
  .top .news .newslist .newslist__item a h3 {
    font-size: 14px
  }
}

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  list-style: none;
  margin: 80px 0 0;
}
/* .pagination .link_page,
.pagination .current_page {
  min-height: 24px;
  text-align: center;
} */
.pagination .link_page,
.pagination .current_page {
  width: 24px;
  text-align: center;
  font-size: 16px;
  line-height: 1.4em;
  font-weight: 700;
  color: #333;
  transition: .3s;
}
.pagination .link_page:hover {
  color: #5E0055;
}
.pagination .current_page {
  color: #D9D9D9;
}

.pagination .link_before,
.pagination .link_next {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 43px;
  height: 43px;
  border-radius: 43px;
  border: 2px solid #5E0055;
  position: relative;
  transition: .3s;
  text-indent: -9999999px;
}
.pagination .link_before:before,
.pagination .link_next:before {
  content: '';
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #5E0055;
  border-left: 2px solid #5E0055;
  transform: rotate(-45deg);
  position: relative;
  left: 2px;
  transition: .3s;
}
.pagination .link_next:before {
  transform: rotate(135deg);
  position: relative;
  left: -2px;
}
.pagination .link_before:hover,
.pagination .link_next:hover {
  background: #5E0055;
}
.pagination .link_before:hover:before,
.pagination .link_next:hover:before {
  border-color: #fff;
}
.pagination .link_before.disabled,
.pagination .link_next.disabled,
.pagination .link_before.disabled:before,
.pagination .link_next.disabled:before {
  pointer-events: none;
  border-color: #D9D9D9;
}

.news .postlist {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 32px
}

@media screen and (max-width: 768px) {
  .news .postlist {
    gap: 32px 0
  }
}

.news .post_sub_title {
  font-size: 22px;
  line-height: 1.6em;
  font-weight: 500;
  margin: 0 0 25px;
}
.news .post_sub_title span {
  font-weight: 600;
}
.news .sub_menu {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0 0 40px;
}
.news .sub_menu .menu {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 16px 16px 0 16px;
  border-bottom: 1px solid #D9D9D9;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .news .sub_menu .menu {
    padding: 10px 0 0 10px;
  }
}
.news .sub_menu .menu h2 {
  font-size: 16px;
  font-weight: 700;
  width: 6em;
  padding: 0 0 16px;
}
.news .sub_menu .menu ul {
  list-style: none;
  margin: 0;
  padding: 0 0 16px;
  width: calc(100% - 6em);
  overflow: auto;
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
}
@media screen and (max-width: 768px) {
  .news .sub_menu .menu ul {
    gap: 8px;
    margin-right: calc(50% - 50vw);
  }
  .news .sub_menu .menu ul.no_scroll {
    flex-wrap: wrap;
  }
}
.news .sub_menu .menu ul li {
  white-space: nowrap;
}
.news .sub_menu .menu ul li .tag {
  margin: 0!important;
}

.news .postlist .postlist__item {
  flex-basis: 365px
}

@media screen and (max-width: 768px) {
  .news .postlist .postlist__item {
    flex-basis: 100%
  }
}

.news .postlist .postlist__item .postlist__item__thumbnail {
  margin-bottom: 16px
}

.news .postlist .postlist__item .postlist__item__thumbnail a {
  display: block
}

.news .postlist .postlist__item .postlist__item__thumbnail a img {
  width: 100%;
  height: 224px;
  object-fit: contain
}

@media screen and (max-width: 768px) {
  .news .postlist .postlist__item .postlist__item__thumbnail a img {
    /* height: auto; */
    width: 100%
  }
}

.news .postlist .postlist__item .tag_list {
  list-style: none;
  padding: 0;
  margin: 8px 0 0 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 8px;
}

.news .postlist .postlist__item .postlist__item__header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  min-height: 28px;
}

.news .postlist .postlist__item h2 {
  font-size: 18px;
  font-weight: 700;
  line-height: 36px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

@media screen and (max-width: 768px) {
  .news .postlist .postlist__item h2 {
    font-size: 16px;
    line-height: 32px
  }
}

.news .postlist .postlist__item h2 a {
  text-decoration: none;
  color: #333
}

.settlement .postlist__item {
  padding: 16px;
  border-bottom: 1px solid #dfdfdf;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6
}

.settlement .postlist__item:last-child {
  border-bottom: none
}

.settlement .postlist__item .date {
  display: block;
  letter-spacing: 1.2px
}

.settlement .postlist__item h3 a {
  color: #333;
  letter-spacing: 1.2px
}

.single .breadcrumb {
  padding-bottom: 0
}

.single .page-main {
  max-width: 920px
}

@media screen and (max-width: 768px) {
  .single .page-main {
    padding-top: 32px !important
  }
}

.single .page-main .news-content__thumbnail {
  margin-bottom: 32px
}

.single .page-main .news-content__meta {
  align-items: center;
  margin-bottom: 16px;
  gap: 24px
}

@media screen and (max-width: 768px) {
  .single .page-main .news-content__meta .date {
    font-size: 20px
  }

  .single .page-main .news-content__meta .category {
    font-size: 16px
  }
}

.single .page-main .news-content__ttl {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 32px;
  letter-spacing: .7px
}

.single .page-main .news-content__main h2 {
  font-size: 28px;
  color: #5E0055;
  margin: 64px 0 24px;
  font-weight: bold;
  line-height: 1.6
}
.single .page-main .news-content__main .point-box__inner h2 {
  margin: 32px 0 24px
}

@media screen and (max-width: 768px) {
  .single .page-main .news-content__main h2 {
    margin: 32px 0 24px
  }
}

.single .page-main .news-content__main h3 {
  font-size: 24px;
  font-weight: bold;
  margin: 32px 0 24px;
  line-height: 1.6;
  color: #5E0055
}

.single .page-main .news-content__main figure,
.single .page-main .news-content__main .img-wrap {
  margin: 32px 0
}
.single .page-main .news-content__main figure .img-wrap,
.single .page-main .news-content__main table .img-wrap {
  margin: 0
}

.single .page-main .news-content__main dl+dl {
  margin-top: 8px
}

.single .page-main .news-content__main dl dd,
.single .page-main .news-content__main dl dt {
  font-size: 16px;
  line-height: 1.8
}

.single .page-main .news-content__main dl dt {
  width: 140px
}

.single .page-main .news-content__main dl dd {
  flex: 1
}

@media screen and (max-width: 768px) {
  .single .page-main .news-content__main dl dd {
    word-break: break-all
  }
}

.single .page-main .news-content__main ul {
  margin: 24px 0 32px 16px
}

.single .page-main .news-content__main ul li {
  line-height: 1.8
}

.single .page-main .news-content__main ul li+li {
  margin-top: 16px
}

.single .page-main .news-content__main ul.notice-list {
  margin: 16px 0
}

.single .page-main .news-content__main ul.notice-list li {
  list-style-type: none;
  font-size: 14px;
  line-height: 1.8;
  color: #707070
}

.single .page-main .news-content__main ul.notice-list li+li {
  margin-top: 0
}

.single .page-main .news-content__main sup {
  font-size: 10px;
  vertical-align: top
}

.single .page-main .news-content__main table {
  width: 100%;
  border-collapse: collapse;
  word-break: break-all
}
.single .page-main .news-content__main table.default * {
  box-sizing: content-box!important;
}

.single .page-main .news-content__main table tr {
  border-bottom: 1px solid #a4a4a4
}

.single .page-main .news-content__main table tr:last-child {
  border-bottom: none
}

.single .page-main .news-content__main table th,
.single .page-main .news-content__main table td {
  font-size: 16px;
  line-height: 2;
  vertical-align: middle;
  padding: 16px
}

.single .page-main .news-content__main table th.__bold,
.single .page-main .news-content__main table td.__bold {
  font-weight: bold
}

.single .page-main .news-content__main table th.__bg-gray,
.single .page-main .news-content__main table td.__bg-gray {
  background: #f4f4f4
}

.single .page-main .news-content__main table th {
  background: #5E0055;
  width: 210px;
  text-align: left;
  color: #fff;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .single .page-main .news-content__main table th {
    width: 120px
  }
}

.single .page-main .news-content__main table .t-header {
  border-bottom: none;
}
.single .page-main .news-content__main table .t-header th,
.single .page-main .news-content__main table .t-header td {
  border-right: 1px solid #a4a4a4;
  vertical-align: middle;
}

.single .page-main .news-content__main table td {
  border-right: 1px solid #a4a4a4;
  vertical-align: middle;
}

/* .single .page-main .news-content__main table td:last-child {
  border-right: none
} */

.single .page-main .news-content__main table thead th {
  border-right: 1px solid #a4a4a4
}

/* .single .page-main .news-content__main table thead th:last-child {
  border-right: none
} */

.single .page-main .news-content__main p {
  font-size: 16px;
  line-height: 2;
  font-weight: 500
}

@media screen and (max-width: 768px) {
  .single .page-main .news-content__main p {
    word-break: break-all;
    word-wrap: break-word
  }
}

.single .page-main .news-content__main p.pdf {
  margin-top: 2em;
}

.single .page-main .news-content__main p.alignright {
  text-align: right
}

.single .page-main .news-content__main p+p {
  margin-top: 24px
}

.single .page-main .news-content__main .center {
  text-align: center
}

.single .page-main .news-content__main .dl__wrap {
  margin: 32px 0
}

.single .page-main .news-content__main .dl__wrap.__xsmall dl dt {
  width: 40px
}

.single .page-main .news-content__main .dl__wrap.__small dl dt {
  width: 90px
}

.single .page-main .news-content__main .dl__wrap.__large dl dt {
  width: 160px
}

.single .page-main .news-content__main .notice__text {
  color: #707070;
  font-size: 14px
}

.single .page-main .news-content__main .link__text,
.single .page-main .news-content__main a {
  color: #A94FBC;
  text-decoration: underline
}

.single .page-main .news-content__main .link__text:hover,
.single .page-main .news-content__main a:hover {
  text-decoration: none
}

.single .page-main .news-content__main .table-wrap {
  overflow: hidden;
  border: 1px solid #a4a4a4;
  border-right: none;
  border-radius: 4px;
  margin: 32px 0
}

.single .page-main .news-content__main .border-box {
  max-width: 640px;
  margin: 24px auto 32px;
  border: 2px solid #a4a4a4;
  padding: 16px 24px;
  border-radius: 4px
}

.single .page-main .news-content__main .border-box .border-box__title {
  text-align: center;
  color: #333;
  font-size: 20px;
  line-height: 1.8;
  margin: 0 0 16px
}

.single .page-main .news-content__main .border-box p+p {
  margin-top: 16px
}

.single .page-main .news-content__main .point-box {
  border: 1px solid #a4a4a4;
  border-radius: 4px;
  overflow: hidden;
  margin: 32px 0
}

.single .page-main .news-content__main .point-box .point-box__title {
  background: #5E0055;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  padding: 11px 16px;
  line-height: 1.6;
  margin: 0
}

.single .page-main .news-content__main .point-box .point-box__subtitle {
  font-size: 20px;
  line-height: 1.6;
  font-weight: bold;
  margin: 16px 0 16px 0
}

.single .page-main .news-content__main .point-box .point-box__inner {
  padding: 16px;
  word-wrap: break-word
}

.single .page-main .news-content__main .point-box .point-box__inner ul {
  margin: 0 0 0 16px
}

.single .page-main .news-content__main .point-box .point-box__inner ul.notice-list {
  margin: 16px 0 16px 0
}

.single .page-main .news-content__main .point-box .point-box__inner ul+* {
  margin-top: 24px
}

.single .page-main .news-content__main .link__button {
  display: block;
  width: 160px;
  border: 2px solid #5E0055;
  color: #333;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  padding: 16px;
  text-decoration: none;
  border-radius: 40px;
  margin: 0 auto;
  text-align: center;
  transition: all .3s;
  background: url("/_assets/img/share/arrow-right.svg") no-repeat right 15px center/16px #fff;
  line-height: 1;
  box-sizing: border-box;
  font-size: 14px;
  padding: 12px
}

.single .page-main .news-content__main .link__button:hover {
  background-color: #5E0055;
  background-image: url("/_assets/img/share/arrow-white-left.svg");
  color: #fff;
  background-image: url("/_assets/img/share/arrow-white-right.svg")
}

.single .page-main .news-content__main .link__button.__right {
  margin: 24px 0 0 auto
}

.single .page-main .news-content__main .link__button.__left {
  margin: 24px auto 0 0
}

.company .postlist {
  display: flex;
  gap: 32px;
  flex-wrap: wrap
}

@media screen and (max-width: 768px) {
  .company .postlist {
    gap: 16px
  }
}

.company .postlist .postlist__item {
  flex-basis: 365px
}

@media screen and (max-width: 768px) {
  .company .postlist .postlist__item {
    flex-basis: calc(50% - 8px)
  }
}

.company .postlist .postlist__item a {
  border: 1px solid #a4a4a4;
  height: 125px;
  display: flex;
  align-items: center;
  border-radius: 8px;
  justify-content: center;
  color: #333;
  flex-direction: column;
  text-align: center;
  gap: 16px;
  font-size: 18px;
  transition: all .3s;
  position: relative
}

@media screen and (max-width: 768px) {
  .company .postlist .postlist__item a {
    height: 113px
  }
}

.company .postlist .postlist__item a:after {
  content: "";
  height: 3px;
  background: #5E0055;
  width: 121px;
  display: block;
  position: absolute;
  bottom: auto;
  top: -1px;
  left: 0;
  right: 0;
  margin: auto;
  transition: all .3s
}

@media screen and (max-width: 768px) {
  .company .postlist .postlist__item a:after {
    width: 56px
  }
}

.company .postlist .postlist__item a span {
  font-weight: 500;
  font-size: 14px;
  display: block;
  color: #5E0055;
  transition: all .3s
}

.company .postlist .postlist__item a:hover {
  background-color: #5E0055;
  border-color: #5E0055;
  color: #fff
}

.company .postlist .postlist__item a:hover:after {
  background-color: #fff
}

.company .postlist .postlist__item a:hover span {
  color: #fff
}

.message .page-main .container {
  max-width: 920px
}

.message .page-main p {
  font-size: 16px;
  line-height: 2;
  letter-spacing: .3px
}

.message .page-main p+p {
  margin-top: 16px
}

.message .page-main .message__signature {
  font-size: 30px;
  font-weight: 500;
  font-family: "Noto Serif JP";
  line-height: 1;
  max-width: 170px;
  margin: 32px 0 0 auto
}

.message .page-main .message__signature span {
  letter-spacing: 1px;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 16px;
  display: block
}

.message .page-main .message__signature img {
  max-width: 162px
}

.message .page-main .message-kv {
  background: url("../img/message/message-top-img.png") no-repeat left top/cover;
  padding: 32px 40px;
  margin-bottom: 32px
}

@media screen and (max-width: 768px) {
  .message .page-main .message-kv {
    padding: 36px 18px 38px;
    margin-left: -16px;
    width: calc(100% - 4px);
    background: url("../img/message/message-top-img-sp.png") no-repeat left top/cover
  }
}

.message .page-main .message-kv h2 {
  font-size: 38px;
  font-weight: 700;
  font-family: "Noto Serif JP";
  line-height: 1.52;
  letter-spacing: 1.8px;
  margin-bottom: 78px;
}

@media screen and (max-width: 768px) {
  .message .page-main .message-kv h2 {
    margin-bottom: 62px;
    font-size: 21px
  }
}

.message .page-main .message-kv h2 span {
  margin-top: 12px;
  display: block;
  font-size: 18px;
  font-family: "EB Garamond";
  letter-spacing: 0;
  font-weight: 600;
  line-height: 1.4
}

@media screen and (max-width: 768px) {
  .message .page-main .message-kv h2 span {
    font-size: 12px
  }
}

.message .page-main .message-kv p {
  font-family: "Noto Serif JP";
  line-height: 1.5;
  font-weight: bold;
  letter-spacing: 1px
}

@media screen and (max-width: 768px) {
  .message .page-main .message-kv p {
    font-size: 12px
  }
}

.message .page-main .message-kv p span {
  font-size: 26px;
  display: block
}

@media screen and (max-width: 768px) {
  .message .page-main .message-kv p span {
    font-size: 20px
  }
}

.message .directors {
  margin: 80px 0 0;
  padding: 80px 0;
  background: #F4F4F4
}

@media screen and (max-width: 768px) {
  .message .directors {
    margin-top: 64px;
    padding: 64px 0
  }
}

.message .directors .directors-list {
  display: flex;
  flex-wrap: wrap;
  gap: 32px
}

@media screen and (max-width: 768px) {
  .message .directors .directors-list {
    flex-direction: column;
    gap: 20px
  }
}

.message .directors .directors-list .directors-list__item {
  flex: 0 0 364px;
  padding: 40px;
  background: #fff;
  border-radius: 8px;
  display: flex;
  gap: 24px
}

@media screen and (max-width: 768px) {
  .message .directors .directors-list .directors-list__item {
    padding: 24px;
    flex: 0 0 100%;
    gap: 20px
  }
}

.message .directors .directors-list .directors-list__item figure {
  width: 134px
}

@media screen and (max-width: 768px) {
  .message .directors .directors-list .directors-list__item figure {
    width: 100px
  }
}

.message .directors .directors-list .directors-list__item .directors-list__item__text {
  flex: 1
}

.message .directors .directors-list .directors-list__item .directors-list__item__text .position {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 1.2px;
  margin-bottom: 24px
}

@media screen and (max-width: 768px) {
  .message .directors .directors-list .directors-list__item .directors-list__item__text .position {
    font-size: 20px;
    margin-bottom: 16px
  }
}

.message .directors .directors-list .directors-list__item .directors-list__item__text .position span {
  display: block;
  font-size: 13px;
  color: #5E0055;
  margin-bottom: 24px
}

@media screen and (max-width: 768px) {
  .message .directors .directors-list .directors-list__item .directors-list__item__text .position span {
    font-size: 12px;
    margin-bottom: 16px
  }
}

.message .directors .directors-list .directors-list__item .directors-list__item__text p {
  font-size: 13px;
  line-height: 2;
  letter-spacing: .2px
}

@media screen and (max-width: 768px) {
  .message .directors .directors-list .directors-list__item .directors-list__item__text p {
    font-size: 12px
  }
}

.vision .page-main {
  max-width: 920px
}

.vision .vision-wrap__item {
  list-style-type: none;
  padding-top: 48px;
  border-top: 1px solid #dfdfdf
}

.vision .vision-wrap__item:nth-of-type(1) {
  border-top: none;
  padding-top: 0
}

.vision .vision-wrap__item+.vision-wrap__item {
  margin-top: 40px
}

.vision .vision-wrap__item h2 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 32px;
  display: flex;
  align-items: center;
  gap: 24px
}

@media screen and (max-width: 768px) {
  .vision .vision-wrap__item h2 {
    flex-direction: column;
    align-items: flex-start;
    line-height: 1.8
  }
}

.vision .vision-wrap__item h2 span {
  position: relative;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  display: block;
  text-align: center;
  padding: 6px 16px;
  background: #662053;
  border-left: 8px solid #A93D91;
  border-radius: 8px 8px 0 8px
}

.vision .vision-wrap__item h2 span:after,
.vision .vision-wrap__item h2 span:before {
  content: "";
  display: block;
  position: absolute
}

.vision .vision-wrap__item h2 span:after {
  background: #8A4496;
  height: calc(100% + 8px);
  width: calc(100% + 8px);
  z-index: -1;
  top: -8px;
  right: -8px;
  border-radius: 8px 8px 8px 0
}

.vision .vision-wrap__item h2 span:before {
  background: #CB4A95;
  height: 8px;
  width: 100%;
  bottom: -8px;
  left: 0;
  border-radius: 0 0 10px 10px
}

.vision .vision-wrap__item .vision-wrap__text {
  font-size: 32px;
  font-weight: 700;
  line-height: 2
}

@media screen and (max-width: 768px) {
  .vision .vision-wrap__item .vision-wrap__text {
    font-size: 24px
  }
}

.vision .vision-wrap__item .vision-wrap__text+.vision-wrap__text {
  margin-top: 32px
}

.vision .vision-wrap__item .vision-wrap__text .vision-wrap__text__ttl {
  font-size: 18px;
  margin-bottom: 16px;
  display: block
}

.vision .about-logo {
  margin-top: 80px
}

@media screen and (max-width: 768px) {
  .vision .about-logo {
    margin-top: 64px
  }
}

.vision .about-logo .col {
  gap: 40px;
  align-items: center
}

@media screen and (max-width: 768px) {
  .vision .about-logo .col {
    flex-direction: column
  }
}

.vision .about-logo .col figure {
  width: 240px
}

@media screen and (max-width: 768px) {
  .vision .about-logo .col figure {
    width: 200px
  }
}

.vision .about-logo .col .about-logo__text {
  flex: 1
}

.vision .about-logo .col .about-logo__text h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 32px
}

.vision .about-logo .col .about-logo__text p {
  font-size: 18px;
  line-height: 2;
  font-weight: 500
}

.profile .page-main {
  max-width: 920px
}

.profile .corporate-data__table table tr {
  border-bottom: 1px solid #dfdfdf
}

.profile .corporate-data__table table tr th,
.profile .corporate-data__table table tr td {
  font-size: 16px;
  padding: 12px 20px;
  text-align: left;
  line-height: 1.6
}

@media screen and (max-width: 768px) {

  .profile .corporate-data__table table tr th,
  .profile .corporate-data__table table tr td {
    padding: 12px 8px
  }
}

.profile .corporate-data__table table tr th {
  width: 280px;
  color: #5E0055
}

@media screen and (max-width: 768px) {
  .profile .corporate-data__table table tr th {
    width: 72px
  }
}

.profile .corporate-data__table table tr td {
  font-weight: 400
}

.profile .corporate-data__table table tr td p+p {
  margin-top: 12px
}

.profile .corporate-data__table table tr td strong {
  display: block;
  font-weight: 600
}

.profile .directors {
  padding: 80px 0 0
}

@media screen and (max-width: 768px) {
  .profile .directors {
    padding: 64px 0 0
  }
}

.profile .directors .container {
  width: 100%
}

@media screen and (max-width: 768px) {
  .profile .directors .container {
    padding: 0
  }
}

.profile .directors .directors-list {
  display: flex;
  flex-wrap: wrap;
  gap: 32px
}

@media screen and (max-width: 768px) {
  .profile .directors .directors-list {
    flex-direction: column;
    gap: 20px
  }
}

.profile .directors .directors-list .directors-list__item {
  flex: 0 0 444px;
  padding: 40px;
  background: #fff;
  border-radius: 8px;
  display: flex;
  box-sizing: border-box;
  border: 2px solid #700A4F;
  gap: 24px
}

@media screen and (max-width: 768px) {
  .profile .directors .directors-list .directors-list__item {
    padding: 24px;
    flex: 0 0 100%;
    gap: 20px
  }
}

.profile .directors .directors-list .directors-list__item figure {
  width: 134px
}

@media screen and (max-width: 768px) {
  .profile .directors .directors-list .directors-list__item figure {
    width: 100px
  }
}

.profile .directors .directors-list .directors-list__item .directors-list__item__text {
  flex: 1
}

.profile .directors .directors-list .directors-list__item .directors-list__item__text .position {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 1.2px;
  margin-bottom: 24px
}

@media screen and (max-width: 768px) {
  .profile .directors .directors-list .directors-list__item .directors-list__item__text .position {
    font-size: 20px;
    margin-bottom: 16px
  }
}

.profile .directors .directors-list .directors-list__item .directors-list__item__text .position span {
  display: block;
  font-size: 13px;
  color: #5E0055;
  margin-bottom: 24px
}

@media screen and (max-width: 768px) {
  .profile .directors .directors-list .directors-list__item .directors-list__item__text .position span {
    font-size: 12px;
    margin-bottom: 16px
  }
}

.profile .directors .directors-list .directors-list__item .directors-list__item__text p {
  font-size: 13px;
  line-height: 2;
  letter-spacing: .2px
}

@media screen and (max-width: 768px) {
  .profile .directors .directors-list .directors-list__item .directors-list__item__text p {
    font-size: 12px
  }
}

.profile .chart {
  margin: 80px 0
}

@media screen and (max-width: 768px) {
  .profile .chart {
    margin: 64px 0
  }
}

.profile .chart img {
  margin: 0 auto;
  display: block
}

@media screen and (max-width: 768px) {
  .profile .chart img {
    max-width: 300px
  }
}

.profile .locations .location-list {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 32px
}

@media screen and (max-width: 768px) {
  .profile .locations .location-list {
    flex-direction: column;
    gap: 32px 0
  }
}

.profile .locations .location-list .location-list__item {
  list-style-type: none;
  flex-basis: calc(50% - 16px)
}

.profile .locations .location-list .location-list__item figure {
  margin-bottom: 16px
}

@media screen and (max-width: 768px) {
  .profile .locations .location-list .location-list__item figure {
    margin-bottom: 8px
  }
}

.profile .locations .location-list .location-list__item .location-list__item__name {
  text-align: center;
  font-size: 18px
}

@media screen and (max-width: 768px) {
  .profile .locations .location-list .location-list__item .location-list__item__name {
    font-size: 16px
  }
}

.history .page-main {
  max-width: 920px
}

.history .history-list {
  padding: 0 16px;
  margin-bottom: 80px
}

@media screen and (max-width: 768px) {
  .history .history-list {
    padding: 0;
    margin-bottom: 64px
  }
}

.history .history-list .history-list__item {
  display: flex;
  gap: 16px
}

@media screen and (max-width: 768px) {
  .history .history-list .history-list__item {
    flex-wrap: wrap
  }
}

.history .history-list .history-list__item+.history-list__item {
  margin-top: 32px;
  padding-top: 32px;
  border-top: 1px solid #dfdfdf
}

.history .history-list .history-list__item h3 {
  font-size: 20px;
  line-height: 1.6;
  width: 70px
}

@media screen and (max-width: 768px) {
  .history .history-list .history-list__item h3 {
    font-size: 17px;
    width: 60px
  }
}

.history .history-list .history-list__item .history-list__item__text {
  flex: 1
}

.history .history-list .history-list__item .history-list__item__text h4 {
  font-size: 20px;
  margin-bottom: 16px;
  line-height: 1.6
}

@media screen and (max-width: 768px) {
  .history .history-list .history-list__item .history-list__item__text h4 {
    font-size: 17px
  }
}

.history .history-list .history-list__item .history-list__item__text p {
  font-size: 16px;
  line-height: 1.6
}

@media screen and (max-width: 768px) {
  .history .history-list .history-list__item .history-list__item__text p {
    margin-left: -76px
  }
}

.history .history-list .history-list__item .history-list__item__text p+p {
  margin-top: 16px
}

.history .history-list .history-list__item .history-list__item__text p strong {
  font-size: 20px
}

@media screen and (max-width: 768px) {
  .history .history-list .history-list__item .history-list__item__text p strong {
    font-size: 17px;
    display: block;
    width: calc(100% - 76px);
    position: relative;
    left: 76px
  }
}

.history .history-list .history-list__item.flex-wrap {
  flex-wrap: wrap;
}

.history .history-list .history-list__item figure {
  width: 240px
}

.history .history-list .history-list__item figure img {
  margin: 0 auto;
  display: block
}

.history .history-list .history-list__item figure img+img {
  margin-top: 8px
}

.history .history-list .history-list__item figure.medium {
  width: 340px;
}

.history .history-list .history-list__item figure.large {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.history .history-list .history-list__item figure.large img {
  margin-right: 0;
  margin-left: 0;
}

@media screen and (min-width: 769px) {
  .history .history-list .history-list__item figure.large .sp {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .history .history-list .history-list__item figure {
    width: 100%
  }

  .history .history-list .history-list__item figure img {
    max-width: 240px
  }

  .history .history-list .history-list__item figure.medium img {
    max-width: 315px;
  }

  .history .history-list .history-list__item figure.large img {
    max-width: 315px;
  }

  .history .history-list .history-list__item figure.large .pc {
    display: none;
  }

  .history .history-list .history-list__item figure.large .sp {
    display: block;
  }
}

.history .history-list .history-list__item figure figcaption {
  font-size: 14px;
  margin-top: 4px;
  line-height: 1.4
}

.sitemap .page-main .col {
  gap: 40px
}

@media screen and (max-width: 768px) {
  .sitemap .page-main .col {
    flex-direction: column
  }
}

.sitemap .sitemap-list {
  flex: 1
}

.sitemap .sitemap-list .sitemap-list__item {
  list-style-type: none
}

.sitemap .sitemap-list .sitemap-list__item+.sitemap-list__item {
  margin-top: 32px
}

.sitemap .sitemap-list .sitemap-list__item a {
  display: block;
  color: #333;
  font-size: 18px;
  padding: 20px 32px 20px 16px;
  cursor: pointer;
  background: url("/_assets/img/share/arrow-right-red.svg") no-repeat right 16px center/16px;
  border-bottom: 1px solid #dfdfdf
}

.sitemap .sitemap-list .sitemap-list__item a:hover {
  opacity: .9
}

.sitemap .sitemap-list .sitemap-list__item .sitemap-list__child {
  margin-left: 40px
}

.sitemap .sitemap-list .sitemap-list__item .sitemap-list__child li {
  list-style-type: none
}

.businessportfolio .page-main .container {
  max-width: 920px;
  margin: 0 auto
}

.businessportfolio .page-main .container p {
  font-size: 16px;
  line-height: 2;
  letter-spacing: .3px
}

.businessportfolio .page-main .portfolio-section {
  margin-top: 80px;
  border-top: 1px solid #dfdfdf;
  padding-top: 80px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .portfolio-section {
    padding-top: 40px;
    margin-top: 40px
  }
}

.businessportfolio .page-main .portfolio-section h2 {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 40px;
  text-align: center
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .portfolio-section h2 {
    font-size: 24px
  }
}

.businessportfolio .page-main .portfolio-section h2 span {
  font-size: 24px;
  display: block;
  margin-top: 32px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .portfolio-section h2 span {
    font-size: 20px
  }
}

.businessportfolio .page-main .lead-area .lead-area__title {
  font-size: 32px;
  line-height: 1.8;
  margin: 80px 0 32px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .lead-area .lead-area__title {
    margin: 40px 0 32px;
    font-size: 24px
  }
}

.businessportfolio .page-main .lead-area .lead-area__text {
  font-size: 18px;
  margin-bottom: 32px;
  font-weight: 500;
  line-height: 2
}

.businessportfolio .page-main .lead-area .anchor-list {
  gap: 16px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .lead-area .anchor-list {
    flex-direction: column
  }
}

.businessportfolio .page-main .lead-area .anchor-list li {
  list-style-type: none;
  flex: 1
}

.businessportfolio .page-main .lead-area .anchor-list li a {
  display: block;
  color: #333;
  font-size: 13px;
  font-weight: bold;
  border: 1px solid #a4a4a4;
  padding: 16px 4px 32px;
  text-align: center;
  border-radius: 8px;
  background: url("/_assets/img/share/arrow-bottom.svg") no-repeat center bottom 8px/16px;
  transition: .3s
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .lead-area .anchor-list li a {
    font-size: 16px
  }
}

.businessportfolio .page-main .lead-area .anchor-list li a:hover {
  background: url("/_assets/img/share/arrow-bottom-white.svg") no-repeat center bottom 8px/16px #5E0055;
  color: #fff;
  border-color: #5E0055
}

.businessportfolio .page-main #value h3 {
  font-size: 24px;
  margin-bottom: 32px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #value h3 {
    font-size: 20px;
    margin-bottom: 16px
  }
}

.businessportfolio .page-main .value-wrap {
  gap: 32px;
  margin-bottom: 32px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .value-wrap {
    flex-direction: column
  }
}

.businessportfolio .page-main .value-wrap figure {
  width: 388px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .value-wrap figure {
    order: 2;
    width: 100%
  }
}

.businessportfolio .page-main .value-wrap .value-wrap__text {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main .value-wrap .value-wrap__text {
    order: 1
  }
}

.businessportfolio .page-main #strategy figure {
  max-width: 673px;
  margin: 0 auto 32px
}

.businessportfolio .page-main #business {
  border-top: none;
  padding-bottom: 80px;
  background: #F4F4F4
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #business {
    padding-bottom: 40px
  }

  .businessportfolio .page-main #business .business-desc {
    margin-bottom: 32px
  }

  .businessportfolio .page-main #business .business-desc .business-desc__item {
    list-style-type: none
  }

  .businessportfolio .page-main #business .business-desc .business-desc__item+.business-desc__item {
    margin-top: 32px
  }

  .businessportfolio .page-main #business .business-desc .business-desc__item h3 {
    font-size: 20px;
    margin-bottom: 16px
  }
}

.businessportfolio .page-main #business picture img {
  max-width: 628px;
  display: block;
  margin: 0 auto 32px
}

.businessportfolio .page-main #business .container + .container {
  margin-top: 70px;
  padding-top: 70px;
  border-top: 1px solid #dfdfdf
}
@media screen and (max-width: 768px) {
  .businessportfolio .page-main #business .container + .container {
    margin: 36px 16px 0;
    padding: 36px 0 0;
    width: calc(100% - 32px);
  }
}
.businessportfolio .page-main #business .container.card p,
.businessportfolio .page-main #business .container.franchise p,
.businessportfolio .page-main #business .container.financial > p{
  text-align: center;
  margin-bottom: 32px;
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #business .container.card h2,
  .businessportfolio .page-main #business .container.franchise h2,
  .businessportfolio .page-main #business .container.financial h2{
    text-align: left;
    font-size: 20px;
    margin-bottom: 22px;
  }

  .businessportfolio .page-main #business .container.card p,
  .businessportfolio .page-main #business .container.franchise p,
  .businessportfolio .page-main #business .container.financial > p{
    text-align: left;
    margin-bottom: 17px;
  }
}
.businessportfolio .page-main #business .card picture{
  margin:0 -20px ;
  display: block;
}
.businessportfolio .page-main #business .card picture img{
  max-width: 950px;
  display: block;
  margin: 0 auto 32px
}
.businessportfolio .page-main #business .franchise picture img{
  max-width: 920px;
  display: block;
  margin: 0 auto 32px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #business .card picture{
    margin:0 ;
  }
  .businessportfolio .page-main #business picture img,
  .businessportfolio .page-main #business .card picture img,
  .businessportfolio .page-main #business .franchise picture img {
    max-width: 100%
  }
}
.businessportfolio .page-main #business .financial .society-list {
  gap: 24px;
  flex-wrap: wrap
}

.businessportfolio .page-main #business .financial .society-list .society-list__item {
  flex-basis: 290px;
  list-style-type: none;
  box-sizing: border-box;
  background: #fff;
  padding: 24px;
  border-radius: 8px
}

.businessportfolio .page-main #business .financial .society-list .society-list__item figure{
  margin-bottom: 28px;
}
.businessportfolio .page-main #business .financial .society-list .society-list__item h3{
  font-size: 18px;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #business .financial .society-list .society-list__item {
    flex-basis: 100%
  }
}

.businessportfolio .page-main #about-logo {
  padding-top: 80px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #about-logo {
    padding-top: 64px
  }
}
.businessportfolio .page-main #about-logo .logo{
  max-width: 240px;
  margin: 0 auto 45px;
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #about-logo .logo{
    max-width: 53.35%;
    margin: 0 auto 38px;
  }
}
.businessportfolio .page-main #about-logo h3{
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 40px;
}
.businessportfolio .page-main #about-logo p{
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #about-logo p{
    margin-bottom: 32px;
  }
}

.businessportfolio .page-main #about-logo .col {
  gap: 40px;
  align-items: center
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #about-logo .col {
    flex-direction: column
  }
}

.businessportfolio .page-main #about-logo .col figure {
  width: 240px
}

@media screen and (max-width: 768px) {
  .businessportfolio .page-main #about-logo .col figure {
    width: 200px
  }
}

.businessportfolio .page-main #about-logo .col .about-logo__text {
  flex: 1
}

.businessportfolio .page-main #about-logo .col .about-logo__text h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 32px
}

.businessportfolio .page-main #about-logo .col .about-logo__text p {
  font-size: 18px;
  line-height: 2;
  font-weight: 500
}

.strategy .page-main p {
  font-size: 16px;
  line-height: 2
}

.strategy .page-main p+p {
  margin-top: 32px
}

.strategy .page-main .anchor-list {
  gap: 16px;
  margin: 80px 0
}

@media screen and (max-width: 768px) {
  .strategy .page-main .anchor-list {
    flex-direction: column;
    margin: 64px 0
  }
}

.strategy .page-main .anchor-list li {
  list-style-type: none;
  flex: 1
}

.strategy .page-main .anchor-list li a {
  display: block;
  color: #333;
  font-size: 13px;
  font-weight: bold;
  border: 1px solid #a4a4a4;
  padding: 16px 4px 32px;
  text-align: center;
  border-radius: 8px;
  background: url("/_assets/img/share/arrow-bottom.svg") no-repeat center bottom 8px/16px;
  transition: .3s
}

@media screen and (max-width: 768px) {
  .strategy .page-main .anchor-list li a {
    font-size: 16px
  }
}

.strategy .page-main .anchor-list li a:hover {
  background: url("/_assets/img/share/arrow-bottom-white.svg") no-repeat center bottom 8px/16px #5E0055;
  color: #fff;
  border-color: #5E0055
}

.strategy .page-main .btn-wrap {
  text-align: center
}

.strategy .page-main .btn-wrap a {
  display: block;
  width: auto;
  border: 2px solid #5E0055;
  color: #333;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  padding: 16px;
  text-decoration: none;
  border-radius: 40px;
  margin: 0 auto;
  text-align: center;
  transition: all .3s;
  background: url("/_assets/img/share/arrow-right.svg") no-repeat right 15px center/16px #fff;
  display: inline-block;
  padding: 16px 40px;
  line-height: 1.4
}

.strategy .page-main .btn-wrap a:hover {
  background-color: #5E0055;
  background-image: url("/_assets/img/share/arrow-white-left.svg");
  color: #fff;
  background-image: url("/_assets/img/share/arrow-white-right.svg")
}

@media screen and (max-width: 768px) {
  .strategy .page-main .btn-wrap a {
    padding: 16px 32px 16px 32px;
    width: 100%;
    box-sizing: border-box
  }
}

.strategy .page-main .top-commit .signature {
  max-width: 170px;
  margin: 32px 0 0 auto
}

.strategy .page-main .top-commit .signature img {
  max-width: 162px
}

.strategy .page-main .top-commit .signature span {
  letter-spacing: 1px;
  font-size: 16px;
  font-family: "Noto Serif JP";
  font-weight: 700;
  margin-bottom: 16px;
  display: block
}

.strategy .page-main #policy {
  margin-bottom: 80px
}

@media screen and (max-width: 768px) {
  .strategy .page-main #policy {
    margin-bottom: 64px
  }
}

.strategy .page-main #materiality {
  margin-bottom: 80px
}

@media screen and (max-width: 768px) {
  .strategy .page-main #materiality {
    margin-bottom: 64px
  }
}

.strategy .page-main #materiality .materiality__lead {
  font-size: 28px;
  line-height: 1.7;
  font-weight: 500;
  margin-bottom: 32px;
  letter-spacing: 2px
}

.strategy .page-main #materiality figure {
  max-width: 1000px;
  margin: 32px auto
}

.strategy .page-main #materiality .materiality-list {
  gap: 32px
}

@media screen and (max-width: 768px) {
  .strategy .page-main #materiality .materiality-list {
    flex-direction: column
  }
}

.strategy .page-main #materiality .materiality-list .materiality-list__item {
  list-style-type: none;
  border: 1px solid #dfdfdf;
  padding: 152px 24px 24px;
  border-radius: 8px;
  flex: 1
}

@media screen and (max-width: 768px) {
  .strategy .page-main #materiality .materiality-list .materiality-list__item {
    padding: 130px 16px 24px
  }
}

.strategy .page-main #materiality .materiality-list .materiality-list__item:nth-of-type(1) {
  background: url("/_assets/img/strategy/strategy-material-bg-1.png") no-repeat center 30px/204px
}

@media screen and (max-width: 768px) {
  .strategy .page-main #materiality .materiality-list .materiality-list__item:nth-of-type(1) {
    background-size: 160px
  }
}

.strategy .page-main #materiality .materiality-list .materiality-list__item:nth-of-type(2) {
  background: url("/_assets/img/strategy/strategy-material-bg-2.png") no-repeat center 30px/97px
}

@media screen and (max-width: 768px) {
  .strategy .page-main #materiality .materiality-list .materiality-list__item:nth-of-type(2) {
    background-size: 77px
  }
}

.strategy .page-main #materiality .materiality-list .materiality-list__item:nth-of-type(3) {
  background: url("/_assets/img/strategy/strategy-material-bg-3.png") no-repeat center 30px/116px
}

@media screen and (max-width: 768px) {
  .strategy .page-main #materiality .materiality-list .materiality-list__item:nth-of-type(3) {
    background-size: 90px
  }
}

.strategy .page-main #materiality .materiality-list .materiality-list__item h4 {
  font-size: 24px;
  margin-bottom: 16px
}

.strategy .page-main #society {
  padding: 80px 0;
  background: #F4F4F4
}

@media screen and (max-width: 768px) {
  .strategy .page-main #society {
    padding: 64px 0
  }
}

.strategy .page-main #society .society-list {
  gap: 32px;
  flex-wrap: wrap
}

.strategy .page-main #society .society-list .society-list__item {
  flex-basis: 365px;
  list-style-type: none;
  box-sizing: border-box;
  background: #fff;
  padding: 24px 24px 48px;
  border-radius: 8px
}

@media screen and (max-width: 768px) {
  .strategy .page-main #society .society-list .society-list__item {
    flex-basis: 100%
  }
}

.strategy .page-main #society .society-list .society-list__item h3 {
  font-size: 18px;
  margin: 16px 0;
  line-height: 1.6
}

.footer {
  border-radius: 32px 32px 0 0;
  background-color: #5E0055
}

.footer .footer__upper {
  padding: 70px 0 40px;
  justify-content: space-between;
  max-width: 1000px;
  align-items: center;
  gap: 80px
}

@media screen and (max-width: 768px) {
  .footer .footer__upper {
    display: block;
    padding: 48px 24px 36px
  }
}

.footer .footer__upper .footer_uppper_logo {
  max-width: 188px
}

@media screen and (max-width: 768px) {
  .footer .footer__upper .footer_uppper_logo {
    margin: 0 auto 24px
  }
}

.footer .footer__upper .footer__nav {
  flex: 1
}

.footer .footer__upper .footer__nav ul {
  justify-content: space-between
}

@media screen and (max-width: 768px) {
  .footer .footer__upper .footer__nav ul {
    flex-direction: column;
    gap: 36px
  }
}

.footer .footer__upper .footer__nav ul li a {
  color: #fff;
  display: block;
  text-decoration: none;
  font-weight: bold;
  font-size: 18px
}

@media screen and (max-width: 768px) {
  .footer .footer__upper .footer__nav ul li a {
    font-weight: 700
  }
}

.footer .footer__upper .footer__nav ul li .footer__nav__child {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  gap: 24px
}

@media screen and (max-width: 768px) {
  .footer .footer__upper .footer__nav ul li .footer__nav__child {
    flex-direction: row;
    gap: 30px
  }
}

.footer .footer__upper .footer__nav ul li .footer__nav__child li {
  width: 100%
}

@media screen and (max-width: 768px) {
  .footer .footer__upper .footer__nav ul li .footer__nav__child li {
    width: 45%
  }
}

.footer .footer__upper .footer__nav ul li .footer__nav__child li a {
  font-weight: normal
}

.footer .footer__lower {
  background-color: #000;
  justify-content: space-between;
  color: #F4F4F4;
  padding: 10px 0
}

@media screen and (max-width: 768px) {
  .footer .footer__lower {
    padding: 16px 0
  }
}

.footer .footer__lower .footer__lower__inner {
  max-width: 1040px;
  align-items: center
}

@media screen and (max-width: 768px) {
  .footer .footer__lower .footer__lower__inner {
    display: block
  }
}

.footer .footer__lower .footer__util-nav {
  flex: 1
}

@media screen and (max-width: 768px) {
  .footer .footer__lower .footer__util-nav {
    margin-bottom: 16px
  }
}

.footer .footer__lower .footer__util-nav ul {
  gap: 30px
}

@media screen and (max-width: 768px) {
  .footer .footer__lower .footer__util-nav ul {
    flex-wrap: wrap;
    gap: 16px 0
  }
}

@media screen and (max-width: 768px) {
  .footer .footer__lower .footer__util-nav ul li {
    text-align: center;
    flex-basis: 50%
  }
}

.footer .footer__lower .footer__util-nav ul li a {
  text-decoration: none;
  color: #fff;
  font-size: 12px
}

.footer .footer__lower small {
  font-size: 10px
}

@media screen and (max-width: 768px) {
  .footer .footer__lower small {
    text-align: center;
    display: block
  }
}

.table-fixed {
  table-layout: fixed;
}

@media screen and (max-width: 768px) {
  .scroll-table-wrap {
    overflow-x: scroll !important;
    margin-top: 5px !important;
  }

  .scroll-table-wrap .scroll-table__sp {
    width: 100%;
    min-width: 600px;
  }

  .scroll-table-wrap .scroll-table__sp.w700 {
    min-width: 700px;
  }
  .scroll-table-wrap .scroll-table__sp.w800 {
    min-width: 800px;
  }
  .scroll-table-wrap .scroll-table__sp.w900 {
    min-width: 900px;
  }
  .scroll-table-wrap .scroll-table__sp.w1000 {
    min-width: 1000px;
  }
}

.bdr-box * {
  box-sizing: border-box;
}

/*news詳細に直書きされてた*/
ul.c-list li.c-list__item {
  list-style: none;
}
.c-list.-dotted > .c-list__item {
padding-left: 1.3em;
text-indent: -1.3em;
}

.c-list.-dotted > .c-list__item:before {
  content: '・';
  margin-right: .3em;
}
.c-list.-num > .c-list__item {
  padding-left: 1.9em;
  text-indent: -1.9em;
}

.c-list.-num > .c-list__item:before {
  content: counter(number) ".";
  margin-right: .3em;
}

.c-list.-num > .c-list__item:nth-child(-n+9) {
  padding-left: 1.3em;
  text-indent: -1.3em;
}

.c-list.-num > .c-list__item:nth-child(-n+9):before {
  margin-right: .3em;
}
.c-list.-num.-round > .c-list__item {
  padding-left: 1.3em;
  text-indent: -1.3em;
}

.c-list.-num.-round > .c-list__item:before {
  content: "";
  margin-right: .3em;
}

.c-list.-num.-round > .c-list__item:nth-child(-n+9) {
  padding-left: 1.3em;
  text-indent: -1.3em;
}

.c-list.-num.-round > .c-list__item:nth-child(-n+9):before {
  margin-right: .3em;
}

.c-list.-num.-round > .c-list__item:nth-child(1):before {
  content: '\02460';
}

.c-list.-num.-round > .c-list__item:nth-child(2):before {
  content: '\02461';
}

.c-list.-num.-round > .c-list__item:nth-child(3):before {
  content: '\02462';
}

.c-list.-num.-round > .c-list__item:nth-child(4):before {
  content: '\02463';
}
.single .page-main .news-content__main .point-box .point-box__inner ul.c-list{
  margin-left: 0;
}
@media screen and (min-width: 769px) {
  .col.pc-1column > div:first-child{
    width: 40%;
  }
}
@media screen and (max-width: 768px) {
  .col.pc-1column{
    display: block;
  }
}


.single .page-main .news-content__main .mt-be-columns {
  justify-content: center;
  align-items: center;
  gap: 20px;
}

.single .page-main .news-content__main .flex_layout,
.single .page-main .news-content__main .mt-be-columns {
  margin-top: 40px;
}
.single .page-main .news-content__main .flex_layout .mt-be-columns {
  margin-top: 0;
  align-items: flex-start;
}
.single .page-main .news-content__main .flex_layout .img {
  width: 100%;
  max-width: 75%;
}
.single .page-main .news-content__main .flex_layout .img-wrap,
.single .page-main .news-content__main .mt-be-columns .img-wrap {
  margin: 0;
}
.single .page-main .news-content__main .flex_layout .cts {
  width: 100%;
  max-width: calc(25% - 20px);
}
.single .page-main .news-content__main .flex_layout .cts ul {
  margin: 10px 0 0 16px;
}
@media screen and (max-width: 768px) {
  .single .page-main .news-content__main .flex_layout .mt-be-columns {
    flex-direction: column-reverse;
  }
  .single .page-main .news-content__main .flex_layout.reverse .mt-be-columns {
    flex-direction: column;
  }
  .single .page-main .news-content__main .mt-be-columns .mt-be-column,
  .single .page-main .news-content__main .mt-be-columns .mt-be-column .cts,
  .single .page-main .news-content__main .mt-be-columns .mt-be-column .img {
    width: 100%;
    max-width: 100%;
  }
  .single .page-main .news-content__main .mt-be-columns {
    flex-wrap: wrap;
  }
}
