@charset "UTF-8";
/* CSS Document */

:root {
	--f-size-ss: 12px;
	--f-size-s: 14px;
	--f-size-m: 16px;
	--f-size-l: 18px;
	--f-size-ll: 20px;
	--f-size-3l: 24px;
	--f-size-4l: 28px;
  --f-family-poppins: "Poppins", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  --f-family-noto: "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	--f-family-zenkaku: "Zen Kaku Gothic New", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	--b-radius-s: 10px;
	--b-radius-m: 20px;
}

/* ==========================================================
 body
========================================================== */
body {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	position: relative;
	width: 100%;
	min-height: 100vh;
	word-wrap: break-word;
  overflow-wrap: break-word;
	font-family: var(--f-family-noto);
	text-align: justify;
}
.num {
	font-family: var(--f-family-poppins);
}
.bg-wrap {
	position: absolute;
	overflow: hidden;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 400px;
	z-index: -1;
}
.bg-wrap .bg {
  width: 100%;
	height: 100vh;
  pointer-events: none;
}
body:not(.home) .bg-wrap {
	background: #f9fdff;
}
body:not(.home) .bg-wrap .bg {
	opacity: 0.3;
}
img {
	max-width: 100%;
}
.ja, .ja img,
.en, .en img {
	display: block;
}

.wh {
	background: #fff;
}
.bl {
	background: #55b2df;
}
.lbl {
	background: #e7f0f3;
}
.dbl {
	background: #004461;
}
.or {
	background: #ffc390;
}
.lor {
	background: #fff1ea;
}
.lyeor {
	background: #fff4e6;
}
.lye {
	background: #fffbed;
}

/* ==========================================================
 header / footer
========================================================== */
.header,
.footer {
	color: #212121;
}

