@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;400;500&display=swap);

.feature .main-pink {
	color: #f0acad
}

.feature img,
.feature video {
	max-width: 100%;
	height: auto
}

.feature .content-inner>.img {
	margin-bottom: 4vh;
	margin-inline: auto
}

.feature .content-inner>.img.w80 {
	width: 80%
}

.feature .feature-mainvisual-logo-wrap {
	position: absolute;
	height: 100%;
	width: 55%;
	right: 0;
	animation: scale_copy01 .7s ease .3s both
}

.feature .feature-mainvisual-logo-wrap .copy01 {
	position: absolute;
	width: 24vw;
	height: 17vw;
	background: url(../images/feature/feature-copy01.svg) no-repeat center center;
	background-size: contain;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%)
}

.feature .index-main .feature-mainvisual-logo-wrap {
	position: relative;
	width: 100%;
	overflow: hidden
}

.feature .index-main .feature-mainvisual-logo-wrap .copy01 {
	bottom: 7vw
}

.feature .index-main .feature-mainvisual-logo-wrap .copy02 {
	position: absolute;
	width: 40vw;
	height: 5vw;
	background: url(../images/feature/feature-copy02.svg) no-repeat center center;
	background-size: contain;
	bottom: 2vw;
	left: 30%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	animation: section_fade_in .4s ease 1.2s both
}

.feature .tab-panel {
	display: none
}

.feature .tab-panel.active {
	display: block
}

.feature .bg-inner {
	position: relative;
	padding: 1em;
	margin-bottom: 4vh;
	border: solid 1px #f0acad
}

.feature .bg-inner h4.bold-title {
	color: #f0acad
}

.feature .bg-inner>:last-child {
	margin-bottom: 0
}

.feature .anchor {
	padding-top: 5vw;
	margin-top: -5vw
}

.feature-linkbox {
	display: flex;
	margin-bottom: 30px
}

.feature-linkbox>* {
	width: 33.3333333333%
}

.feature-linkbox a {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center
}

.feature-linkbox a::before {
	background-color: #f0acad
}

.feature-linkbox a::after {
	border-color: #fff
}

.feature-linkbox a.active {
	pointer-events: none;
	opacity: 1;
	border-radius: unset;
	background: #f0acad;
	color: #fff
}

.feature-linkbox a.active::before {
	background-color: #fff
}

.feature-linkbox a.active::after {
	border-color: #f0acad
}

.feature-linkbox a:hover {
	border-radius: unset
}

.feature-linkbox a:hover::before {
	background-color: #fff
}

.feature-linkbox a:hover::after {
	border-color: #f0acad
}

.feature-index-section {
	padding-block: 8vh 1px;
	background: url(../images/feature/bg-feature-index-message.webp) no-repeat center center;
	background-size: cover;
	background-attachment: fixed
}

.feature-index-message {
	text-align: center;
	color: #fff
}

.feature-index-message p.sub {
	display: inline-block;
	padding: .5em 1em;
	border: 1px solid currentColor;
	width: fit-content;
	text-align: center
}

.feature-index-message p.main {
	margin-bottom: 4vh;
	line-height: 1.2em;
	letter-spacing: .1em;
	font-size: calc(3rem + 3vw);
	font-family: "Noto Serif JP", serif
}

.feature-index-message p.main span {
	color: #f0acad
}

dl.index-qol-message {
	margin-bottom: 4vh;
	color: #fff
}

dl.index-qol-message dt {
	font-size: 3rem;
	font-family: "Noto Serif JP", serif;
	text-align: center;
	margin-bottom: 4vh
}

.feature-border-box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 2em;
	height: 30vw
}

.feature-border-box .box-inner {
	width: 100%
}

.feature-border-box .box-inner>*+* {
	margin-top: 4vh
}

.feature-border-box .box-inner>:last-child {
	margin-bottom: unset
}

.feature-border-box.steps-border {
	background: url(../images/feature/feature-border-box01.svg) no-repeat center center;
	background-size: contain
}

.feature-border-box.fourpowers-border {
	padding-top: calc(2em + 6vw);
	height: 42vw;
	background: url(../images/feature/feature-border-box02.svg) no-repeat center center;
	background-size: contain
}

.steps-box {
	display: flex;
	width: 100%;
	justify-content: space-evenly;
	color: #fff
}

.steps-box dl.steps-list {
	font-family: "Noto Serif JP", serif;
	text-align: center
}

.steps-box dl.steps-list>*+* {
	margin-top: .5vmax;
	margin-top: .5lh
}

.steps-box dl.steps-list dt {
	color: #e08691;
	font-size: calc(1.6rem + 5vw);
	line-height: 1
}

.steps-box dl.steps-list dd {
	font-size: calc(1.2rem + .3vw);
	font-weight: 500
}

.steps-box dl.steps-list dd small {
	font-size: .8em
}

.steps-box dl.steps-list dd small span {
	color: #e08691;
	font-size: 1.1em
}

.fourpowers-box {
	display: flex;
	width: 100%;
	justify-content: space-around;
	color: #fff
}

.fourpowers-box dl.fourpowers-list {
	padding: 1.5%;
	width: 21%
}

.fourpowers-box dl.fourpowers-list>*+* {
	margin-top: .5vmax;
	margin-top: .5lh
}

.fourpowers-box dl.fourpowers-list:nth-of-type(1) {
	background-color: #dd9ba5
}

.fourpowers-box dl.fourpowers-list:nth-of-type(2) {
	background-color: #7ab897
}

.fourpowers-box dl.fourpowers-list:nth-of-type(3) {
	background-color: #659fd8
}

.fourpowers-box dl.fourpowers-list:nth-of-type(4) {
	background-color: #69b7d4
}

.fourpowers-box dl.fourpowers-list dt {
	font-family: "Noto Serif JP", serif;
	min-height: 4vmax;
	min-height: 4lh
}

.fourpowers-box dl.fourpowers-list dt h5 {
	font-size: 1.8rem
}

.fourpowers-box dl.fourpowers-list dt h5 small {
	font-weight: 700
}

.fourpowers-box dl.fourpowers-list dt p {
	font-size: 1.4rem;
	line-height: 1.6
}

.fourpowers-box dl.fourpowers-list dd img {
	width: 100%
}

.feature-index-content {
	padding-block: 8vh 1px;
	width: 100%
}

.feature-index-content p.paragraph,
.feature-index-content>h4.center-title {
	margin-inline: auto;
	width: calc(100% - 10vw)
}

.feature-border-plus-box {
	margin-block: 8vh 6vh
}

.feature-border-plus-box .feature-border-plus {
	display: inline-block;
	vertical-align: middle;
	background: currentColor;
	position: relative;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	line-height: 1;
	width: 75px;
	height: 1px;
	color: #fff
}

.feature-border-plus-box .feature-border-plus::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: inherit;
	border-radius: inherit;
	transform: rotate(90deg)
}

.feature-index-box {
	margin-top: 14vh
}

.feature-index-box>*+* {
	margin-top: calc(5% + 1lh)
}

.feature-index-box .feature-index-card {
	position: relative
}

.feature-index-box .feature-index-card:nth-child(even) figure {
	left: unset;
	right: 0
}

.feature-index-box .feature-index-card:nth-child(even) .text {
	margin-left: 5%;
	margin-right: 45%;
	align-items: end
}

.feature-index-box .feature-index-card:nth-child(even) .text p {
	text-align: right
}

.feature-index-box .feature-index-card:nth-child(even) .text .sp-bnrlinks-box strong {
	display: block;
	text-align: right
}

.feature-index-box .feature-index-card:nth-child(even) .text .sp-bnrlinks-box .sp-bnrlinks-list {
	justify-content: flex-end
}

.feature-index-box .feature-index-card figure {
	position: absolute;
	width: 60%;
	height: 100%;
	bottom: 10%;
	left: 0
}

.feature-index-box .feature-index-card figure img {
	width: 100%;
	height: 100%;
	object-fit: cover
}

.feature-index-box .feature-index-card .text {
	position: relative;
	margin-left: 45%;
	margin-right: 5%;
	background-color: rgba(255, 255, 255, .9);
	display: flex;
	flex-direction: column;
	padding: 5%;
	z-index: 3
}

.feature-index-box .feature-index-card .text>*+* {
	margin-top: .7vmax;
	margin-top: .7lh
}

.feature-index-box .feature-index-card .text h4 {
	font-family: "Noto Serif JP", serif;
	font-size: 4rem;
	letter-spacing: .1em
}

.feature-index-box .feature-index-card .text p {
	font-weight: 500;
	color: #f0acad;
	font-size: calc(1.4rem + .3vw)
}

.feature-index-box .feature-index-card .text .sp-bnrlinks-box {
	min-height: 3vmax;
	min-height: 3lh
}

.feature-index-box .feature-index-card .text .sp-bnrlinks-box strong {
	margin-bottom: 1%
}

.feature-index-box .feature-index-card .text .sp-bnrlinks-box .sp-bnrlinks-list {
	display: flex;
	gap: 10px 5%;
	flex-wrap: wrap
}

.feature-index-box .feature-index-card .text .sp-bnrlinks-box .sp-bnrlinks-list a {
	width: 47.5%
}

.feature.index .content-inner {
	margin-bottom: 10vh
}

.feature.index .content-inner>figure {
	width: 90%;
	margin-bottom: 6vh;
	margin-inline: auto
}

.feature.index .two-flex-box {
	display: flex;
	justify-content: space-between;
	margin-bottom: 3vw
}

.feature.index .two-flex-box>* {
	width: 49%;
	margin-bottom: 0
}

.feature.index .two-flex-box>*>:last-child {
	margin-bottom: 0
}

.feature.index .two-flex-box img {
	width: 100%
}

.feature.index .two-flex-box strong {
	margin-bottom: .25vmax;
	margin-bottom: .25lh;
	display: inline-block
}

.feature.index .three-flex-box {
	display: flex;
	justify-content: space-between;
	margin-bottom: 3vw
}

.feature.index .three-flex-box>* {
	width: 30%;
	margin-bottom: 0
}

.feature.index .three-flex-box>*>:last-child {
	margin-bottom: 0
}

.feature.index .three-flex-box img {
	width: 100%
}

.feature.index .three-flex-box strong {
	margin-bottom: .25vmax;
	margin-bottom: .25lh;
	display: inline-block
}

.feature.index ul.index-list li a p {
	color: #fff
}

.section-lead01 h3.section-title {
	color: #dd9ba5;
	border-color: currentColor
}

.section-lead01 ul.index-list li a {
	background-color: #dd9ba5
}

.section-lead01 a.round-link {
	background-color: #dd9ba5;
	border-color: currentColor
}

.section-lead01 a.round-link::after {
	border-color: #dd9ba5
}

.section-lead01 a.round-link:hover {
	color: #dd9ba5;
	background-color: #fff
}

.section-lead01 a.round-link:hover::before {
	background-color: #dd9ba5
}

.section-lead01 a.round-link:hover::after {
	border-color: #fff
}

.section-lead02 h3.section-title {
	color: #7ab897;
	border-color: currentColor
}

.section-lead02 ul.index-list li a {
	background-color: #7ab897
}

.section-lead02 a.round-link {
	background-color: #7ab897;
	border-color: currentColor
}

.section-lead02 a.round-link::after {
	border-color: #7ab897
}

.section-lead02 a.round-link:hover {
	color: #7ab897;
	background-color: #fff
}

.section-lead02 a.round-link:hover::before {
	background-color: #7ab897
}

.section-lead02 a.round-link:hover::after {
	border-color: #fff
}

.section-lead03 h3.section-title {
	color: #659fd8;
	border-color: currentColor
}

.section-lead03 ul.index-list li a {
	background-color: #659fd8
}

.section-lead03 a.round-link {
	background-color: #659fd8;
	border-color: currentColor
}

.section-lead03 a.round-link::after {
	border-color: #659fd8
}

.section-lead03 a.round-link:hover {
	color: #659fd8;
	background-color: #fff
}

.section-lead03 a.round-link:hover::before {
	background-color: #659fd8
}

.section-lead03 a.round-link:hover::after {
	border-color: #fff
}

.section-lead04 h3.section-title {
	color: #69b7d4;
	border-color: currentColor
}

.section-lead04 ul.index-list li a {
	background-color: #69b7d4
}

.section-lead04 a.round-link {
	background-color: #69b7d4;
	border-color: currentColor
}

.section-lead04 a.round-link::after {
	border-color: #69b7d4
}

.section-lead04 a.round-link:hover {
	color: #69b7d4;
	background-color: #fff
}

.section-lead04 a.round-link:hover::before {
	background-color: #69b7d4
}

.section-lead04 a.round-link:hover::after {
	border-color: #fff
}

.four-powers-content-lead {
	position: relative;
	width: 100%;
	margin-bottom: 8vh
}

.four-powers-content-lead::after {
	content: "";
	position: absolute;
	background-color: #dd9ba5;
	width: 100%;
	height: 70%;
	z-index: 0;
	top: 0;
	left: 0
}

.four-powers-content-lead .content-title {
	position: relative;
	padding-top: 4vh;
	margin-inline: auto;
	width: calc(100% - 20vw);
	z-index: 3
}

.four-powers-content-lead .content-title h3 {
	position: relative;
	margin-bottom: 3vh;
	font-weight: 700;
	font-size: calc(.5rem + 1vw);
	color: #fff;
	line-height: 2;
	letter-spacing: .2em
}

.four-powers-content-lead .content-title h3::before {
	content: "01";
	position: absolute;
	bottom: 5px;
	left: calc(-7vw - 5px);
	font-family: "Noto Serif JP", serif;
	font-size: calc(1rem + 5vw);
	line-height: 1
}

.four-powers-content-lead .content-title h3 span {
	font-weight: 600;
	font-family: "Noto Serif JP", serif;
	font-size: 1.2em
}

.four-powers-content-lead .content-title img {
	width: 100%
}

.section-lead01 .four-powers-content-lead::after {
	background-color: #dd9ba5
}

.section-lead01 .four-powers-content-lead .content-title h3::before {
	content: "01"
}

.section-lead02 .four-powers-content-lead::after {
	background-color: #7ab897
}

.section-lead02 .four-powers-content-lead .content-title h3::before {
	content: "02"
}

.section-lead03 .four-powers-content-lead::after {
	background-color: #659fd8
}

.section-lead03 .four-powers-content-lead .content-title h3::before {
	content: "03"
}