/* header
---------------------------------------------------------- */
.header,
.header .logo .link,
.header-nav,
.header-nav-01,
.header-nav-01 .item .parent,
.header-nav-01 > .item > .link-cmn-02,
.header-nav .header-nav-03 .link-cmn-01 {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
}
.header {
	position: absolute;
	top: 20px;
	left: 50%;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: min(calc(100% - 30px), 1240px);
	margin: 0 auto;
	font-weight: 500;
	transform: translateX(-50%);
	z-index: 5;
}
.header .logo .link {
	letter-spacing: 0.08em;
	color: #000;
	font-size: 13px;
}
.header .logo img {
	width: 160px;
	height: 40px;
	margin-right: 1.5em;
}
.header-nav {
	position: relative;
	-ms-flex-pack: end;
	justify-content: flex-end;
}
.header-nav .sns,
.header-nav .sns img {
	display: block;
}
.header-nav .sns {
	width: 30px;
	height: 30px;
	margin: 0 -5px 0 2em;
	padding: 5px;
}
.header-nav-btn {
	display: none;
}
.header-nav-01 {
	-ms-flex-pack: center;
	justify-content: center;
	height: 80px;
	letter-spacing: 0.03em;
	font-size: var(--f-size-s);
}
.header-nav-01 > .item,
.header-nav-01 .item .parent,
.header-nav-01 > .item > .link-cmn-02 {
	height: 100%;
}
.header-nav-01 .item .parent,
.header-nav-01 > .item > .link-cmn-02 {
	padding: 0 1em;
}
.header-nav-01 .nav-parent {
	position: relative;
}
.header-nav-01 .nav-parent .parent {
	cursor: pointer;
	transition: color 0.2s;
}
.header-nav-01 .nav-parent.is-active .parent {
	color: #55b2df;
}
.header-nav-01 .item .parent .en,
.header-nav-01 > .item > .link-cmn-02 .en {
	display: none;
}
.header-nav .nav-child {
	position: absolute;
	top: 100%;
	left: 50%;
	padding: 35px 50px 50px;
	color: #fff;
	background: #55b2df;
	border-radius: var(--b-radius-m);
	visibility: hidden;
	transform: translateX(-50%);
	opacity: 0;
	transition: visibility 0.2s, opacity 0.2s;
}
.header-nav .nav-child::before {
	content: "";
	display: block;
	position: absolute;
	top: -8px;
	left: 50%;
	width: 0;
  height: 0;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  border-bottom: 8px solid #55b2df;
  border-top: 0;
	transform: translateX(-50%);
}
.header-nav .nav-child .ttl {
	margin: 50px 0 20px;
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
}
.header-nav .nav-parent:not(.education):not(.welfare) .header-nav-02,
.header-nav .nav-parent:not(.education):not(.welfare) .header-nav-03 {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.header-nav .header-nav-02 .item {
	border-bottom: 1px solid #88c8e5;
}
.header-nav .header-nav-02 .item .link-cmn-01 {
	display: block;
	padding: 15px 0 14px;
}
.header-nav .header-nav-03 {
	overflow: hidden;
	margin-bottom: -30px;
}
.header-nav .header-nav-03 .item {
	margin-bottom: 30px;
}
.header-nav .header-nav-03 .link-cmn-01 {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	font-size: var(--f-size-s);
}
.header-nav .header-nav-03 .link-cmn-01 .img {
	display: block;
	width: 60px;
	margin-right: 10px;
	border-radius: 5px;
}
.header-nav .nav-parent:not(.education):not(.welfare) .nav-child {
	width: max(100%, 560px);
}
.header-nav .nav-parent.education .nav-child,
.header-nav .nav-parent.welfare .nav-child {
	width: max(100%, 325px);
}
.header-nav .nav-parent:not(.education):not(.welfare) .header-nav-02 .item {
	width: calc(50% - 15px);
}
.header-nav .nav-parent:not(.education):not(.welfare) .header-nav-03::after {
	content: "";
	display: block;
}
.header-nav .nav-parent:not(.education):not(.welfare) .header-nav-03::after,
.header-nav .nav-parent:not(.education):not(.welfare) .header-nav-03 .item {
	width: calc(33.33% - 13px);
}
.header-nav .nav-parent.is-active .nav-child {
	visibility: visible;
	opacity: 1;
}

/* footer
---------------------------------------------------------- */
.footer {
	padding-top: 240px;
}
.footer .logo {
	width: 220px;
	height: 40px;
	margin: 0 auto;
}
.footer .logo .link {
	display: block;
	width: 100%;
	height: 100%;
}
.footer-nav-01 {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 30px 0;
}
.footer-nav-01 .item + .item {
	margin-left: 2.5em;
}
.footer-nav-01 .link-cmn-01 {
	padding: 0.3em 0;
	font-size: var(--f-size-ss);
}
.footer-copy {
	display: block;
	line-height: 90px;
	letter-spacing: 0.03em;
	color: #9e9e9e;
	font-size: 10px;
	text-align: center;
	font-family: var(--f-family-poppins);
	border-top: 1px solid #eee;
}

/* ==========================================================
 pageheader / area /section
========================================================== */
/* pageheader
---------------------------------------------------------- */
.pageheader {
	position: relative;
	height: 400px;
	padding-top: 120px;
}
.pageheader .ttl {
	position: absolute;
	top: calc(50% - 50px);
	left: 50%;
	transform: translate(-50%, calc(-50% + 100px));
}
.pageheader .ttl .ja,
.pageheader .ttl .en {
	margin-left: auto;
	margin-right: auto;
}
.pageheader .ttl .ja {
	height: 26px;
	margin-bottom: 20px;
}
.pageheader .ttl .en {
	height: 14px;
}
.pageheader .nav-path .list {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	width: min(calc(100% - 40px), 1240px);
	margin: 0 auto;
	color: #616161;
	font-size: var(--f-size-ss);
}
.pageheader .nav-path .path + .path::before {
	content: "/";
	display: inline-block;
	margin: 0 0.5em;
}
.pageheader .nav-path .current {
	color: #212121;
	font-weight: 500;
}

/* area
---------------------------------------------------------- */
.area {
	position: relative;
	width: min(calc(100% - 40px), 1240px);
	margin: 120px auto 0;
	z-index: 1;
}

/* sec
---------------------------------------------------------- */
.sec-cmn-01 {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
body section:not(.sec-home-02) + section:not(.sec-home-02) {
	margin-top: 100px;
	padding-top: 40px;
}
.sec-cmn-01 .heading {
	width: min(30%, 300px);
}
.sec-cmn-01 .contents {
	width: calc(100% - 340px);
	margin-top: 0.5em;
}

/* heading
---------------------------------------------------------- */
.heading-cmn-01::before,
.heading-cmn-01 img {
	display: inline-block;
	vertical-align: middle;
}
.heading-cmn-01::before {
	content: "";
	width: 24px;
	height: 24px;
	margin-right: 15px;
	border: 8px solid #55b2df;
	border-radius: 50%;
}
.heading-cmn-01 img {
	height: 22px;
}
.heading-cmn-02 {
	height: 25px;
	margin-bottom: 60px;
	text-align: center;
}
.heading-cmn-02 img {
	display: block;
	height: 100%;
	margin: 0 auto;
}

.box-entry {
	position: fixed;
	right: 20px;
	bottom: 20px;
	width: min(100%, 260px);
	padding: 20px;
	line-height: 1;
	background: #55b2df;
	border-radius: 30px;
	box-shadow: 0 0 10px 0 rgba(0, 68, 97, 0.15);
	transition: border-radius 0.2s, background-color 0.2s;
	z-index: 5;
	cursor: pointer;
}
.box-entry .ttl {
	position: relative;
	color: #fff;
	font-size: var(--f-size-m);
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
	transition: color 0.2s;
}
.box-entry .ttl::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -5px;
	display: block;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	-webkit-mask: url("../img/ico_arrow_01.svg") no-repeat 50% 50% / 100% auto;
  mask: url("../img/ico_arrow_01.svg") no-repeat 50% 50% / 100% auto;
	background: #fff;
	transform: rotate(-90deg);
	transition: background-color 0.2s;
}

.box-entry .box-entry-in {
	display: none;
	margin-top: 20px;
	border-top: 1px solid #eee;
}
.box-entry .type {
	display: block;
	margin: 20px 0 6px;
	color: #000;
	font-size: var(--f-size-ss);
	font-weight: 500;
}
.box-entry .btn-wrap {
	width: 100%;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.box-entry .btn-wrap .btn-cmn-01 {
	height: 32px;
	width: calc(50% - 2px);
	max-width: none;
	letter-spacing: 0;
	margin: 4px 0 0;
	padding-bottom: 1px;
	font-size: var(--f-size-ss);
	border-radius: 5px;
}
.box-entry .btn-wrap .btn-cmn-01.guideline {
	background: #004461;
}
/* .box-entry .btn-wrap .btn-cmn-01.contact {
	background: #728ca7;
} */
.box-entry.is-open {
	background: #fff;
	border-radius: var(--b-radius-s);
}
.box-entry.is-open .ttl {
	color: #000;
}
.box-entry.is-open .ttl::after  {
	background: #212121;
}
.box-entry.is-open .ttl::after {
	transform: rotate(90deg);
}

/* ==========================================================
 汎用
========================================================== */
/* txt / ttl
---------------------------------------------------------- */
.txt-main-01,
.ttl-cmn-01,
.ttl-cmn-02,
.ttl-cmn-03,
.ttl-cmn-04 {
	line-height: 1.65;
	color: #000;
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
}

span[class^="txt-cmn-"],
span[class^="txt-s-"] {
	display: block;
}
.txt-cmn-01 {
	margin-bottom: 1.875em;
}
.txt-cmn-02 {
	margin-bottom: 1em;
}
.txt-cmn-03 {
	margin-bottom: 3.5em;
}
.txt-main-01 {
	margin-bottom: 60px;
	letter-spacing: 0.15em;
	font-size: var(--f-size-3l);
	text-align: center;
}
.txt-s-01,
.txt-s-02,
.txt-s-03 {
	line-height: 1.875;
}
.txt-s-01,
.txt-s-02 {
	font-size: var(--f-size-s);
}
.txt-s-01 {
	margin-top: 1.5em;
}
.txt-s-02 {
	margin-top: 0.8em;
}
.txt-s-03 {
	font-size: var(--f-size-ss);
}
.txt-bg-01 {
	display: inline-block;
	padding: 0 0.8em;
}
.txt-bg-01 + .txt-bg-01 {
	margin-top: 0.8em;
}
.txt-color-bl,
.txt-line-01 {
	color: #55b2df;
}
.txt-color-or {
	color: #ffb47a;
}
.txt-color-gy-01 {
	color: #616161;
}
.txt-color-gy-02 {
	color: #727272;
}
.txt-line-01 {
	margin-bottom: 1.5em;
	font-size: var(--f-size-l);
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
}
.txt-line-01 span {
	display: inline-block;
}
.txt-line-01 span::after {
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background: #55b2df;
	border-radius: 2px;
}
.txt-ballon-01,
.txt-ballon-02 {
	position: relative;
	line-height: 1.875;
}
.txt-ballon-01 {
	padding: 1.8em 0 2em 70px;
	border-radius: 75px;
}
.txt-ballon-01::before,
.txt-ballon-02::before {
	content: "";
	display: block;
	position: absolute;
	width: 0;
  height: 0;
}
.txt-ballon-01::before {
	left: 80px;
	bottom: -20px;
}
.txt-ballon-01.lor::before {
  border-top: 10px solid #fff1ea;
  border-right: 10px solid #fff1ea;
  border-bottom: 10px solid transparent;
  border-left: 10px solid transparent
}
.txt-ballon-02 {
	padding: 1.5em 4em;
	background: #fff;
	border-radius: 5em;
}
.txt-ballon-02 + .txt-ballon-02 {
	margin-top: 10px;
}
/* .txt-ballon-02::before {
	top: 50%;
	transform: translateY(-50%);
}
.txt-ballon-02:nth-of-type(even)::before {
	right: -30px;
  border-top: 11px solid transparent;
  border-bottom: 11px solid transparent;
  border-left: 32px solid #fff;
  border-right: 0;
}
.txt-ballon-02:nth-of-type(odd)::before {
	left: -30px;
	border-style: solid;
  border-top: 11px solid transparent;
  border-bottom: 11px solid transparent;
  border-right: 32px solid #fff;
  border-left: 0;
} */
sup {
	font-size: 50%;
	vertical-align: super;
}

.ttl-cmn-01 {
	margin-bottom: 1em;
	letter-spacing: 0.12em;
	font-size: var(--f-size-4l);
}
.ttl-cmn-02 {
	margin-bottom: 1.25em;
	letter-spacing: 0.06em;
	font-size: var(--f-size-3l);
}
.ttl-cmn-03 {
	margin-bottom: 1em;
	letter-spacing: 0.08em;
	font-size: var(--f-size-ll);
}
.ttl-cmn-04 {
	margin-bottom: 1em;
	font-size: var(--f-size-l);
}
.list-cmn-01 .ttl .ttl-cmn-03,
.list-cmn-01 .txt p.ttl-cmn-03 {
	margin-bottom: 0;
}

/* link / btn
---------------------------------------------------------- */
.link-cmn-01 {
	display: inline-block;
	transition: opacity 0.2s;
}
.link-cmn-01:hover {
	opacity: 0.6;
}
.link-cmn-02 {
	transition: color 0.2s;
}
.link-cmn-02:hover {
	color: #55b2df;
}
.link-cmn-03 {
	text-decoration: underline;
}
.link-cmn-03:hover {
	text-decoration: none;
}
.link-tel {
	pointer-events: none;
}

.tag-cmn-01,
.tag-cmn-02,
.tag-cmn-03,
.tag-cmn-04 {
	line-height: 1;
	letter-spacing: 0.1em;
	color: #fff;
	font-weight: 500;
	text-align: center;
}
.tag-cmn-01,
.tag-cmn-02 {
	height: 20px;
	padding-top: 4px;
	font-family: var(--f-family-poppins);
}
.tag-cmn-01 {
	display: block;
	width: 120px;
	margin-bottom: 20px;
	font-size: 13px;
	border-radius: 10px;
}
.tag-cmn-02 {
	position: relative;
	top: -2px;
	display: inline-block;
	width: 40px;
	margin-right: 5px;
	font-size: var(--f-size-ss);;
	border-radius: 3px;
	vertical-align: middle;
}
.tag-cmn-03,
.tag-cmn-04 {
	display: block;
	height: 40px;
	margin-bottom: 1.8em;
	padding-top: 11px;
	font-size: var(--f-size-m);
	border-radius: 20px;
}
.tag-cmn-03 {
	width: 280px;
}
.tag-cmn-04 {
	width: 180px;
}

a[class^="btn-cmn-"] {
	position: relative;
	overflow: hidden;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 100px;
	letter-spacing: 0.06em;
	color: #fff;
	font-size: var(--f-size-3l);
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
	text-align: center;
	border-radius: var(--b-radius-s);
	transition: opacity 0.2s;
}
a[class^="btn-cmn-"]:hover {
	opacity: 0.6;
}
a[class^="btn-cmn-"].mynavi {
	background: #00a9e9;
}
a[class^="btn-cmn-"].rikunabi {
	background: #0069b6;
}
a[class^="btn-cmn-"].line {
	background: #06c755;
}
a[class^="btn-cmn-"].jobree {
	background: #0b85bb;
}
.btn-cmn-02,
.btn-cmn-03 {
	margin: 0 auto;
}

.btn-career .btn-cmn-02{
	margin:0 10px;
}

.btn-cmn-01 {
	width: min(80%, 300px);
}
.btn-cmn-02 {
	width: min(80%, 420px);
}
.btn-cmn-03 {
	width: min(80%, 540px);
}
.btn-wrap {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.btn-wrap .btn-cmn-01 {
	max-width: 30%;
	margin: 0 10px;
}

.is-exit::after {
	content: "";
	-webkit-mask: url("../img/ico_exit.svg") no-repeat 50% 50% / 100% auto;
  mask: url("../img/ico_exit.svg") no-repeat 50% 50% / 100% auto;
	vertical-align: middle;
}
a[class^="link-"].is-exit::after {
	position: relative;
	top: -0.1em;
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-left: 0.4em;
	background: #212121;
}
a[class^="btn-"].is-exit::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 30px;
	width: 24px;
	height: 24px;
	background: #fff;
	transform: translateY(-50%);
}

/* img
---------------------------------------------------------- */
.img-cmn-01,
.img-cmn-02,
.img-cmn-03 {
	overflow: hidden;
	border-radius: var(--b-radius-s);
}
.img-cmn-01,
.img-cmn-02 {
	border-radius: var(--b-radius-s);
}
.img-cmn-02 {
	margin-bottom: 50px;
}
.img-cmn-03 {
	margin-bottom: 40px;
	border-radius: var(--b-radius-m);
}
.img-wrap-01 {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.img-wrap-01 img {
	width: min(calc(33.33% - 5px), 290px);
}
body:not(.home):not(.message) figure:not(.img-wrap-01) img + img {
	margin-top: 20px;
}

/* list
---------------------------------------------------------- */
.list-cmn-01 .item,
.list-cmn-02,
.list-cmn-03,
.dlist-cmn-01,
.dlist-cmn-02,
.dlist-cmn-03, 
.dlist-cmn-04 {
	display: -ms-flexbox;
	display: flex;
}
.list-cmn-02,
.list-cmn-03,
.dlist-cmn-01,
.dlist-cmn-02,
.dlist-cmn-04 {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.list-cmn-01 .item {
	padding: 30px 40px;
	line-height: 1.875;
	border-radius: var(--b-radius-m);
	background: #eef7fa;
}
.list-cmn-01 .item + .item {
	margin-top: 20px;
}
.list-cmn-01 .ttl {
	width: 160px;
}
.list-cmn-01 .txt {
	width: calc(100% - 160px);
}
.list-cmn-01 .txt .ttl-cmn-03 {
	margin-bottom: 0.5em;
}

.list-cmn-02,
.list-cmn-03 {
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.list-cmn-02 {
	margin-bottom: -20px;
}
.list-cmn-02 .item {
	width: calc(50% - 10px);
	margin-bottom: 20px;
}
.list-cmn-03 {
	margin-bottom: -40px;
}
.list-cmn-03 .item {
	width: calc(50% - 20px);
	margin-bottom: 40px;
}

.list-dot-01,
.list-dot-02 {
	line-height: 1.65;
}
.list-dot-01 > li + li,
.list-dot-02 > li + li {
	margin-top: 0.3em;
}
.list-dot-01 > li {
	list-style: disc;
	margin-left: 1.5em;
}
.list-dot-02 > li {
	padding-left: 1em;
}
.list-dot-02 > li::before {
	content: "●";
	display: inline-block;
	margin-left: -1em;
}

.dlist-cmn-01 .ttl,
.dlist-cmn-01 .txt {
	padding: 1.5em 0;
	border-bottom: 1px solid #eee;
}
.dlist-cmn-01 .ttl:first-child,
.dlist-cmn-01 .ttl:first-child + .txt {
	padding-top: 0;
}
.dlist-cmn-01 .ttl {
	width: 170px;
	color: #212121;
	font-weight: 500;
}
.dlist-cmn-01 .txt {
	width: calc(100% - 170px);
}

.dlist-cmn-01 .ttl .center{
	display: flex;
	flex-flow: column;
	align-items: center;
	width: fit-content;
}
.dlist-cmn-02,
.dlist-cmn-03 {
	-ms-flex-align: center;
	align-items: center;
	line-height: 1;
}
.dlist-cmn-02 .ttl,
.dlist-cmn-02 .txt {
	margin-bottom: 10px;
}
.dlist-cmn-02 .ttl,
.dlist-cmn-03 .ttl {
	width: 50px;
	height: 20px;
	margin-right: 10px;
	padding-top: 4px;
	color: #fff;
	font-size: 75%;
	font-weight: 700;
	text-align: center;
	border-radius: 5px;
}
.dlist-cmn-02 .ttl {
	background: #afafaf;
}
.dlist-cmn-03 {
	margin-bottom: 1.8em;
	font-family: var(--f-family-zenkaku);
}
.dlist-cmn-03 .ttl {
	background: #55b2df;
}
.dlist-cmn-02 .txt,
.dlist-cmn-03 .txt {
	width: calc(100% - 60px);
}
.dlist-cmn-03 .txt {
	font-size: var(--f-size-ll);
	font-weight: 700;
}

.list-aco-01 .item {
	overflow: hidden;
	line-height: 1.875;
	background: #adbccc;
	border-radius: var(--b-radius-m);
}
.list-aco-01 .item + .item {
	margin-top: 20px;
}
.list-aco-01 .ttl,
.list-aco-01 .txt-in {
	position: relative;
	color: #fff;
}
.list-aco-01 .ttl {
	padding: 20px 30px 20px 90px;
	font-size: var(--f-size-ll);
	font-weight: 700;
	background: #a4b5c7;
	transition: background-color 0.2s, border-radius 0.2s;
	z-index: 1;
	border-radius: 10px 10px 0 0;
}
.list-aco-01 .ttl:hover {
	background: #b8c6d5;
	cursor: pointer;
}
.list-aco-01 .txt {
	display: none;
}
.list-aco-01 .txt-in {
	padding: 40px 30px 40px 90px;
	font-weight: 500;
	border-radius: 0 0 10px 10px;
}
.list-aco-01 .ttl::after,
.list-aco-01 .ttl::before,
.list-aco-01 .txt-in::before {
	content: "";
	position: absolute;
	display: block;
	background: no-repeat 50% 50%;
	background-size: contain;
	border-radius: 50%;
}
.list-aco-01 .ttl::before,
.list-aco-01 .txt-in::before {
	left: 30px;
	width: 40px;
	height: 40px;
}
.list-aco-01 .ttl::before {
	top: 50%;
	background-image: url("../img/ico_q.svg");
	background-color: #728ca7;
	transform: translateY(-50%);
}
.list-aco-01 .ttl::after {
	top: 50%;
	right: 30px;
	width: 32px;
	height: 32px;
	margin-top: -16px;
	-webkit-mask: url("../img/ico_arrow_01.svg") no-repeat 50% 50% / 100% auto;
  mask: url("../img/ico_arrow_01.svg") no-repeat 50% 50% / 100% auto;
	background: #fff;
	transform: rotate(90deg);
}
.list-aco-01 .item.is-open .ttl::after {
	transform: rotate(-90deg);
}
.list-aco-01 .txt-in::before {
	top: 40px;
	background-image: url("../img/ico_a.svg");
	background-color: #fff;
}
.dlist-cmn-04 .ttl {
	width: 100px;
	font-weight: 400;
	border: none;
}
.dlist-cmn-01 .link {
	text-decoration: underline;
	color: #037abe;
}

.dlist-in-01 ,
.dlist-in-02 ,
.dlist-in-03 {
	display: grid;
}
.dlist-in-01 {
	grid-template-columns: 120px auto;
}
.dlist-in-02 {
	grid-template-columns: minmax(50px, 300px) auto;
}
.dlist-in-02 dd ,
.dlist-in-03 dd {
	width: 90px;
	text-align: right;
}
.dlist-in-03 {
	grid-template-columns: minmax(50px, 420px) auto;
}


/* box
---------------------------------------------------------- */
.box-cmn-01,
.box-cmn-02,
.box-line-01,
.box-bg-03 {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.box-line-01,
.box-line-02,
.box-line-03,
.box-bg-01,
.box-bg-02,
.box-bg-03 {
	border-radius: var(--b-radius-m);
}
.box-line-01 {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 70px;
	border: 10px solid #e7f0f3;
}
.box-line-01::before,
.box-line-01::after {
	content: "";
	display: block;
	position: absolute;
	width: 20px;
	height: 20px;
	background: #fff;
}
.box-line-01::before {
	top: -20px;
	left: 50px;
}
.box-line-01::after {
	bottom: -20px;
	right: 50px;
}
.box-line-02 {
	padding: 60px;
	border: 5px solid #e7f0f3;
}
.box-line-03 {
	position: relative;
	padding: 30px;
	border: 5px solid #fff;
}
.box-line-03 .ttl {
	display: inline-block;
	position: absolute;
	top: calc(-30px + 0.7em);
	left: calc(30px - 0.5em);
	padding: 0 0.5em;
	font-weight: 500;
}

.box-cmn-01 {
	margin-bottom: 3.75em;
}
.box-bg-01,
.box-bg-03 {
	padding: 50px 60px;
}
.box-bg-02 {
	position: relative;
	padding: 70px;
	background: #eef7fa;
}
.box-bg-02::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 70px;
	width: 50px;
	height: 10px;
	border-radius: 0 0 5px 5px;
	background: #55b2df;
}
.box-bg-01 + .box-bg-01,
.box-bg-03 + .box-bg-03 {
	margin-top: 20px;
}
div[class^="box-"] .box-in {
	width: 60%;
}
div[class^="box-"] .box-in + .img {
	width: min(40%, 360px);
}
div[class^="box-bg"] .box-in + .img {
	width: min(45%, 330px);
}
div[class^="box-line-"] .box-in + .img {
	width: min(40%, 300px);
}
.box-iframe {
	overflow: hidden;
	position: relative;
	height: 0;
	margin-top: 60px;
	padding-top: 56.15%;
	border-radius: var(--b-radius-s);
}
.box-iframe iframe{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
}

/* ==========================================================
 各ページ
========================================================== */
.list-menu {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.list-menu .item {
	width: calc(50% - 15px);
	margin-bottom: 30px;
}
.list-menu .item .link-cmn-01 {
	position: relative;
	display: block;
	padding: 1.5em 2em;
	color: #212121;
	font-weight: 500;
	background: #eef7fa;
	border-radius: var(--b-radius-s);
}
.list-menu .item .link-cmn-01::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.5em;
	display: block;
	width: 30px;
	height: 30px;
	-webkit-mask: url("../img/ico_arrow_01.svg") no-repeat 50% 50% / 100% auto;
  mask: url("../img/ico_arrow_01.svg") no-repeat 50% 50% / 100% auto;
	background: #55b2df;
	transform: translateY(-50%);
}

.box-line-01.interview {
	padding: 30px 30px 0 20px;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	/* transition: border-color 0.2s; */
}
.box-line-01.interview + .box-line-01.interview {
	margin-top: 20px;
}
.box-line-01.interview .box-in {
	margin-top: 30px;
	width: min(60%, calc(100% - 370px));
}
.box-line-01.interview .ttl-cmn-02 {
	margin-bottom: 0.8em;
}
.box-line-01.interview .txt-color-gy-02 {
	font-size: var(--f-size-s);
	font-weight: 500;
}
.box-line-01.interview .link-more {
	position: absolute;
	right: 40px;
	bottom: 30px;
	color: #55b2df;
	font-size: var(--f-size-s);
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
	transition: right 0.2s;
}
.box-line-01.interview .link-more::after {
	content: "";
	position: relative;
	top: -2px;
	display: inline-block;
	width: 30px;
	height: 30px;
	margin-left: 10px;
	background: url("../img/ico_arrow_02.svg") no-repeat 50% 50% #55b2df;
	border-radius: 50%;
	vertical-align: middle;
}
/* .box-line-01.interview:hover {
	border-color: #728ca7;
} */
@media screen and (min-width: 800px) {
	.box-line-01.interview:hover .link-more {
		right: 32px;
	}
}
.box-line-01.interview .img {
	width: min(45%, 350px);
}

.pageheader-interview {
	width: min(100%, 1240px);
	height: auto;
	margin: 0 auto;
	z-index: 1;
}
.pageheader-interview .interview-ttl {
	position: relative;
	overflow: hidden;
	display: -ms-flexbox;
	display: flex;
	background: #55b2df;
	margin-top: 80px;
	border-radius: var(--b-radius-m);
}
.pageheader-interview .interview-ttl .txt {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-align: start;
	align-items: flex-start;
	width: min(100%, 510px);
	padding: 80px 40px 80px 80px;
}
.pageheader-interview .interview-ttl .txt::before {
	content: "";
	display: block;
	width: 84px;
	height: 13px;
	background: url("../img/business-job/ttl_interview_01.svg") no-repeat 50% 50%;
	background-size: contain;
}
.pageheader-interview .interview-ttl .txt img {
	margin-top: auto;
}
body:not(.interview-job-01) .pageheader-interview .interview-ttl .txt img {
	height: 122px;
}
body.interview-job-01 .pageheader-interview .interview-ttl .txt img {
	height: 172px;
}
.pageheader-interview .interview-ttl .img {
	max-width: 730px;
}
.pageheader-interview .profile {
	margin: 1.3em auto 0;
	line-height: 1.6;
	text-align: right;
}
.pageheader-interview .profile .txt-color-bl {
	display: inline-block;
	margin-right: 1em;
	font-size: var(--f-size-ll);
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
}
.pageheader-interview .profile .txt-color-gy-02 {
	font-size: var(--f-size-s);
	font-weight: 500;
}
body.interview .area,
.pageheader-interview .profile {
	max-width: 1100px;
}
body.interview .sec-cmn-01 .heading {
	width: min(35%, 390px);
}
body.interview .sec-cmn-01 .contents {
	width: min(65%, 660px);
	margin-top: 0;
}
body.interview .heading-interview-01 span {
	display: inline-block;
	padding: 9px 10px;
	background: linear-gradient(transparent 0, rgba(255, 247, 222) 0) no-repeat;
	background-size: 0% 100%;
	transition: background-size 0.5s ease-out;
	/* background: #fff7de; */
}
body.interview .heading-interview-01 span.is-on {
  background-size: 100% 100%;
}
body.interview .heading-interview-01 img {
	display: block;
	height: 22px;
}
body.interview .box-cmn-01 {
	margin-bottom: 0;
}
body.interview .ttl-schedule {
	width: 260px;
}
body.interview .ttl-schedule .ja {
	margin-bottom: 20px;
	height: 22px;
}
body.interview .ttl-schedule .en {
	height: 11px;
}
body.interview .list-schedule {
	width: min(80%, 600px);
}
body.interview .list-schedule .item {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	padding: 0.8em 40px;
	font-weight: 500;
	background: #fff;
	border-radius: var(--b-radius-s);
}
body.interview .list-schedule .item + .item {
	margin-top: 10px;
}
body.interview .list-schedule .txt-color-bl {
	min-width: 70px;
	margin-right: 20px;
	font-size: var(--f-size-l);
}
body.interview .list-schedule .txt {
	display: inline-block;
	padding-bottom: 0.2em;
}
body.interview .img-cmn-03 {
	margin-bottom: 0;
}
body.interview .img-cmn-03 + .img-cmn-03 {
	margin-top: 50px;
}
body.interview-05 .sec-cmn-01:nth-of-type(3) .heading-interview-01 span:nth-of-type(2) img {
	height: 23px;
}

/* company
---------------------------------------------------------- */
/* outline ----------- */
.box-outline {
	display: -ms-flexbox;
	display: flex;
	padding: 60px;
	border-radius: var(--b-radius-m);
	background: #eef7fa;
}
.box-outline + .box-outline {
	margin-top: 20px;
}
.box-outline .ttl {
	width: 110px;
	margin-top: 0.4em;
}
.box-outline .ttl .ja {
	height: 22px;
	margin-bottom: 20px;
}
.box-outline .ttl .en {
	height: 14px;
}
.box-outline .txt {
	width: calc(100% - 110px);
	line-height: 2.5;
	letter-spacing: 0.1em;
	color: #212121;
	font-weight: 700;
	font-family: var(--f-family-zenkaku);
}
.outline .dlist-cmn-01 .ttl {
	width: 210px;
}
.outline .dlist-cmn-01 .txt {
	width: calc(100% - 210px);
}

/* message ----------- */
body.message .box-cmn-02 .box-in {
	width: min(70%, 580px);
}
body.message .box-cmn-02 .img {
	width: 180px !important;
	margin: 0.5em auto 0;
}
body.message .box-cmn-02 .img figcaption {
	margin-top: 30px;
	text-align: right;
}
body.message .box-cmn-02 .img .position,
body.message .box-cmn-02 .img .name {
	display: block;
	line-height: 1;
	color: #000;
	text-align: right;
}
body.message .box-cmn-02 .img .position {
	margin-bottom: 10px;
	font-size: var(--f-size-s);
}
body.message .box-cmn-02 .img .name {
	font-size: var(--f-size-3l);
}
.sec-cmn-01.staff figure {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
}
.sec-cmn-01.staff .img-cmn-02:first-of-type {
	max-width: 500px;
}
.sec-cmn-01.staff .img-cmn-02:last-of-type {
	max-width: 400px;
}

/* data ----------- */
body.data {
	text-align: left;
}
body.data .box-bg-02 .txt-01,
body.data .box-bg-02 .txt-02 {
	line-height: 1;
	font-weight: 700;
}
body.data .box-bg-02 .txt-01 {
	margin-top: 1.8em;
	font-size: 36px;
}
body.data .box-bg-02 .txt-02 {
	font-size: var(--f-size-3l);
}
body.data .box-bg-02 .txt-02:nth-of-type(1) {
	width: 45%;
}
body.data .box-bg-02 .txt-02:nth-of-type(2) {
	width: 55%;
}
body.data .box-bg-02 .num-01,
body.data .box-bg-02 .num-02 {
	display: inline-block;
	margin-right: 0.25em;
}
body.data .box-bg-02 .num-01 {
	height: 62px;
}
body.data .box-bg-02 .num-02 {
	height: 56px;
	margin-left: 2px;
}
body.data .box-bg-02 figure {
	max-width: 210px;
	margin: -100px -30px 0 auto;
}
/* iPad表示 */
@media screen and (max-width: 1200px) {
	body.data .box-bg-02 figure {
		margin: auto;
	}
	body.data .box-bg-02 .num-01 {
		height: 48px;
	}
	body.data .box-bg-02 .num-02 {
		height: 47px;
	}
}
body.data .box-bg-02 .box {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
}
body.data .box-bg-02 .s-block {
	margin-top: 15px;
}

/* voices ----------- */
body.voices .box-bg-01 {
	padding: 80px;
}
body.voices .tag-cmn-01 {
	width: 80px;
	margin-bottom: 10px;
}
body.voices .list-voices,
body.voices .voices-wrap-01,
body.voices .voices-wrap-02,
body.voices .list-rank-01 .item {
	display: -ms-flexbox;
	display: flex;
}
body.voices .voices-wrap-01,
body.voices .voices-wrap-02,
body.voices .list-rank-01 .item {
	-ms-flex-align: center;
	align-items: center;
}
body.voices .list-voices,
body.voices .voices-wrap-01 {
	-ms-flex-pack: justify;
	justify-content: space-between;
}
body.voices .list-voices,
body.voices .voices-wrap-02 {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
body.voices .list-voices .item-01 {
	width: 100%;
}
body.voices .list-voices .item-02 {
	width: calc(50% - 10px);
	margin-top: 0;
}
body.voices .voices-wrap-01 .list-rank-01,
body.voices .voices-wrap-01 .list-rank-01 + .box-line-03 {
	width: calc(50% - 30px);
}
body.voices .voices-wrap-02 {
	-ms-flex-pack: center;
	justify-content: center;
}
body.voices .list-rank-01 {
	overflow: hidden;
	font-size: var(--f-size-l);
	font-weight: 500;
	border-radius: var(--b-radius-m);
	background: #fff;
}
body.voices .list-rank-01 .item h4 {
	line-height: 1;
	text-align: center;
}
body.voices .list-rank-01 .item h4 img {
	display: inline-block;
	height: 46px;
	margin-right: 8px;
	vertical-align: baseline;
}
body.voices .list-rank-01 .num {
	position: relative;
	top: 0.05em;
	font-size: var(--f-size-3l);
}
body.voices .box-bg-01.lbl .list-rank-01 .item h4 {
	width: 170px;
}
body.voices .box-bg-01.lbl .list-rank-01 .item ul,
body.voices .box-bg-01.lbl .list-rank-01 .item p {
	width: calc(100% - 170px);
}
body.voices .box-bg-01.lbl .list-rank-01 .item p img.voice-01 {
	height: 30px;
}
body.voices .box-bg-01.lye .list-rank-01 .item h4 {
	width: 90px;
}
body.voices .box-bg-01.lye .list-rank-01 .item p {
	width: calc(100% - 90px);
}
body.voices .box-bg-01.lbl .list-rank-01 .item.rank-01 {
	height: 110px
}
body.voices .box-bg-01.lbl .list-rank-01 .item:not(.rank-01) {
	height: 90px;
}
body.voices .box-bg-01.lye .list-rank-01 .item {
	height: 60px;
}
body.voices .box-bg-01.lbl .list-rank-01 .rank-01 h4 {
	font-size: 200%;
}
body.voices .box-bg-01.lbl .list-rank-01 .rank-02 h4,
body.voices .box-bg-01.ye .list-rank-01 h4 {
	font-size: var(--f-size-3l);
}

body.voices .box-bg-01.lbl .box-line-03 .ttl,
body.voices .box-bg-01.lye .list-rank-01 .rank-01 {
	background: #e7f0f3;
}
body.voices .box-bg-01.lye .box-line-03 .ttl,
body.voices .box-bg-01.lbl .list-rank-01 .rank-01 {
	background: #fffbed;
}
body.voices .box-bg-01.lbl .list-rank-01 .item + .item {
	border-top: 1px solid #e7f0f3;
}
body.voices .box-bg-01.lye .list-rank-01 .item + .item {
	border-top: 1px solid #f3ebdd;
}

body.voices .box-bg-01 .ttl-cmn-02 {
	margin-bottom: 1.8em;
}
body.voices .voices-wrap-01 .graph {
	width: min(40%, 270px);
}
body.voices .voices-wrap-01 .graph + .box-line-03 {
	width: min(60%, 430px);
}
body.voices .bl-01,
body.voices .bl-02,
body.voices .bl-03 {
	padding: 1.5em 2em;
	line-height: 1;
	margin: 0 5px 10px;
	color: #fff;
	font-weight: 500;
	text-align: center;
	border-radius: 2em;
}
body.voices .bl-01 {
	background: #2894ce;
}
body.voices .bl-02 {
	background: #59add9;
}
body.voices .bl-03 {
	background: #8ac5e4;
}
body.voices .txt-ballon-02 .txt-color-bl {
	font-weight: 500;
}
body.voices .box-bg-01.lbl .txt-ballon-02 .txt-color-bl {
	background: #fff7de;
}
body.voices .box-bg-01.lye .txt-ballon-02 .txt-color-bl {
	background: #e7f0f3;
}
body.voices .box-bg-01.lye .tag-cmn-01 {
	background: #ffb47a;
}

/* business-job
---------------------------------------------------------- */
/* index ----------- */
.list-job {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.list-job .item {
	width: calc(50% - 10px);
}
.list-job .item .img-cmn-01 {
	position: relative;
	margin-bottom: 1em;
}
.list-job .item .img-cmn-01::after {
	content: "";
	position: absolute;
	right: 20px;
	bottom: 20px;
	display: block;
	width: 30px;
	height: 30px;
	background: url("../img/ico_arrow_02.svg") no-repeat 50% 50% #ffb47a;
	background-size: 24px;
	border-radius: 50%;
}

.table-job {
	table-layout: fixed;
	width: 100%;
  border-collapse: collapse;
	background: #f1f1f1;
}
.table-job .head,
.table-job td {
	border: 1px solid #fff;
}
.table-job .head,
.table-job td.flow {
	padding: 20px 0;
	font-weight: 700;
	text-align: center;
}
.table-job .flow {
	position: sticky;
	top: 0;
  left: 0;
	z-index: 1;
}
.table-job .head {
	color: #fff;
	font-size: var(--f-size-l);
}
.table-job .head.flow {
	width: 170px;
	background: #616161;
}
.table-job .head:not(.flow) {
	background: #55b2df;
}
.table-job td:not(.flow) {
	padding: 20px 30px;
	line-height: 1.65;
	letter-spacing: -0.005em;
}
.table-job td.flow {
	/* position: relative; */
	color: #212121;
	background: #e0e0e0;
}
.table-job tr + tr td.flow span {
	display: block;
}
.table-job tr + tr td.flow span::before,
.table-job tr + tr td.flow span::after {
	content: "";
	position: absolute;
	left: 50%;
	display: block;
	width: 0;
  height: 0;
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
  border-top: 12px solid;
	transform: translateX(-50%);
}
.table-job tr + tr td.flow span::before {
	top: 0;
  border-top-color: #fff;
	z-index: 1;
}
.table-job tr + tr td.flow span::after {
	top: -2px;
  border-top-color: #e0e0e0;
	z-index: 2;
}
.table-job .task {
	font-size: var(--f-size-s);
	background: #eaf2f9;
}

/* works ----------- */
body.works .list-cmn-03 .item .img-cmn-01 {
	margin-bottom: 30px;
}
body.works .link-works {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: min(100%, 900px);
	height: min(50vw, 450px);
	margin: 120px auto 0;
	background: url("../img/business-job/img_works_05.jpg") no-repeat 50% 50%;
	background-size: contain;
	border-radius: var(--b-radius-s);
}
body.works .link-works .btn-cmn-03 {
	transition: background-color 0.2s;
	opacity: 1 !important;
}
body.works .link-works .btn-cmn-03:hover {
	background: #98d1ec;
}

/* education
---------------------------------------------------------- */
/* index ----------- */
body.education .list-cmn-01 .item {
	position: relative;
}
body.education .list-cmn-01 .item:nth-of-type(1)::before,
body.education .list-cmn-01 .item:nth-of-type(4)::before {
	content: "";
	position: absolute;
	background: no-repeat 50% 50%;
	background-size: contain;
	z-index: 1;
}
body.education .list-cmn-01 .item:nth-of-type(1)::before {
	top: 10px;
	right: 20px;
	width: 240px;
	height: 240px;
	background-image: url("../img/education/img_education_05.png");
}
body.education .list-cmn-01 .item:nth-of-type(4)::before {
	top: 0;
	right: 80px;
	width: 210px;
	height: 210px;
	background-image: url("../img/education/img_education_06.png");
}
body.education .list-cmn-01 .ttl {
	width: 210px;
}
body.education .list-cmn-01 .txt {
	width: calc(100% - 210px);
}
body.education .box-bg-02 {
	position: relative;
	height: min(120vw, 520px);
}
body.education .box-bg-02 .ttl-cmn-02 {
	margin-bottom: 0.5em;
}
body.education .box-bg-02 .img {
	position: absolute;
	left: 50%;
	bottom: 70px;
	width: min(70%, 200px);
	transform: translateX(-50%);
}
body.education .box-voices {
	position: relative;
	margin: 3.75em 0 6.3em;
}
body.education .box-voices .ttl-cmn-02 {
	width: 260px;
	margin-bottom: 2.5em;
	text-align: center;
}
body.education .box-voices .ttl-cmn-02 .en {
	margin-top: 0.5em;
	font-size: var(--f-size-m);
}
body.education .box-voices > div {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: end;
	align-items: flex-end;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 60px;
}
body.education .box-voices > div .txt-ballon-01:first-of-type {
	margin: 0 0 40px 90px;
}
body.education .box-voices > div .img {
	position: absolute;
	top: 20px;
	right: 40px;
	max-width: 300px;
}
body.education .box-voices > div .txt-ballon-01 {
	width: calc(50% - 20px);
}
body.education .box-license {
	width: 100%;
	margin-top: 1.5em;
}
body.education .box-license .ico {
	position: relative;
	padding: 30px 50px 30px 120px;
	color: #616161;
	font-size: var(--f-size-3l);
	font-weight: 700;
	border-radius: var(--b-radius-m);
}
body.education .box-license .ico::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50px;
	width: 48px;
	height: 48px;
	background: no-repeat 50% 50%;
	background-size: contain;
	transform: translateY(-50%);
}
body.education .box-license .ico.ico-money-01::before {
	background-image: url("../img/education/ico_education_02-01.svg");
}
body.education .box-license .ico-book {
	margin-top: 20px;
}
body.education .box-license .ico.ico-book::before {
	background-image: url("../img/education/ico_education_02-02.svg");
}
body.education .box-license .ico-money-02 {
	margin-top: 70px;
}
body.education .box-license .ico.ico-money-02::before {
	background-image: url("../img/education/ico_education_02-03.svg");
}
body.education .box-license .ico-money-02::after {
	content: "＋";
	display: block;
	position: absolute;
	top: -50px;
	left: 50%;
	line-height: 1;
	color: #ffe297;
	font-size: var(--f-size-3l);
	font-weight: 700;
	transform: translateX(-50%);
}
body.education .box-license .ico::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50px;
	width: 48px;
	height: 48px;
	background: no-repeat 50% 50%;
	background-size: contain;
	transform: translateY(-50%);
}

/* welfare
---------------------------------------------------------- */
/* index ----------- */
body.welfare .box-line-01.interview {
	margin-top: 40px;
}
body.welfare .box-cmn-02 .box-in {
	width: min(70%, 540px);
}
body.welfare .box-cmn-02 .img-wrap-01.img {
	margin: 3.5em auto 0;
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
}
body.welfare .box-cmn-02 .img-wrap-01.img img {
	width: auto;
}
body.welfare .box-cmn-02 .img ,
body.welfare .box-bg-03 .detail {
	width: min(45%, 330px);
}
body.welfare .box-support {
	padding: 30px 0 35px;
	border-radius: var(--b-radius-m);
	background: #fff;
}
body.welfare .box-support + .box-support {
	margin-top: 20px;
}
body.welfare .box-support .dlist-cmn-02 {
	-ms-flex-pack: center;
	justify-content: center;
	margin-bottom: 5px;
}
body.welfare .box-support .dlist-cmn-02 .txt {
	width: auto;
}
body.welfare .box-support .dlist-cmn-02 .txt-color-or {
	font-size: var(--f-size-3l);
	font-weight: 700;
}

/* internship
---------------------------------------------------------- */
body.internship .list-cmn-02 {
	margin-top: 60px;
}
body.internship .list-cmn-02 .box-bg-02 {
	padding-right: 0;
}

/* ipad表示崩れ調整_2512
---------------------------------------------------------- */
#sidebar-01 {
	width: 240px;
}
#contents-01 {
	width: calc(100% - 280px);
}

#sidebar-02 {
	width: 250px;
}
#contents-02 {
	width: calc(100% - 290px);
}

#sidebar-03 {
	width: 260px;
}
#contents-03 {
	width: calc(100% - 300px);
}