.section-lead04 .four-powers-content-lead::after {
	background-color: #69b7d4
}

.section-lead04 .four-powers-content-lead .content-title h3::before {
	content: "04"
}

h2.top-section-title {
	font-size: 4vw;
	font-weight: 400;
	text-align: center;
	font-family: "Noto Serif JP", serif;
	color: #f0acad;
	line-height: 1.5em;
	margin-bottom: 2vw
}

h2.top-section-title.small {
	font-size: 3vw
}

.top-content-section.sp-section {
	padding: 5vw 0 5vw 0;
	background: #f4e6e7
}

ul.top-sp-bnrlinks {
	width: 100%;
	display: flex;
	flex-wrap: wrap
}

ul.top-sp-bnrlinks li {
	width: 32%;
	margin-right: 2%;
	margin-bottom: 20px
}

ul.top-sp-bnrlinks li:nth-of-type(3n) {
	margin-right: 0
}

ul.top-sp-bnrlinks li a {
	display: block;
	width: 100%
}

ul.top-sp-bnrlinks li a img {
	display: block;
	width: 100%
}

.feature.qol .content-inner>figure {
	margin-inline: auto;
	width: 80%
}

.feature.qol .content-inner>figure img {
	width: 100%
}

.qol-lead .qol-lead-title {
	margin-bottom: .5vmax;
	margin-bottom: .5lh;
	font-size: calc(1.8rem + .3vw);
	font-family: "Noto Serif JP", serif;
	color: #f0acad;
	letter-spacing: .3em
}

.qol-lead .qol-steps-box {
	display: flex;
	width: 100%;
	justify-content: space-evenly;
	color: #000
}

.qol-lead .qol-steps-box dl.steps-list {
	font-family: "Noto Serif JP", serif;
	text-align: center
}

.qol-lead .qol-steps-box dl.steps-list>*+* {
	margin-top: .5vmax;
	margin-top: .5lh
}

.qol-lead .qol-steps-box dl.steps-list dt {
	color: #e08691;
	font-size: calc(1.6rem + 5vw);
	line-height: 1
}

.qol-lead .qol-steps-box dl.steps-list dd {
	font-size: calc(1.2rem + .3vw);
	font-weight: 500
}

.qol-lead .qol-steps-box dl.steps-list dd small {
	font-size: .8em
}

.qol-lead .qol-steps-box dl.steps-list dd small span {
	color: #e08691;
	font-size: 1.1em
}

.qol-content {
	padding: 2.5em 2em 4em;
	background-color: #fae2e2
}

.qol-content .qol-content-title {
	margin-bottom: 1vmax;
	margin-bottom: 1lh;
	text-align: center;
	color: #e08691;
	font-size: calc(1.8rem + .3vw);
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	letter-spacing: .3em
}

.qol-content .qol-content-title small {
	display: inline-block;
	position: relative;
	font-size: .9em;
	font-family: unset;
	margin-bottom: .25vmax;
	margin-bottom: .25lh
}

.qol-content .qol-content-title small::before {
	content: "-"
}

.qol-content .qol-content-title small::after {
	content: "-"
}

.qol-content:nth-child(even) {
	background-color: transparent
}

.qol-flex-box {
	display: flex;
	justify-content: space-around
}

.qol-flex-box p {
	width: 65%;
	margin-bottom: unset
}

.qol-flex-box figure {
	width: 30%
}

.qol-flex-box figure img {
	width: 100%
}

.team .two-flex-box {
	display: flex;
	justify-content: space-between;
	margin-bottom: 3vw
}

.team .two-flex-box>* {
	width: 49%;
	margin-bottom: 0
}

.team .two-flex-box>*>:last-child {
	margin-bottom: 0
}

.team .two-flex-box img {
	width: 100%
}

.team .two-flex-box strong {
	margin-bottom: .25vmax;
	margin-bottom: .25lh;
	display: inline-block
}

.team .three-flex-box {
	display: flex;
	justify-content: space-between;
	margin-bottom: 3vw
}

.team .three-flex-box>* {
	width: 30%;
	margin-bottom: 0
}

.team .three-flex-box>*>:last-child {
	margin-bottom: 0
}

.team .three-flex-box img {
	width: 100%;
	margin-bottom: 15px;
}

.team .three-flex-box strong {
	margin-bottom: .25vmax;
	margin-bottom: .25lh;
	display: inline-block
}

h3.team-section-title {
	margin-bottom: 6vh;
	font-size: calc(2.4rem + 1vw);
	font-weight: 500;
	color: #f0acad
}

h3.team-section-title.center {
	text-align: center
}

section.section-case .content-inner {
	width: calc(100% - 10vw);
	margin-inline: auto 0
}

section.section-case ul.tab-list {
	padding-right: 30%;
	font-size: calc(1.6rem + .3vw);
}

section.section-case .tab-panel {
/*	padding: 3em 0 6em 3em;*/
	padding: 1.5em 0 6em 1.5em;
	background-color: #fae2e2
}
section.section-case .tab-panel.alt {
	background: #fff;
	padding-top: 1em;
	padding-bottom: 1em;
}

.case-content>* {
	margin-right: 10vw
}

.case-content h4.case-content-title {
	display: inline-block;
	margin-bottom: 2vh;
	border-bottom: solid 1px;
	padding-bottom: .1vmax;
	padding-bottom: .1lh;
	font-weight: 700;
	font-family: "Noto Serif JP", serif;
	font-size: calc(1.6rem + .3vw)
}

.case-content .case-content-subtitle {
	margin-bottom: 2vh;
	font-family: "Noto Serif JP", serif;
	font-size: calc(1.2rem + .3vw)
}

.case-content .case-content-subtitle span {
	padding: 0 .2em;
	margin-right: .2em;
	background-color: #000;
	color: #fff
}

.case-content .step-content {
	position: relative;
	margin-right: unset;
	margin-top: 5vmax;
	margin-top: 5lh
}

.case-content .step-content+.step-content {
	margin-top: 4vmax;
	margin-top: 4lh
}
.case-content .step-content+.step-content:after {
	display: block;
	content: "";
	position: absolute;
	right: 0;
	top: -7.5vmax;
	top: -7.5vh;
	width: 100vw;
	border-top: 30px solid #fff;
	margin-top: -15px;
}

.case-content .step-content>*+* {
	margin-top: 1vmax;
	margin-top: 1lh
}

.case-content .step-content::before {
	content: "STEP1";
	position: absolute;
/*	top: -1em;*/
	top: 0.2em;
	left: -4em;
	padding: .25em 1.5em;
	border-radius: 10px;
	font-size: 1.6rem;
	color: #fff;
	font-weight: 700;
	background-color: #f0acad;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%)
}

.case-content .step-content:nth-of-type(1)::before {
	content: "STEP1"
}

.case-content .step-content:nth-of-type(2)::before {
	content: "STEP2"
}

.case-content .step-content:nth-of-type(3)::before {
	content: "STEP3"
}

.case-content .step-content:nth-of-type(4)::before {
	content: "STEP4"
}

.case-content .step-content .case-step-flex {
	display: flex;
	justify-content: space-between;
/*	align-items: center;*/
	align-items: flex-start;
	margin-right: 10vw
}

.case-content .step-content .case-step-flex>* {
	margin-bottom: unset
}

.case-content .step-content .case-step-flex>div {
	width: calc(100% - 300px - .3vw);
}
.case-content .step-content .case-step-flex>h5,
.case-content .step-content .case-step-flex>div>h5 {
	display: inline-block;
	border-bottom: solid 1px;
	padding-bottom: .1vmax;
	padding-bottom: .1lh;
	font-weight: 700;
	font-family: "Noto Serif JP", serif;
	font-size: calc(1.6rem + .3vw)
}

.case-content .step-content .case-step-flex>p {
	padding-inline: 2.5%;
	width: 60%
}
.case-content .step-content .case-step-flex>div>p {
	margin-top:	2%;
}

.case-content .step-content .case-step-flex>figure {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: calc(250px + .3vw);
	height: calc(250px + .3vw);
	padding: calc(0px + .3vw);
	/*background:#fff;border-radius:50%*/
}

.case-content .step-content .case-job-box {
	margin-right: 0;
	padding: 2em;
/*	padding-right: 10vw;*/
	margin-right: 10vw;
	background-color: #fff
}

.case-content .step-content .case-job-box .case-job-title {
	margin-bottom: 2vh;
	font-weight: 500;
	font-family: "Noto Serif JP", serif
}

.case-content .step-content .case-job-box .case-job-flex {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 1.5%
}

.case-content .step-content .case-job-box .case-job-flex .card {
	padding: .5em;
	border: 1px solid;
	border-radius: 15px;
	width: 23.8%;
	color: #4e4e4e
}

.case-content .step-content .case-job-box .case-job-flex .card.pt {
	color: #72598a
}

.case-content .step-content .case-job-box .case-job-flex .card.ot {
	color: #3d62a0
}

.case-content .step-content .case-job-box .case-job-flex .card.st {
	color: #0090d5
}

.case-content .step-content .case-job-box .case-job-flex .card.at {
	color: #009189
}

.case-content .step-content .case-job-box .case-job-flex .card.ap {
	color: #bb5454
}

.case-content .step-content .case-job-box .case-job-flex .card.mt {
	color: #0068aa
}

.case-content .step-content .case-job-box .case-job-flex .card.ort {
	color: #00408b
}

.case-content .step-content .case-job-box .case-job-flex .card.em {
	color: #007dbb
}

.case-content .step-content .case-job-box .case-job-flex .card.rt {
	color: #008fae
}

.case-content .step-content .case-job-box .case-job-flex .card.hn {
	color: #e38000
}

.case-content .step-content .case-job-box .case-job-flex .card.hs {
	color: #cd3924
}

.case-content .step-content .case-job-box .case-job-flex .card.nr {
	color: #dc5380
}

.case-content .step-content .case-job-box .case-job-flex .card.sw {
	color: #44a335
}

.case-content .step-content .case-job-box .case-job-flex .card.ps {
	color: #009970
}

.case-content .step-content .case-job-box .case-job-flex .card.hi {
	color: #9a4d80
}

.case-content .step-content .case-job-box .case-job-flex .card.ds {
	color: #474d9a
}

.case-content .step-content .case-job-box .case-job-flex .card>h6 {
	margin-bottom: .2vmax;
	margin-bottom: .2lh;
	font-weight: 500
}

.case-content .step-content .case-job-box .case-job-flex .card>p {
	color: #000;
	font-size: 1.4rem;
	letter-spacing: 0.04em;
}

.case-foot-lead {
	background-color: #fff;
	padding: 1em;
	margin-top: 6vh;
	margin-right: 10vw;
	border: solid 1px #f0acad;
	border-radius: 15px;
	font-family: "Noto Serif JP", serif;
	text-align: center
}