#sidebar-04 {
	width: 270px;
}

.sec-cmn-01 .contents {
	max-width: 900px;
}

/* interview
---------------------------------------------------------- */
.box-line-01.interview {
	justify-content: flex-end;
	gap: 30px;
}
.box-line-01.interview .box-in {
	width: auto;
}
.box-line-01.interview .img {
	min-width: 300px;
}

/* voice_1030px以下指定
---------------------------------------------------------- */
@media screen and (max-width: 1030px) {
	body.voices .box-bg-01.lbl .list-rank-01 .item h4 {
		width: 70px;
	}
	body.voices .box-bg-01.lbl .list-rank-01 .item.rank-01, body.voices .box-bg-01.lbl .list-rank-01 .item:not(.rank-01) {
		height: auto;
	}
	body.voices .box-bg-01.lbl .list-rank-01 .item.rank-01, body.voices .box-bg-01.lbl .list-rank-01 .item + .item {
		padding: 20px 20px 20px 0;
	}
	body.voices .box-bg-01.lbl .list-rank-01 .item ul, body.voices .box-bg-01.lbl .list-rank-01 .item p {
		width: calc(100% - 70px);
	}
	body.voices .list-rank-01 .item h4 img {
		height: 30px;
        margin-right: 5px;
	}
	body.voices .list-voices, body.voices .voices-wrap-01 {
		display: block;
	}
	body.voices .voices-wrap-01 .graph + .box-line-03, body.voices .list-voices .item-01, body.voices .list-voices .item-02, body.voices .voices-wrap-01 .list-rank-01, body.voices .voices-wrap-01 .list-rank-01 + .box-line-03 {
		width: auto;
	}
	body.voices .voices-wrap-01 .graph {
		width: 60%;
		margin: 0 auto 60px;
	}
	body.voices .voices-wrap-01 .list-rank-01 + .box-line-03 {
		margin-top: 40px;
	}

/* education
---------------------------------------------------------- */
	.education .contents div[class^="box-"] .box-in {
		width: 100%;
	}
	.education .contents .box-cmn-01 {
		flex-wrap: wrap;
	}
	.education .contents .list-cmn-02 {
		display: block;
	}
	.education .contents .list-cmn-02 .item{
		width: auto;
	}
	.education .box-voices .txt-ballon-01 {
		padding: 2em;
	}
	body.education .list-cmn-01 .item:nth-of-type(1)::before {
		display: none;
	}
	body.education .list-cmn-01 .item:nth-of-type(4)::before {
		display: none;
	}

/* welfare
---------------------------------------------------------- */
	body.welfare .contents .box-bg-03 {
		display: block;
	}
	body.welfare .box-cmn-02 .img, body.welfare .box-bg-03 .detail {
		width: 100%;
		margin-top: 20px;
	}
	body.welfare div[class^="box-"] .box-in {
		width: 100%;
	}
	body.welfare div[class^="box-bg"] .box-in + .img {
		width: 100%;
	}
	.pic {
        max-width: 250px !important;
        margin: 10px auto 0 !important;
	}
	body.welfare #woman .box-cmn-01, .box-cmn-02, .box-line-01, .box-bg-0{
		display: block;
	}
	body.welfare .box-cmn-02 .box-in + .img {
		width: 280px;
        margin-top: 20px;
	}
/* internship
---------------------------------------------------------- */
	body.internship .list-cmn-02 {
		display: block;
	}
	body.internship .list-cmn-02 .item {
		width: 100%;
		padding: 30px 40px;
	}
	body.internship .list-cmn-02 .item .ttl-cmn-02 {
		margin-bottom: 0.5em;
	}
}