.case-foot-lead span {
	font-weight: 700;
	color: #f0acad;
	background: linear-gradient(transparent 70%, #ff6 70%)
}

.case-movie-box {
	display: flex;
	justify-content: space-between
}

.case-movie-box>* {
	width: 49%
}

.case-movie-box>.card h5 {
	display: inline-block;
	margin-bottom: 2vh;
	border-bottom: solid 1px;
	padding-bottom: .1vmax;
	padding-bottom: .1lh;
	width: 100%;
	text-align: center;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
	font-size: calc(1.6rem + .3vw)
}

.case-movie-box>.card video {
	width: 100%
}

.feature.curriculum .content-inner {
	margin-bottom: 12vh
}

figure.curriculum-board {
	position: relative;
	width: 80%;
	margin-inline: auto
}

figure.curriculum-board img {
	width: 100%
}

figure.curriculum-board a {
	position: absolute;
	top: 5px;
	right: 2%;
	height: 100%;
	width: 23%;
	transition: .2s
}

figure.curriculum-board a:hover {
	background: rgba(255, 255, 255, .3)
}

.curriculum-box {
	position: relative;
	padding: 2em;
	background-color: rgba(240, 172, 173, .1)
}

.curriculum-box:nth-of-type(1) {
	background-color: rgba(240, 172, 173, .1)
}

.curriculum-box:nth-of-type(2) {
	background-color: rgba(240, 172, 173, .2)
}

.curriculum-box:nth-of-type(3) {
	background-color: rgba(240, 172, 173, .3)
}

.curriculum-box:nth-of-type(4) {
	background-color: rgba(240, 172, 173, .4)
}

.curriculum-box>*+* {
	margin-top: 1vmax;
	margin-top: 1lh
}

.curriculum-box+.curriculum-box {
	margin-top: 8vh
}

.curriculum-box+.curriculum-box::before {
	content: "";
	position: absolute;
	left: 50%;
	top: -4vh;
	margin: auto;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 17.5px 0 17.5px;
	border-color: #f0acad transparent transparent transparent;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 2
}

.curriculum-box .curriculum-heading {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	border-bottom: solid 1px;
	padding-bottom: 1vh;
	margin-bottom: 1vmax;
	margin-bottom: 1lh;
}
.curriculum-box .curriculum-heading > * {
	margin-bottom: 0 !important;
	margin-right: 15px;
}
.curriculum-box .curriculum-heading .curriculum-tag {
	border-bottom: 0;
}
.curriculum-box .curriculum-tag {
	display: block;
	border-bottom: solid 1px;
	margin-bottom: 1vmax;
	margin-bottom: 1lh;
	font-family: "Noto Serif JP", serif;
	font-weight: 600;
	font-size: calc(1.4rem + .3vw)
}

.curriculum-box .curriculum-title {
	margin-bottom: 2vh;
	font-size: calc(1.4rem + .3vw)
}

.curriculum-box .curriculum-title span {
	padding: 0 .2em;
	background-color: #e08691;
	color: #fff;
	border: solid 1px
}

.curriculum-box .curriculum-flex {
	display: flex;
	justify-content: space-between
}

.curriculum-box .curriculum-flex>* {
/*	width: 49%*/
	width: 35%
}
.curriculum-box .curriculum-flex .text {
	width: 62%;
}

.curriculum-box .curriculum-flex figure img {
	width: 100%
}

.curriculum-box .list-box {
	padding: 1em;
	background-color: #fff;
	border: solid 1px #000
}

.curriculum-box .list-box ul li {
	display: inline-block;
	width: 49.5%
}
.curriculum-box .list-box ul li.w100 {
	width: 100%;
}

.curriculum-box .list-box ul li::before {
	content: "●";
	color: #f0acad;
	border: solid 1px #fff
}

.collaboration-flex {
	display: flex;
	justify-content: space-between
}

.collaboration-flex>* {
	width: 48%
}

.collaboration-flex figure img {
	width: 100%
}

.collaboration-flow {
	position: relative;
	padding: 2em;
	display: flex;
	justify-content: space-between;
	background-color: rgba(240, 172, 173, .2)
}

.collaboration-flow>.text {
	width: 65%
}

.collaboration-flow>.text h4 {
	color: #f0acad
}

.collaboration-flow>figure {
	width: 30%
}

.collaboration-flow+.collaboration-flow {
	margin-top: 8vh
}
.collaboration-wrap{
	position: relative;
	margin-bottom: 12vh;
}
.collaboration-wrap:after{
	content: "";
	position: absolute;
	left: 50%;
	bottom: -10vh;
	margin: auto;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 60px 0 60px;
	border-color: #f0acad transparent transparent transparent;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 2
}

/*.collaboration-flow+.collaboration-flow::before {
	content: "";
	position: absolute;
	left: 50%;
	top: -4vh;
	margin: auto;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 17.5px 0 17.5px;
	border-color: #f0acad transparent transparent transparent;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 2
}*/

.collaboration-flow.theme1 {
	padding: 0;
	flex-wrap: wrap
}

.collaboration-flow.theme1 .roll {
	width: 100%;
	position: relative
}

.collaboration-flow.theme1 .roll p {
	font-size: 2.2rem;
	font-weight: 600;
	color: #fff;
	padding: .5em 0 .5em 12vw
}

.collaboration-flow.theme1 .roll .img {
	width: 8vw;
	height: 8vw;
	border-radius: 4vw;
	overflow: hidden;
	position: absolute;
	left: 2vw;
	top: calc(50% - 4vw)
}

.collaboration-flow.theme1 .roll .img img {
	width: 100%;
	display: block
}

.collaboration-flow.theme1 .flow-text {
	padding: 3vw 3em 2vw
}

.collaboration-flow.theme1 .flow-text span {
	font-size: 2.2rem;
	font-weight: 600;
	text-decoration-line: underline;
	text-decoration-color: #fff100;
	text-decoration-style: solid;
	text-decoration-thickness: 1.1em;
	text-underline-offset: -0.9em;
	text-decoration-skip-ink: none;
}

.collaboration-flow.theme1.roll01 .roll {
	background: #00408b
}

.collaboration-flow.theme1.roll01 .roll .img {
	border: 1px solid #00408b;
	border-radius: 4vw
}

.collaboration-flow.theme1.roll01 .flow-text span {
	color: #00408b
}

.collaboration-flow.theme1.roll02 .roll {
	background: #72598a
}

.collaboration-flow.theme1.roll02 .roll .img {
	border: 1px solid #72598a;
	border-radius: 4vw
}

.collaboration-flow.theme1.roll02 .flow-text span {
	color: #72598a
}

.collaboration-flow.theme1.roll03 .roll {
	background: #dc5380
}

.collaboration-flow.theme1.roll03 .roll .img {
	border: 1px solid #dc5380;
	border-radius: 4vw
}

.collaboration-flow.theme1.roll03 .flow-text span {
	color: #dc5380
}

.collaboration-flow.theme1.roll04 .roll {
	background: #44a335
}

.collaboration-flow.theme1.roll04 .roll .img {
	border: 1px solid #44a335;
	border-radius: 4vw
}

.collaboration-flow.theme1.roll04 .flow-text span {
	color: #44a335
}

.collaboration-flow.theme1.roll05 .roll {
	background: #cd3924
}

.collaboration-flow.theme1.roll05 .roll .img {
	border: 1px solid #cd3924;
	border-radius: 4vw
}

.collaboration-flow.theme1.roll05 .flow-text span {
	color: #cd3924
}

.collaboration-flow.theme1.roll06 .roll {
	background: #3d62a0
}

.collaboration-flow.theme1.roll06 .roll .img {
	border: 1px solid #3d62a0;
	border-radius: 4vw
}

.collaboration-flow.theme1.roll06 .flow-text span {
	color: #3d62a0
}

.collaboration-flow.theme1.roll07 .roll {
	background: #e38000
}

.collaboration-flow.theme1.roll07 .roll .img {
	border: 1px solid #e38000;
	border-radius: 4vw
}

.collaboration-flow.theme1.roll07 .flow-text span {
	color: #e38000
}

.collaboration-flow.theme1:first-of-type {
	margin-top: 4vw
}

.collaboration-flow.theme-result {
	padding: 0;
	flex-wrap: wrap;
	background: 0 0
}

.collaboration-flow.theme-result .result-title {
	width: 100%;
	color: #000;
	display: flex;
	align-items: center;
	font-size: 2.5rem;
	font-weight: 500;
	border: 1px solid #f0acad;
	background-color: rgba(240, 172, 173, .2)
}

.collaboration-flow.theme-result .result-title span {
	width: 12%;
	height: 5vw;
	background: #f0acad;
	font-size: 1.8rem;
	font-weight: 500;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 2vw;
	color: #000
}

.collaboration-flow.theme-result ol.result-list {
	width: 100%;
/*	margin-top: 1vw;*/
	border: 1px solid #f0acad;
	border-top: 0;
	color: #000;
	font-size: 2rem;
	font-weight: 500;
	padding: 2vw
}

.collaboration-flow.theme-result ol.result-list li {
	list-style: none;
	padding-left: 1.5em;
	text-indent: -1.5em;
	position: relative
}

.collaboration-flow.theme-result ol.result-list li::before {
	content: "";
	color: #e08691;
	font-weight: 900;
	margin-right: .2em
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(1)::before {
	content: "①"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(2)::before {
	content: "②"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(3)::before {
	content: "③"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(4)::before {
	content: "④"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(5)::before {
	content: "⑤"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(6)::before {
	content: "⑥"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(7)::before {
	content: "⑦"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(8)::before {
	content: "⑧"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(9)::before {
	content: "⑨"
}

.collaboration-flow.theme-result ol.result-list li:nth-of-type(10)::before {
	content: "⑩"
}

.collaboration-flow.theme-result ol.result-list li span {
	font-size: 2.3rem;
	font-weight: 900;
	color: #e08691
}

.comment-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 4vh
}

.comment-flex>figure {
	width: 25%
}

.comment-flex>figure img {
	display: block;
	margin-inline: auto;
	border: solid 1px rgba(78, 78, 78, .5);
	border-radius: 50%;
	width: 85%
}

.comment-flex>figure figcaption {
	margin-top: .5vmax;
	margin-top: .5lh;
	text-align: center;
	font-size: 1.4rem;
	color: #0068aa
}

.comment-flex>figure figcaption strong {
	font-size: 1.1em
}

.comment-flex>.text {
	width: 70%
}

.comment-flex>.text>:last-child {
	margin-bottom: unset
}

.comment-flex>.text p {
	line-height: 2
}

ul.theme1-member {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	padding: 2vw 10% 0
}

ul.theme1-member li {
	width: 28%;
	margin-bottom: 2vw;
	position: relative
}

ul.theme1-member li .roll {
	color: #fff;
	padding: 1vw .5em;
	font-size: 1.2rem;
	font-weight: 500;
	letter-spacing: .05em;
	text-align: center
}

ul.theme1-member li .roll span {
	font-size: 1.6rem;
	font-weight: 500;
	display: inline-block
}

ul.theme1-member li .img {
	width: 100%
}

ul.theme1-member li .img img {
	width: 100%;
	display: block
}

ul.theme1-member li p.faculty {
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: 1.4rem;
	line-height: 1em;
	padding: .6em 1em;
	background: rgba(0, 0, 0, .6);
	color: #fff;
	width: 100%;
	text-align: center
}

ul.theme1-member li:nth-of-type(1) .roll {
	background: #72598a
}

ul.theme1-member li:nth-of-type(2) .roll {
	background: #3d62a0
}

ul.theme1-member li:nth-of-type(3) .roll {
	background: #44a335
}

ul.theme1-member li:nth-of-type(4) .roll {
	background: #e38000
}

ul.theme1-member li:nth-of-type(5) .roll {
	background: #00408b
}

ul.theme1-member li:nth-of-type(6) .roll {
	background: #cd3924
}

ul.theme1-member li:nth-of-type(7) .roll {
	background: #dc5380
}


.result-fixtext {
	display: block;
	width: 100%;
	font-size: 3.2rem;
	letter-spacing: .1em;
	text-align: center;
	color: #000;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	line-height: 1.7em;
	margin-top: 1vw
}

.result-fixtext span {
	font-size: 3.4rem;
	font-weight: 900;
	color: #f0acad;
	background: linear-gradient(transparent 70%, #ff6 70%);
	font-family: "Noto Sans JP", serif;
}

.facilities-content>*+* {
	margin-top: 5px
}

.facilities-content .facilities-box {
	display: flex;
	background-color: #7ab897;
	color: #fff
}

.facilities-content .facilities-box:nth-child(even) {
	flex-direction: row-reverse
}

.facilities-content .facilities-box .img {
	width: 40%
}

.facilities-content .facilities-box .img img {
	display: block;
	width: 100%;
	object-fit: cover;
	height: 100%
}

.facilities-content .facilities-box .text {
	padding: 2em;
	width: 60%
}

.facilities-content .facilities-box .text>*+* {
	margin-top: .5vmax;
	margin-top: .5lh
}

.facilities-content .facilities-box .text .subject {
	padding: .25em .5em;
	color: #000;
	background-color: #fff
}

.facilities-content .facilities-box .text h4.title {
	font-size: calc(1.6rem + .3vw);
	font-weight: 600
}

.facilities-content .facilities-box .text .flex {
	display: flex;
	justify-content: space-between
}

.facilities-content .facilities-box .text .flex>* {
	width: 47.5%;
	height: auto
}

.feature.international h3.section-title {
	border: unset;
	color: #000
}

.feature.international h3.section-title span {
	padding: .25em 2em;
	margin-right: 1ch;
	background-color: #7ab897;
	color: #fff;
	font-size: .8em;
	font-weight: 600
}

.international-label {
	display: inline-block;
	padding: .5em 1.5em;
	border-radius: 50px;
	min-width: 8ch;
	background-color: #7ab897;
	color: #fff;
	font-size: calc(1.3rem + .25vw);
	font-weight: 600;
	line-height: 1
}

h4.topic-title {
	display: block;
	margin-bottom: 25px;
	letter-spacing: .15em;
	font-size: calc(1.6rem + .3vw);
	font-weight: 600
}

h4.topic-title .international-label {
	margin-right: 1ch;
	background-color: #4e4e4e
}

.international-bg {
	display: flex;
	margin-bottom: 12vh
}

.international-bg>* {
	width: 25%
}

.voice-content>*+* {
	margin-top: 8vh
}

.voice-content .voice-box {
	padding: 3em;
	background-color: rgba(122, 184, 151, .2)
}

.voice-content .voice-box>*+* {
	margin-top: 1vmax;
	margin-top: 1lh
}

.voice-content .voice-box .lead {
	margin-bottom: 2ch;
	font-size: calc(1.4rem + .3vw);
	font-weight: 500
}

.voice-content .voice-box .lead::before {
	content: "STUDENT'S VOICE";
	margin-right: 2ch;
	border: solid 1px;
	padding: .25em .5em;
	font-size: .8em;
	background-color: #fff
}

.voice-content .voice-box .img-flex {
	display: flex
}

.voice-content .voice-box .img-flex>* {
	width: 50%
}

.voice-content .voice-box .profile-flex {
	display: flex;
	align-items: center;
	margin-top: 2vmax;
	margin-top: 2lh
}

.voice-content .voice-box .profile-flex .img {
	width: 20%;
	min-height: 150px;
	min-width: 150px;
	margin-right: 5%
}

.voice-content .voice-box .profile-flex .img img {
	border-radius: 50%;
	border: solid #fff 2px
}

.voice-content .voice-box .profile-flex .text>*+* {
	margin-top: 1vmax;
	margin-top: 1lh
}

.voice-content .voice-box .profile-flex .text .name {
	font-size: calc(1.6rem + .3vw)
}

.voice-content .voice-box .profile-flex .text .name p {
	font-weight: 700
}

.voice-content .voice-box .profile-flex .text .name span {
	font-size: .75em
}

.voice-content .voice-box .profile-flex .text .profile-list>*+* {
	margin-top: .5vmax;
	margin-top: .5lh
}

.voice-content .voice-box .profile-flex .text .profile-list dl {
	display: flex;
	align-items: baseline
}

.voice-content .voice-box .profile-flex .text .profile-list dl dt {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 1ch;
	background-color: #000;
	color: #fff;
	font-weight: 500;
	text-align: center;
	padding: .25em .5em;
	min-width: 12ch
}

.voice-content .voice-box .faq-list {
	margin-top: 2vmax;
	margin-top: 2lh
}

.voice-content .voice-box .faq-list>*+* {
	margin-top: .5vmax;
	margin-top: .5lh
}

.voice-content .voice-box .faq-list dl {
	background-color: #fff;
	padding: 1em
}

.voice-content .voice-box .faq-list dl>*+* {
	margin-top: 1ch
}

.voice-content .voice-box .faq-list dl dt {
	display: flex;
	align-items: center;
	color: #7ab897;
	font-weight: 600;
	font-size: calc(1.4rem + .3vw)
}

.voice-content .voice-box .faq-list dl dt::before {
	content: "Q";
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 1ch;
	border-radius: 50%;
	font-weight: 600;
	width: 35px;
	height: 35px;
	background-color: #7ab897;
	color: #fff
}

@keyframes scale_copy01 {
	0% {
		opacity: 0;
		filter: blur(50px)
	}

	100% {
		opacity: 1;
		filter: blur(0)
	}
}


.pickup-cate{
  display: flex;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  -webkit-align-items: center;
          align-items: center;
      margin:20px auto;
}
.pickup-cate .item-wrap{
	display: flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	width: 70%;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}
.pickup-cate .item-wrap .item{
	width: 49%;
	text-align: center;
	color: #fff;
	font-size: 1.3rem;
	-webkit-border-radius: 15px;
	        border-radius: 15px;
	margin-bottom: 2%;
}
.pickup-cate .txt{
	width: 30%;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	    padding-left: 30px;
}
.pickup-cate--col4 .item-wrap{
	width: 30%;
}
.pickup-cate--col4 .item-wrap .item{
	width: 100%;
}
.pickup-cate--col4 .txt{
	width: 20%;
}


.pickup-cate .item-wrap .item--c1{
	background-color: #725A9F;
}
.pickup-cate .item-wrap .item--c2{
	background-color: #4b62a9;
}
.pickup-cate .item-wrap .item--c3{
	background-color: #119bde;
}
.pickup-cate .item-wrap .item--c4{
	background-color: #009c95;
}
.pickup-cate .item-wrap .item--c5{
	background-color: #1d4294;
}
.pickup-cate .item-wrap .item--c6{
	background-color: #d78113;
}
.pickup-cate .item-wrap .item--c7{
	background-color: #cb5480;
}
.pickup-cate .item-wrap .item--c8{
	background-color: #71af42;
}
.pickup-cate .item-wrap .item--c9{
	background-color: #007cc4;
}




@media screen and (max-width:1024px) and (orientation:portrait) {
	.feature .content-inner>.img.w80 {
		width: 100%
	}

	.feature .feature-mainvisual-logo-wrap {
		width: 100%
	}

	.feature .feature-mainvisual-logo-wrap .copy01 {
		width: 39vw;
		height: 30vw;
		bottom: 11vw
	}

	.feature .feature-mainvisual-logo-wrap .copy02 {
		position: absolute;
		background: url(../images/feature/feature-copy02.svg) no-repeat center center;
		background-size: contain;
		left: 30%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		animation: section_fade_in .4s ease 1.2s both;
		width: 70vw;
		height: 10vw;
		bottom: 1vw;
		left: 16%
	}

	.feature .index-main .feature-mainvisual-logo-wrap .copy01 {
		width: 39vw;
		height: 30vw;
		bottom: 11vw
	}

	.feature .index-main .feature-mainvisual-logo-wrap .copy02 {
		width: 70vw;
		height: 10vw;
		bottom: 1vw;
		left: 16%
	}

	.steps-box {
		flex-direction: column
	}

	.steps-box>*+* {
		margin-top: .75lh
	}

	.steps-box dl.steps-list {
		display: flex;
		align-items: center
	}

	.steps-box dl.steps-list>*+* {
		margin-top: unset
	}

	.steps-box dl.steps-list dt {
		font-size: calc(1.6rem + 8vw);
		min-width: 1.5ch;
		margin-right: .5ch
	}

	.steps-box dl.steps-list dd {
		font-size: calc(1.2rem + .8vw);
		text-align: left
	}

	.steps-box dl.steps-list dd small span {
		font-size: 1.2em
	}

	.feature-index-content {
		width: 100%
	}

	.feature.index .two-flex-box {
		flex-direction: column
	}

	.feature.index .two-flex-box>* {
		width: 100%
	}

	.feature.index .two-flex-box>*+* {
		margin-top: 1lh
	}

	.feature.index .two-flex-box strong {
		font-size: 1.1em
	}

	.feature.index .three-flex-box {
		flex-direction: column
	}

	.feature.index .three-flex-box>* {
		width: 100%
	}

	.feature.index .three-flex-box>*+* {
		margin-top: 1lh
	}

	.feature.index .three-flex-box strong {
		font-size: 1.1em
	}

	.four-powers-content-lead .content-title h3 {
		font-size: calc(.5rem + 2.8vw);
		display: flex;
		flex-direction: column
	}

	.four-powers-content-lead .content-title h3::before {
		font-size: calc(1rem + 10vw);
		position: relative;
		top: unset;
		left: unset
	}

	h2.top-section-title {
		font-size: 5vw;
		margin-bottom: 3vw
	}

	h2.top-section-title.small {
		font-size: 4vw
	}

	ul.top-sp-bnrlinks li {
		width: 49%
	}

	ul.top-sp-bnrlinks li:nth-of-type(3n) {
		margin-right: 2%
	}

	ul.top-sp-bnrlinks li:nth-of-type(2n) {
		margin-right: unset
	}

	.feature.qol .content-inner>figure {
		width: 100%
	}

	.qol-lead .qol-steps-box {
		flex-direction: column
	}

	.qol-lead .qol-steps-box>*+* {
		margin-top: .75lh
	}

	.qol-lead .qol-steps-box dl.steps-list {
		display: flex;
		align-items: center
	}

	.qol-lead .qol-steps-box dl.steps-list>*+* {
		margin-top: unset
	}

	.qol-lead .qol-steps-box dl.steps-list dt {
		font-size: calc(1.6rem + 8vw);
		min-width: 1.5ch;
		margin-right: .5ch
	}

	.qol-lead .qol-steps-box dl.steps-list dd {
		font-size: calc(1.2rem + .8vw);
		text-align: left
	}

	.qol-lead .qol-steps-box dl.steps-list dd small span {
		font-size: 1.2em
	}

	.team .two-flex-box {
		margin-bottom: 8vw;
		flex-direction: column
	}

	.team .two-flex-box>* {
		width: 100%
	}

	.team .two-flex-box>*+* {
		margin-top: 1lh
	}

	.team .two-flex-box strong {
		font-size: 1.1em
	}

	.team .three-flex-box {
		margin-bottom: 8vw;
		flex-direction: column
	}

	.team .three-flex-box>* {
		width: 100%
	}

	.team .three-flex-box>*+* {
		margin-top: 1lh
	}

	.team .three-flex-box strong {
		font-size: 1.1em
	}

	h3.team-section-title {
		margin-right: unset;
		font-size: calc(1.8rem + 1vw)
	}

	section.section-case .content-inner {
		margin-inline: auto
	}

	section.section-case ul.tab-list {
		padding-right: unset
	}

	section.section-case ul.tab-list li {
		width: 100%;
		border: unset
	}

	section.section-case ul.tab-list li:nth-of-type(2) {
		border-inline: solid 1px #fff
	}

	section.section-case .tab-panel {
		padding-inline: 2em
	}
	section.section-case .tab-panel.alt {
		padding: 0;
	}

	.case-content>* {
		margin-right: unset
	}

	.case-content .case-content-subtitle {
		font-size: calc(1.2rem + 1vw)
	}

	.case-content .step-content+.step-content {
/*		margin-top: 2lh*/
		margin-top: 4lh
	}
	.case-content .step-content+.step-content:after {
		right: calc(-1 * ( 5vw + 2em ) );
	}

	.case-content .step-content::before {
		position: inherit;
		width: 100%;
		display: block;
		transform: unset;
		text-align: center;
		top: unset;
		left: unset;
		margin-bottom: 1lh
	}

	.case-content .step-content .case-step-flex {
		margin-right: unset;
		flex-direction: column
	}

	.case-content .step-content .case-step-flex>div {
		width: auto;
	}
	.case-content .step-content .case-step-flex>h5,
	.case-content .step-content .case-step-flex>div>h5 {
		margin-bottom: 1lh
	}
	.case-content .step-content .case-step-flex>div>h5 {
		margin-bottom: 0.5lh;
	}

	.case-content .step-content .case-step-flex>p,
	.case-content .step-content .case-step-flex>div>p {
		width: 100%;
		margin-bottom: 2vh
	}

	.case-content .step-content .case-job-box {
		padding: 2em 1em;
		margin-right: 0;
	}

	.case-content .step-content .case-job-box .case-job-flex {
		flex-direction: column
	}

	.case-content .step-content .case-job-box .case-job-flex .card {
		width: 100%
	}

	.case-foot-lead {
		margin-right: unset;
		text-align: left
	}

	.curriculum-box .curriculum-heading > * {
		margin-right: 10px;
	}
	.curriculum-box .curriculum-heading strong {
		margin-top: 6px;
	}
	
	.curriculum-box .curriculum-tag {
		font-size: calc(1.4rem + .6vw)
	}

	.curriculum-box .curriculum-title span {
		width: 100%;
		display: block;
		text-align: center
	}

	.curriculum-box .curriculum-flex {
		flex-direction: column-reverse;
	}

	.curriculum-box .curriculum-flex>* {
		width: 100%
	}
	.curriculum-box .curriculum-flex .text {
		width: 100%;
		margin-top: 20px;
	}
	.curriculum-box .curriculum-flex .text.sp-mt0 {
		margin-top: 0;
	}
	.curriculum-box .curriculum-flex .paragraph:last-child {
		margin-bottom: 0;
	}
	.curriculum-box .curriculum-flex figure {
		margin-bottom: 20px;
	}

	.curriculum-box .curriculum-flex strong {
		margin-bottom: .5lh;
		display: block
	}

	.curriculum-box .list-box ul li {
		width: 100%
	}

	.collaboration-flow {
		flex-direction: column
	}

	.collaboration-flow>.text {
		width: 100%
	}

	.collaboration-flow.theme1 .roll p {
		padding-left: 18vw
	}

	.collaboration-flow.theme1 .roll .img {
		width: 14vw;
		height: 14vw;
		border-radius: 7vw;
		top: calc(50% - 7vw)
	}

	.collaboration-flow.theme1 .flow-text {
		padding: 4vw 2em 4vw
	}

	.collaboration-flow.theme1 .flow-text span {
		font-size: 2rem
	}

	.collaboration-flow.theme1.roll01 .roll {
		background: #00408b
	}

	.collaboration-flow.theme1.roll01 .roll .img {
		border: 1px solid #00408b;
		border-radius: 7vw
	}

	.collaboration-flow.theme1.roll02 .roll {
		background: #72598a
	}

	.collaboration-flow.theme1.roll02 .roll .img {
		border: 1px solid #72598a;
		border-radius: 7vw
	}

	.collaboration-flow.theme1.roll03 .roll {
		background: #dc5380
	}

	.collaboration-flow.theme1.roll03 .roll .img {
		border: 1px solid #dc5380;
		border-radius: 7vw
	}

	.collaboration-flow.theme1.roll04 .roll {
		background: #44a335
	}

	.collaboration-flow.theme1.roll04 .roll .img {
		border: 1px solid #44a335;
		border-radius: 7vw
	}

	.collaboration-flow.theme1.roll05 .roll {
		background: #cd3924
	}

	.collaboration-flow.theme1.roll05 .roll .img {
		border: 1px solid #cd3924;
		border-radius: 7vw
	}

	.collaboration-flow.theme1.roll06 .roll {
		background: #3d62a0
	}

	.collaboration-flow.theme1.roll06 .roll .img {
		border: 1px solid #3d62a0;
		border-radius: 7vw
	}

	.collaboration-flow.theme1.roll07 .roll {
		background: #e38000;
	}

	.collaboration-flow.theme1.roll07 .roll .img {
		border: 1px solid #e38000;
		border-radius: 7vw
	}


	.collaboration-flow.theme-result .result-title {
		font-size: 1.8rem
	}

	.collaboration-flow.theme-result .result-title span {
		width: 25%;
		height: 100%;
		padding-block: 5%
	}

	.collaboration-flow.theme-result ol.result-list {
		margin-top: 2vw;
		font-size: 1.8rem
	}

	.collaboration-flow.theme-result ol.result-list li {
		margin-bottom: 10px
	}

	.collaboration-flow.theme-result ol.result-list li span {
		font-size: 1.2em
	}

	ul.theme1-member {
		padding-inline: unset
	}

	ul.theme1-member li {
		width: 48%
	}

	ul.theme1-member li .roll {
		min-height: 2.2lh;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center
	}

	ul.theme1-member li p.faculty {
		padding-inline: unset
	}

	.result-fixtext {
		font-size: 2rem;
		text-align: left;
		margin-top: 3vw
	}

	.result-fixtext span {
		font-size: 1.1em
	}

	.facilities-content>*+* {
		margin-top: .5lh
	}

	.facilities-content .facilities-box {
		flex-direction: column
	}

	.facilities-content .facilities-box:nth-child(even) {
		flex-direction: column
	}

	.facilities-content .facilities-box .img {
		width: 100%
	}

	.facilities-content .facilities-box .text {
		width: 100%
	}

	.facilities-content .facilities-box .text .subject {
		text-align: center
	}

	.facilities-content .facilities-box .text .flex {
		flex-wrap: wrap
	}

	.facilities-content .facilities-box .text .flex>* {
		width: 100%;
		margin-bottom: 5px
	}

	.feature.international h3.section-title span {
		display: block;
		margin-bottom: 5px;
		margin-right: unset;
		text-align: center;
		padding-block: .7em
	}

	.international-label {
		margin-bottom: 1lh
	}

	.international-bg {
		flex-wrap: wrap
	}

	.international-bg>* {
		width: 50%
	}

	.voice-content .voice-box {
		padding: 2em
	}

	.voice-content .voice-box .lead::before {
		margin-right: unset;
		display: block;
		width: 100%;
		text-align: center;
		margin-bottom: .25lh
	}

	.voice-content .voice-box .img-flex {
		flex-wrap: wrap
	}

	.voice-content .voice-box .img-flex>* {
		width: 100%
	}

	.voice-content .voice-box .profile-flex {
		flex-direction: column
	}

	.voice-content .voice-box .profile-flex .img {
		margin-right: unset;
		margin-bottom: .25lh
	}

	.voice-content .voice-box .profile-flex .text {
		width: 100%
	}

	.voice-content .voice-box .profile-flex .text .profile-list dl {
		align-items: unset
	}


	.pickup-cate{
		display: block;
		margin-top: 0;
	}
	.pickup-cate .item-wrap{
		width: 100%;
	}
	.pickup-cate .item-wrap .item{
		width: 49%;
		font-size: 1.1rem;
	}
	.pickup-cate .txt{
		width: 100%;
		font-size: 1.4rem;
		margin-bottom: 2%;
		padding-left: 0;
		text-align: center;
	}
	.pickup-cate--col4 .item-wrap{
		width: 100%;
	}
	.pickup-cate--col4 .item-wrap .item{
		width: 100%;
	}
	.pickup-cate--col4 .txt{
		width: 100%;
	}




}


.flex-box {
	display: flex;
	gap: 1vmax 5%;
	gap: 1lh 5%;
	margin-bottom: 4vh
}

.flex-box>* {
	width: 100%
}

.flex-box>*>:last-child {
	margin-bottom: 0
}
@media screen and (max-width:1024px) and (orientation:portrait) {
	.flex-box {
		flex-direction: column;
		gap: 10px;
		margin-bottom: 6vh
	}

	.flex-box>.w10,
	.flex-box>.w20,
	.flex-box>.w30,
	.flex-box>.w40,
	.flex-box>.w50,
	.flex-box>.w60,
	.flex-box>.w70,
	.flex-box>.w80,
	.flex-box>.w90 {
		width: 100%
	}
}