@charset "UTF-8";

/************   全体   ************/

html:before,
html:after,
body:before,
body:after {
	content: '';
	background: #3e6cd1;
	position: fixed;
	display: block;
	z-index: 6;
}

html:before {
	height: 10px;
	width: 100%;
	left: 0;
	top: 0;
}

html:after {
	width: 10px;
	height: 100%;
	right: 0;
	top: 0;
}

body:before {
	height: 10px;
	width: 100%;
	bottom: 0;
	left: 0;
}

body:after {
	width: 10px;
	height: 100%;
	top: 0;
	left: 0;
}

.pc {
	display: block;
}
.sp {
	display: none;
}

body {
	margin: 0;
	padding: 0;
	font-family: 'Nunito Sans', '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ',
		'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
	font-weight: 500;
	color: #191919;
	font-size: 16px;
}

.main *,
.header *,
.footer * {
	box-sizing: border-box;
}

.header a,
.main a,
.footer a,
.header a:hover,
.main a:hover,
.footer a:hover,
.header a:visited,
.main a:visited,
.footer a:visited {
	text-decoration: none;
	color: #000000;
}

/*モジュール用*/
.acms-admin-module-edit-wrapper .acms-admin-module-edit a {
	color: #fff !important;
}

/*トップページモーダル用******************* */
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
	z-index: 1000;
}
.modal .modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal .modal__content{
    /* background: #fff; */
    left: 50%;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
	/* width: 60%; */
}

.modal .modal__content picture {
	padding: 0;
	margin: 0;
}

.modal .resizeimage {
	padding: 0;
	margin: 0;
}

.modal .resizeimage img {
	 max-height: 500px;
}

@media screen and (max-width: 768px) {
	.modal .resizeimage img {
		max-height: 380px;
   }
}

.modal .modal-close {
	position: absolute;
	top: -30px;
	right: 0;
	/* font-size: 14px;
	color: #fff; */
	background: #fff;
	padding: 2px;
	cursor: pointer;
	border-radius: 5px 5px 0 0;
}

.modal .modal-close .square_btn {
	display: block;
	/* position: absolute; */
	/* right: 5px; */
	width: 20px;
	height: 20px;
	border: 2px solid #555555; /* 枠の調整 */
	border-radius: 5px;
	background: #fff; /* ボタンの背景色 */
}

.modal .modal-close .square_btn::before, .square_btn::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 3px; /* 棒の幅（太さ） */
	height: 27px; /* 棒の高さ */
	background: #555555; /* バツ印の色 */
}

.modal .modal-close .square_btn::before {
	transform: translate(-50%,-50%) rotate(45deg);
}

.modal .modal-close .square_btn::after {
	transform: translate(-50%,-50%) rotate(-45deg);
}

/* ******************* */

.main {
	margin: 0 50px 0 10px;
}

.main h1 {
	/* font-size: 45px; */
	font-size: 2.5rem;
	line-height: 2.5rem;
	font-weight: 800;
	margin-bottom: 30px;
}

@media screen and (max-width: 1300px) {
	.main .data h1 {
		font-size:  2.5vw;
		line-height: 1.8rem;
	}
}

.main h1 span {
	font-size:  0.9rem;
}

.main h2 {
	font-size: 42px;
	line-height: 42px;
	font-weight: 700;
	margin-bottom: 30px;
}

.main h3 {
	font-size: 23px;
	font-weight: 500;
	margin-bottom: 50px;
}

.main p {
	/*font-size: 16px;*/
	font-weight: 400;
	margin: 0;
	line-height: 2rem;
}

.header ul,
.main ul,
.footer ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#adminBox,
.acms-admin-box {
	margin: 40px;
}

#adminBox,
.acms-admin-box {
	margin: 40px;
}

.column-main1 #adminBox,
.column-main2 #adminBox,
.column-main1 .acms-admin-box,
.column-main2 .acms-admin-box {
	margin: 0 0 30px 0;
}

.column-main1 #adminBox img,
.column-main2 #adminBox img,
.column-main1 .acms-admin-box img,
.column-main2 .acms-admin-box img {
	width: auto;
}

/************   header   ************/

.header {
}

.menu-right-box {
	position: fixed;
	top: 0;
	right: 0;
	width: 50px;
	height: 100%;
	background-color: #3e6cd1;
	z-index: 11;
}

.menu-btn {
	position: fixed;
	border-radius: 50%;
	display: flex;
	width: 50px;
	height: 50px;
	justify-content: center;
	align-items: center;
	z-index: 20;
}

.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
	content: '';
	display: block;
	height: 2px;
	width: 25px;
	background-color: #ffffff;
	position: absolute;
	transition: all 0.3s ease-out;
}
.menu-btn span:before {
	bottom: 8px;
}
.menu-btn span:after {
	top: 8px;
}

.menu-btn.open span {
	background-color: rgba(255, 255, 255, 0);
}
.menu-btn.open span::before {
	bottom: 0;
	transform: rotate(45deg);
}
.menu-btn.open span::after {
	top: 0;
	transform: rotate(-45deg);
}

/*#menu-btn-check:checked ~ .menu-btn span {
  background-color: rgba(255, 255, 255, 0);
}
#menu-btn-check:checked ~ .menu-btn span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
  top: 0;
  transform: rotate(-45deg);
}*/

#menu-btn-check {
	display: none;
}

.h-entry-btn {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	width: 50px;
	height: 50vh;
	top: 50%;
	position: relative;
	/*background-color: #5E9EE8;*/
	background-color: #fd7a80;
	border-bottom: 10px solid #3e6cd1;
	transition: all 0.3s ease-out;
	color: #ffffff;
	line-height: 50px;
	text-align: center;
	letter-spacing: 0.3em;
	font-weight: 700;
}

.h-entry-btn:hover {
	letter-spacing: 0.4em;
}

.h-entry-btn a,
.h-entry-btn a:hover,
.h-entry-btn a:visited {
	color: #ffffff;
	/*line-height: 50px;
  text-align: center;
  letter-spacing: .3em;
  font-weight: 700;*/
}

.nav {
	display: none;
	background-color: #3e6cd1;
	min-height: 100vh;
	background-attachment: fixed;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	z-index: 10;
}

.show {
	display: block;
	transition: all 0.3s ease-out;
}

.nav-box {
	position: relative;
}

.nav-box ul {
	width: calc(100% - 120px);
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-items: flex-start;
	max-width: 1300px;
	height: 70vh;
	margin: 0 auto;
	overflow: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.nav-box ul::-webkit-scrollbar {
	/* Chrome, Safari 対応 */
	display: none;
}

.nav-box li {
	margin-bottom: 50px;
	/*width: 30%;*/
}

.nav-box li.nav_sub {
	margin-bottom: 30px;
}

.nav-box li ul {
	width: 100%;
	margin: 10px 0 0;
	padding-bottom: 0;
	height: auto;
}

.nav-box li ul li {
	margin-bottom: 10px;
	width: 100%;
}

.nav-box li ul li:before {
	content: '';
	background-image: url(../images/arrow-nav.svg);
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	width: 15px;
	height: 15px;
	position: relative;
	top: 2px;
	margin-right: 5px;
}

.nav-box li.ori {
	margin-bottom: 150px;
}

.nav-box li,
.nav-box a,
.nav-box a:hover,
.nav-box a:visited {
	color: #ffffff;
}

.nav-box span {
	color: #98c8ff;
	font-size: 2rem;
	line-height: 2rem;
	font-weight: 800;
}

.logo-box {
	padding: 60px 0;
	display: inline-block;
}

.logo-box.sp {
	display: none;
}

.logo-box ul {
	display: flex;
	align-items: center;
	padding: 20px 30px 20px 40px;
	background-color: #ffffff;
	border-radius: 0 50px 50px 0;
}

.logo-box ul li {
	margin-right: 20px;
	display: flex;
	align-items: center;
}

.logo-box ul li:last-child {
	width: 200px;
	margin-left: 20px;
}

.logo-box li img {
	width: 100%;
}

.logo-box p {
	width: 200px;
	font-size: 20px;
	line-height: 25px;
	margin: 0;
	padding: 0;
}

.logo-box p span {
	font-family: 'Nunito Sans', sans-serif;
	font-weight: 700;
	font-size: 24px;
	color: #207bd6;
	letter-spacing: 0.05em;
}

.mv {
	width: 100%;
	min-height: 100vh;
}

.mv h1 {
	width: 50%;
	margin-left: 40px;
}

.mv h1 img {
	width: 100%;
}

.news {
	margin: 0 80px 0 40px;
}

.news .news-txt {
	background-color: #e7f0fa;
	display: inline-block;
	margin: 0 0 10px 0;
	padding: 10px 20px;
	/*font-size: 16px;*/
	line-height: 22px;
	vertical-align: baseline;
}

.news .news-ttl {
	display: inline-block;
	margin: 0 0 10px 0;
	vertical-align: baseline;
	font-family: 'Nunito Sans', sans-serif;
	background-color: #4371cb;
	padding: 10px 20px 10px;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.6rem;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.news .news-date {
	font-size: 1.4rem;
	vertical-align: bottom;
	font-weight: 700;
}

.news .news-tag {
	background-color: #ffffff;
	padding: 5px 15px 5px 15px;
	margin-right: 20px;
	/* line-height: 17px;*/
}

.news .news-txt-title:after {
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background-image: url(../images/arrow-news.svg);
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
	top: 3px;
	margin-left: 10px;
}

.scroll {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	margin: 50px 0 0 40px;
	padding-left: 20px;
	/*border-left: 1px solid #4371CB;*/
	height: 150px;
	color: #4371cb;
	transition: all 0.3s ease-out;
	position: relative;
}

.scroll:after {
	content: '';
	display: block;
	left: 0;
	width: 1px;
	border-left: 1px solid #4371cb;
	height: 100px;
	position: absolute;
	transition: all 0.3s ease-out;
}

.scroll:hover:after {
	height: 150px;
}

.scroll a {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

/************   loopSlider   ************/

.loopSlider-box {
	margin-right: 60px;
	position: fixed;
	z-index: -1;
	right: 0;
	display: flex;
	justify-content: space-between;
}
.loopSliderWrap1 {
	top: 0;
	left: 0;
	overflow: hidden;
	position: relative;
}

.loopSliderWrap2 {
	bottom: 0;
	left: 0;
	overflow: hidden;
	position: relative;
}

.loopSliderWrap3 {
	bottom: 0;
	left: 0;
	overflow: hidden;
	position: relative;
}

.loopSlider1,
.loopSlider2 {
	margin-right: 10px;
}

.loopSlider1,
.loopSlider2,
.loopSlider3 {
	width: 290px;
	height: 90vh;
	text-align: left;
	position: relative;
	overflow: hidden;
}

.loopSlider2 {
	margin-top: 10vh;
}

.loopSlider1 ul li div,
.loopSlider2 ul li div,
.loopSlider3 ul li div {
	width: 290px;
	height: calc(290px * 0.75);
	background-size: cover;
	background-position: center;
}

.loopSlider1:after,
.loopSlider3:after {
	content: '';
	background-image: url(../images/loop_btm.png);
	background-size: cover;
	width: 290px;
	height: 290px;
	display: block;
	position: absolute;
	bottom: -10px;
	left: 0;
}

.loopSlider2:after {
	content: '';
	background-image: url(../images/loop_top.png);
	background-size: cover;
	width: 290px;
	height: 290px;
	display: block;
	position: absolute;
	top: -10px;
	left: 0;
}

.loopSlider1 ul,
.loopSlider2 ul,
.loopSlider3 ul {
	width: 290px;
	overflow: hidden;
}

/*.loopSlider1 ul li,
.loopSlider2 ul li,
.loopSlider3 ul li {
  margin: -10px 0;
  padding: 0;
}*/

.loopSlider2 ul {
	position: relative;
}

.loopSliderWrap2 {
	overflow: visible !important;
}

.container {
	max-width: 1620px;
	margin: 0 auto;
	padding: 40px 40px 80px 40px;
}

.top-recruit {
	background-color: #f0f6fd;
}

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

.top-recruit-newgrad,
.top-recruit-career {
	width: 48%;
	height: 200px;
	display: flex;
	position: relative;
	justify-content: space-between;
	align-items: center;
	background-size: cover;
	background-position: center;
}

.top-recruit-newgrad {
	background-image: url(../images/newgrad-img.jpg);
}

.top-recruit-career {
	background-image: url(../images/career-img.jpg);
}

.top-recruit-txt {
	box-sizing: content-box;
	width: 25%;
	height: 200px;
	background-color: #5e9ee8;
	margin: 0;
	color: #ffffff;
	padding: 0 40px;
	border-radius: 0 100px 100px 0;
	position: relative;
	display: flex;
	align-items: center;
}

.top-recruit-newgrad:hover .top-recruit-txt,
.top-recruit-career:hover .top-recruit-txt {
	width: 100%;
	border-radius: 0;
	transition: all 0.3s ease-out;
}

.top-recruit-txt p {
	font-size: 1.7rem;
	font-weight: 700;
}

.top-recruit-txt p span {
	font-size: 1.1rem;
}

.top-recruit-newgrad:after,
.top-recruit-career:after {
	content: '';
	background-image: url(../images/arrow-wh.svg);
	background-repeat: no-repeat;
	background-position: center right;
	display: block;
	position: absolute;
	width: 60px;
	height: 15px;
	top: 43%;
	left: 30%;
	margin-left: 30px;

	/*content: url(../images/arrow-wh.svg);
  display: block;
  position: absolute;
  top: 40%;
  left: 30%;*/
}

.top-recruit-newgrad img,
.top-recruit-career img {
	height: 70%;
	position: absolute;
	right: 70px;
}

.top-message-policy {
	display: flex;
	flex-wrap: wrap;
}

/*.top-message-policy h1{
  margin-top: 10px;
}*/

.top-message,
.top-policy {
	width: 50%;
	display: flex;
	flex-wrap: wrap;
	padding: 50px;
	background-image: url(../images/message.jpg);
	background-size: cover;
	background-position: center;
	position: relative;
}

.top-policy {
	flex-direction: row-reverse;
	background-image: url(../images/policy.jpg);
}

.top-message:before,
.top-policy:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	background-color: rgba(255, 255, 255, 0.8);
}

.top-message-img,
.top-policy-img {
	margin: 0 5% 0 0;
	width: 45%;
	height: 100%;
	display: flex;
	align-items: center;
	z-index: 1;
	background-image: url(../images/message.jpg);
	background-size: cover;
	background-position: center;
}

.top-policy-img {
	margin: 0 0 0 5%;
	background-image: url(../images/policy.jpg);
	background-position: 85%;
}

.top-message-txt,
.top-policy-txt {
	width: 50%;
	z-index: 1;
}

p.top-message-copy {
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}

.top-policy-txt p span {
	color: #2b53ac;
	font-weight: 700;
}

.policy-point {
	margin-top: 20px;
}

.policy-point p {
	display: inline-block;
	padding: 5px 10px;
	margin: 5px 0;
	background-color: #e7f0fa;
	font-weight: 700;
	white-space: nowrap;
}

.policy-point p span {
	color: #ffa427;
	font-size: 1.3rem;
	margin-right: 5px;
	vertical-align: bottom;
}

.more-btn {
	display: inline-block;
	height: 50px;
	line-height: 50px;
	padding: 0 50px;
	margin: 30px 20px 0 0;
	background: rgba(255, 255, 255, 0.7);
	border-radius: 25px;
	border: 2px solid #4371cb;
	color: #4371cb;
	transition: all 0.3s ease-out;
	position: relative;
}

.more-btn:after {
	content: url(../images/arrow-bl.svg);
	display: block;
	position: absolute;
	width: 65px;
	top: -5px;
	right: -30px;
	transition: all 0.3s ease-out;
}

.more-btn:hover {
	background: rgba(70, 115, 200, 1);
	color: #ffffff;
}

.more-btn:hover:after {
	right: -50px;
}

.top-job {
	background-color: #ffffff;
	background-image: url(../images/at-therapit-bg.svg);
	background-repeat: no-repeat;
	background-position: top 10px right 80px;
}

.top-job h1 {
	margin-bottom: 50px;
}

.top-job-box {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.top-job-box > div {
	width: 23%;
}

.top-job-box p {
	font-size: 1.2rem;
	/*font-size: 18px;*/
	font-weight: 700;
	color: #ffffff;
}

/*置き換えたら削除*/
.job-1,
.job-2,
.job-3,
.job-4,
.job-5,
.job-6,
.job-7,
.job-8 {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: relative;
	margin-bottom: 70px;
}

/*置き換えたら削除*/
.job-1 {
	background-image: url(../images/job1.jpg);
}
.job-2 {
	background-image: url(../images/job2.jpg);
}
.job-3 {
	background-image: url(../images/job3.jpg);
}
.job-4 {
	background-image: url(../images/job4.jpg);
}
.job-5 {
	background-image: url(../images/job5.jpg);
}
.job-6 {
	background-image: url(../images/job6.jpg);
}
.job-7 {
	background-image: url(../images/job7.jpg);
}
.job-8 {
	background-image: url(../images/job8.jpg);
}

.job-box-contents {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: relative;
	margin-bottom: 70px;
}

.job-c {
	display: inline-block;
	padding: 5px 15px;
	position: absolute;
	top: -20px;
	z-index: 1;
}

.top-job-box p.job-txt {
	padding: 35px 15px 15px 15px;
	font-size: 0.9rem;
	line-height: 1.7rem;
	font-weight: 500;
	color: #191919;
	height: 100%;
	opacity: 0;
	transition: all 0.5s ease-out;
	position: relative;
	top: 0;
}

.top-job-box > div:hover p.job-txt {
	opacity: 1;
	transition: all 0.5s ease-out;
	background-color: rgba(255, 255, 255, 0.7);
}

/*置き換えたら削除*/
.job-1:after,
.job-2:after,
.job-3:after,
.job-4:after,
.job-5:after,
.job-6:after,
.job-7:after,
.job-8:after {
	content: url(../images/arrow-bk.svg);
	display: block;
	position: absolute;
	bottom: -30px;
	right: 0;
}

.job-box-contents:after {
	content: url(../images/arrow-bk.svg);
	display: block;
	position: absolute;
	bottom: -30px;
	right: 0;
}

/*モジュール用*/
.top-job:before a {
	color: #ffffff;
}

.top-interview {
	background-color: #ffffff;
}

.top-interview .container {
	padding-bottom: 0;
}

/*タブ切り替え全体のスタイル*/
.tabs {
	/*padding-bottom: 40px;*/
	/*margin-top: 50px;
  padding-bottom: 40px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 700px;
  margin: 0 auto;*/

	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

/*タブのスタイル*/
.tab_item {
	margin: 0 5px;
	padding-top: 10px;
	width: 30%;
	height: 60px;
	border-radius: 10px 10px 0 0;
	background-color: #cbdff7;
	line-height: 50px;
	font-size: 1.2rem;
	text-align: center;
	display: block;
	float: left;
	text-align: center;
	font-weight: bold;
	transition: all 0.2s ease;
}
/*.tab_item:hover {
  opacity: 0.75;
}*/

input[name='tab_item'] {
	display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
	width: 100%;
	display: none;
	/*padding: 40px 40px 0;*/
	clear: both;
	overflow: hidden;
	background-color: #f0f6fd;
}

/*選択されているタブのコンテンツのみを表示*/
#newgrad:checked ~ #newgrad_content,
#career:checked ~ #career_content {
	display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
	background-color: #f0f6fd;
	position: relative;
}

.tabs input:checked + .tab_item:after {
	content: '';
	margin: 0 auto;
	display: block;
	width: 10%;
	height: 2px;
	border-bottom: 2px solid #4371cb;
	position: absolute;
	left: 45%;
}

.tab_content_description {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 80px 40px 80px 40px;
}

.tab_content_description.container {
	padding-bottom: 80px;
}

.interview-box {
	width: 15%;
	position: relative;
	transition: all 0.3s ease-out;
}

.interview-img,
.interview-img-hover {
	width: 100%;
	height: 14vw;
	background-size: cover;
	background-position: center;
	margin-bottom: 10px;
	transition: all 0.3s ease-out;
}

.interview-img {
	position: relative;
}

.interview-img-hover {
	opacity: 0;
	position: absolute;
	top: 0;
}

.interview-box:hover .interview-img {
	opacity: 0;
}

.interview-box:hover .interview-img-hover {
	opacity: 1;
}

.interview-img:before {
	content: '';
	width: 20px;
	height: 100px;
	display: block;
	background-image: url(../images/top-on.svg);
	background-repeat: no-repeat;
	position: absolute;
	top: -15px;
	left: 10px;
	transition: all 0.3s ease-out;
}

.interview-img-hover:before {
	content: '';
	width: 20px;
	height: 100px;
	display: block;
	background-image: url(../images/top-off.svg);
	background-repeat: no-repeat;
	position: absolute;
	top: -15px;
	left: 10px;
	transition: all 0.3s ease-out;
}

.no-onoff .interview-img-hover:before {
	content: none;
}

.interview-box p {
	font-weight: 700;
	line-height: 1.5rem;
}
.interview-box p span {
	font-size: 0.9rem;
}

.interview-copy {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: -15px;
	right: 0;
	display: inline-block;
}

.interview-copy span {
	background-color: #ffffff;
	line-height: 20px;
	padding: 10px 5px;
}

.interview-txt {
	position: relative;
}

/*.interview-txt:after{
  content: "";
  display: block;
  width: 30%;
  height: 8px;
  background-image: url(../images/arrow-bk.svg);
  background-repeat: no-repeat;
  background-position: center right;
  position: absolute;
  right: 0;
  bottom: 10px;
}*/

.top-pages {
	background-color: #ffffff;
	padding-top: 40px;
}

.top-pages .container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top-data,
.top-career,
.top-business,
.top-workplace {
	width: 23%;
	background-color: #f0f6fd;
	position: relative;
	display: flex;
	flex-direction: column;
}

.top-pages h1 {
	font-size: 2rem;
	line-height: 2rem;
	position: relative;
	padding-left: 60px;
	margin: 0;
}

.top-pages h1:before {
	content: '';
	display: inline-block;
	width: 45px;
	height: 45px;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
}

.top-data h1:before {
	background-image: url(../images/icon-data.svg);
}
.top-career h1:before {
	background-image: url(../images/icon-career.svg);
}
.top-business h1:before {
	background-image: url(../images/icon-business.svg);
}
.top-workplace h1:before {
	background-image: url(../images/icon-workplace.svg);
}

.top-pages h1 span {
	display: block;
	line-height: 1.2rem;
	margin-top: 5px;
}
.top-workplace h1 span {
	font-size: 0.9rem;
}

.top-pages-ttl {
	background-color: #cbdff7;
	padding: 30px 20px 20px;
	/*flex-grow: 1;*/
	display: flex;
	height: 150px;
	align-items: center;
	position: relative;
}

.top-pages-ttl:after {
	content: url(../images/arrow-wh.svg);
	display: block;
	position: absolute;
	top: 5px;
	right: 10px;
}

.top-business .top-pages-ttl:after {
	content: url(../images/icon-blank.svg);
	top: 10px;
}

.top-pages-txt {
	padding: 20px;
}

.top-data,
.top-career,
.top-business,
.top-workplace {
	transition: all 0.3s ease-out;
}

.top-data:hover,
.top-career:hover,
.top-business:hover,
.top-workplace:hover {
	opacity: 0.7;
}

.top-blog {
	background-color: #f0f6fd;
}

.top-blog-container {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.top-blog-box {
	width: 23%;
	background-color: #ffffff;
	transition: all 0.3s ease-out;
	position: relative;
}

.top-blog-box:hover {
	opacity: 0.7;
}

.top-blog-img img {
	width: 100%;
	height: 150px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.top-blog-txt {
	padding: 20px;
}

p.top-blog-date {
	font-size: 1.1rem;
	font-weight: 700;
}

.top-blog-ttl:after {
	content: url(../images/arrow-bk.svg);
	display: block;
	text-align: right;
}

.footer-contact {
	background-color: #ffffff;
	position: relative;
	z-index: 1;
}

.footer-contact .container {
	padding: 80px 80px 80px 40px;
	background-image: url(../images/at-therapit-1.png), url(../images/at-therapit-2.png);
	background-repeat: no-repeat, no-repeat;
	background-size: 30% auto, 30% auto;
	background-position: left, right;
	text-align: center;
}

.footer-contact img {
	margin-bottom: 50px;
}

p.footer-contact-catch {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 50px;
}

.link-btn {
	display: inline-block;
	padding: 0 100px;
	margin-bottom: 50px;
	/*background-color: #3E6CD1;*/
	background-color: #fd7a80;
	border-radius: 50px;
	color: #ffffff;
	font-size: 1.4rem;
	font-weight: 700;
	height: 100px;
	line-height: 100px;
	position: relative;
	transition: all 0.3s ease-out;
}

.link-btn:after {
	content: url(../images/arrow-wh.svg);
	position: absolute;
	top: -10px;
	right: 70px;
	transition: all 0.3s ease-out;
	opacity: 0;
}

.link-btn:hover {
	letter-spacing: 0.1em;
}

.link-btn:hover:after {
	right: 15px;
	opacity: 1;
}

#page-top {
	width: 80px;
	height: 80px;
	position: fixed;
	right: 70px;
	bottom: 30px;
	background: rgba(231, 240, 250, 0.9);
	z-index: 2;
}

#page-top p {
	position: relative;
	font-size: 1.2rem;
	font-weight: 800;
	top: 15px;
	text-align: center;
	display: block;
	color: #2b53ac;
	text-decoration: none;
}

#page-top p::before {
	content: '';
	width: 8px;
	height: 8px;
	border-top: solid 2px #3e6cd1;
	border-right: solid 2px #3e6cd1;
	-ms-transform: rotate(315deg);
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
	position: absolute;
	top: -15px;
	left: 35px;
}

.footer {
	background-color: #ffffff;
	background-image: url(../images/dot.png);
	position: relative;
	z-index: 1;
}

.footer .container {
	padding: 40px 80px 30px 40px;
}

.footer-bnr {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.footer-bnr img {
	padding: 0 10px;
	margin-bottom: 10px;
	max-width: 350px;
}

.footer .copyright {
	background-color: #3e6cd1;
	color: #ffffff;
	text-align: center;
	font-size: 0.8rem;
	padding: 30px 40px 30px 40px;
	margin: 0;
}

.ta-center {
	text-align: center;
}

.ta-right {
	text-align: right;
}

.top-recruit-newgrad a,
.top-recruit-career a,
.top-job-box > div a,
.interview-box a,
.top-data a,
.top-career a,
.top-business a,
.top-workplace a,
.top-blog-box a,
.more-btn a,
.link-btn a {
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
}

/************   下層ページ   ************/

.column-container {
	display: flex;
	flex-wrap: wrap;
	position: relative;
}

.column-side {
	width: 25%;
}

.column-side-txt {
	position: fixed;
	top: 50px;
	left: 50px;
	z-index: 1;
}

.data .column-side-txt {
	max-width: 18.4%;
}

.column-side-txt h1 {
	/* margin-top: 100px; */
	margin-top: 10px;
	padding: 20px 0 10px;
	background: #fff;
}

.anchor-link {
	margin-top: 30px;
}

.anchor-link li {
	padding: 5px 0;
}

.anchor-link a,
.anchor-link a:hover,
.anchor-link a:visited {
	color: #2b53ac;
	font-size: 1rem;
	line-height: 1.8rem;
	font-weight: 700;
	border-bottom: 2px solid #2b53ac;
}

.l-eduSystem__text > a,
.l-eduSystem__text > a:hover,
.l-eduSystem__text > a:visited,
.l-sectionWrap__text > a,
.l-sectionWrap__text > a:hover,
.l-sectionWrap__text > a:visited,
.acms-grid-r > a,
.acms-grid-r > a:hover,
.acms-grid-r > a:visited
{
	color: #2b53ac;
	font-weight: 700;
	border-bottom: 2px solid #2b53ac;
}



/* .anchor-link a:before{
  content: url(../images/arrow-anc.svg);
  margin-right: 10px;
} */

.anchor-link li:before {
	content: url(../images/arrow-anc.svg);
	margin-right: 10px;
}

.anchor-link li a br {
	display: none;
}

@media screen and (max-width: 1400px) {
	.anchor-link li a br {
		display: block;
	}
	.anchor-link li a .blank {
		display: block;
		margin-left: 1em;
	}
}

.column-main1,
.column-main2 {
	width: 75%;
	padding: 160px 30px 50px;
}

.column-main2 {
	background-color: #f0f6fd;
}

.column-main2 strong {
	font-size: 1.1rem;
}

.column-main2 .l-sectionWrap {
	max-width: 1200px;
}

.column-main1 img,
.column-main2 img {
	width: 100%;
}

.column-main2 .image-box img {
	width: auto;
	max-width: 100%;
}

.column-main-bgcopy {
	position: relative;
}

.column-main-bgcopy p {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: 0;
	right: 0;
	font-size: 3.4rem;
	line-height: 3.4rem;
	font-weight: 700;
	color: #cbdff7;
	z-index: -1;
}

.column-main-copy p {
	margin-top: 50px;
}

p.top-name {
	margin-top: 20px;
	font-size: 1.2rem;
	font-weight: 700;
}

/*全共通*/

.slide-copy {
	overflow: hidden;
	display: inline-block;
	margin-top: 50px;
}

.slide-copy_inner {
	display: inline-block;
}

.slide-copy_inner span {
	background-color: #3e6cd1;
	color: #ffffff;
	font-size: 1.3rem;
	line-height: 3.3rem;
	font-weight: 700;
	padding: 5px 0;
}

/*左右のアニメーション*/
.leftAnime {
	opacity: 0; /*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
	animation-name: slideTextX100;
	animation-duration: 0.8s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes slideTextX100 {
	from {
		transform: translateX(-100%); /*要素を左の枠外に移動*/
		opacity: 0;
	}

	to {
		transform: translateX(0); /*要素を元の位置に移動*/
		opacity: 1;
	}
}

.slideAnimeRightLeft {
	animation-name: slideTextX-100;
	animation-duration: 0.8s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes slideTextX-100 {
	from {
		transform: translateX(100%); /*要素を右の枠外に移動*/
		opacity: 0;
	}

	to {
		transform: translateX(0); /*要素を元の位置に移動*/
		opacity: 1;
	}
}

.message-video {
	max-width: 1000px;
	aspect-ratio: 16 / 9;
	margin: 50px auto;
}

.message-video iframe {
	width: 100%;
	height: 100%;
}

.policy-img {
	margin: 50px auto;
	max-width: 1000px;
	height: calc(1000px * 0.5);
	background-image: url(../images/policy-dummy.jpg);
	background-size: cover;
	background-position: center;
}

.column-main1 .policy-point p span {
	color: #3e6cd1;
}

.container-narrow {
	max-width: 700px;
	margin: 0 auto 50px;
}

.job-ctg .container-narrow {
	max-width: 760px;
	padding: 0 30px;
	margin: 0 auto 50px;
}

.container-narrow p span.message-name {
	display: block;
	text-align: right;
}

.messege-copy p {
	color: #2b53ac;
	font-size: 1.3rem;
	line-height: 2.5rem;
	font-weight: 700;
	padding: 30px 0;
}

.messege-ph .flex-2box:nth-child(2) {
	margin-top: 80px;
}

.data-container {
	margin: 50px auto 0;
	width: 100%;
}

.data-container img {
	width: 100%;
	vertical-align: bottom;
}

.data-grid {
	width: 50%;
	padding: 5px;
}

.data-grid-inner {
	background-color: #ffffff;
	position: relative;
}

.data-ttl {
	background-color: #3e6cd1;
	display: inline-block;
	color: #ffffff;
	padding: 5px 15px;
}

.data-txt p {
	padding: 0 30px 30px 30px;
}

a.txt-link,
a.txt-link:hover,
a.txt-link:visited {
	color: #2b53ac;
	font-weight: 700;
	padding-bottom: 5px;
	display: inline-block;
	position: relative;
	right: 0;
	width: 100%;
}

a.txt-link span {
	border-bottom: 2px solid #2b53ac;
}

.column-main1 h2 {
	font-size: 1.5rem;
	line-height: 1.5rem;
	color: #2b53ac;
	padding-top: 50px;
}

.column-main2 h2 {
	display: inline-block;
	font-size: 1.4rem;
	color: #2b53ac;
	padding: 50px 0 0 30px;
	margin: 0 0 30px -30px;
	border-bottom: 2px solid #2b53ac;
}

.column-main2 p.l-eduSystem__text {
	margin-bottom: 30px;
}

.column-main2 h3 {
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: 0;
	margin: 50px 0 20px;
	clear: both;
}

.policy-statue {
	margin-top: 30px;
}

.statue-box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	background-color: #f0f6fd;
	position: relative;
	margin-bottom: 20px;
}

.statue-box:before {
	font-size: 4rem;
	font-weight: 800;
	color: #ffffff;
	position: absolute;
	top: -20px;
	left: -5px;
}

.statue-box:nth-of-type(1):before {
	content: '01';
}
.statue-box:nth-of-type(2):before {
	content: '02';
}
.statue-box:nth-of-type(3):before {
	content: '03';
}

.statue-img {
	width: 20%;
	z-index: 1;
	text-align: center;
}

.statue-img img {
	width: 50%;
}

.statue-txt {
	width: 80%;
	padding: 20px;
}

.statue-txt h3 {
	font-size: 1.1rem;
	font-weight: 700;
	margin: 0 0 10px;
}

.training-container,
.career-container {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.training-box,
.career-box {
	width: 23%;
	background-color: #ffffff;
	padding: 15px;
	position: relative;
}

.training-box:after,
.career-box:after {
	content: '';
	position: absolute;
	top: 20%;
	left: 100%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 15px solid #ffffff;
}

.training-box:last-child:after,
.career-box:last-child:after {
	content: none;
}

.training-box p,
p.career-txt {
	margin-bottom: 10px;
	padding: 5px;
}

.training-days,
.career-step {
	text-align: center;
	font-weight: 700 !important;
	padding: 5px 0;
}

.days1 {
	color: #83c470;
}
.days2 {
	color: #74c390;
}
.days3 {
	color: #67bfcc;
}
.days4 {
	color: #5e9ee8;
}

.career-step {
	margin-bottom: 5px !important;
	color: #2b53ac;
}

.training-ttl {
	text-align: center;
	padding: 5px 15px;
	font-size: 1.1rem;
	font-weight: 700 !important;
	margin-bottom: 10px;
}

.ttl1 {
	background-color: #ddf5d6;
}
.ttl2 {
	background-color: #d6f5e1;
}
.ttl3 {
	background-color: #d6f1f5;
}
.ttl4 {
	background-color: #cbdff7;
}

.career-class {
	text-align: center;
	padding: 0 0 10px;
	border-bottom: 2px solid #2b53ac;
	font-size: 1.1rem;
	font-weight: 700 !important;
}

.training-txt,
.career-txt {
	line-height: 22px;
	margin: 10px 0 0 !important;
}

.trcontent-box {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.trcontent-ttl {
	width: 20%;
	display: flex;
	align-items: center;
}

.trcontent-ttl p {
	margin-bottom: 0;
	width: 100%;
	text-align: center;
	font-size: 1.2rem;
	font-weight: 700;
}

.trcontent-txt {
	width: 80%;
	background-color: #ffffff;
	padding: 20px;
}

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

.trc1 {
	background-color: #ddf5d6;
}
.trc2 {
	background-color: #faeec4;
}
.trc3 {
	background-color: #cbdff7;
}

.bg-wh {
	background-color: #ffffff;
	padding: 30px;
}

.bg-wh h4 {
	color: #2b53ac;
	font-size: 1.1rem;
	font-weight: 700;
	margin: 0 0 10px;
}

.bg-wh p {
	margin-bottom: 0;
}

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

.flex-2box {
	width: 49%;
	margin-bottom: 2%;
}

.flex-3box {
	width: 32%;
	margin-bottom: 2%;
}

.column-list-ttl {
	color: #5e9ee8;
	font-size: 1.1rem;
	font-weight: 700;
}

.column-list {
	border: 2px solid #5e9ee8;
	padding: 15px;
	margin-top: 30px;
}

.column-list .flex-2box {
	margin-bottom: 0;
}

.column-list p {
	color: #5e9ee8;
	margin-bottom: 10px;
	font-size: 1.1rem;
	font-weight: 700;
}

/*.column-list ul*/
.column-main2 ul {
	margin-bottom: 10px;
}

/*.column-list li*/
.column-main2 li {
	position: relative;
	padding-left: 15px;
	margin-top: 5px;
	font-size: 1rem;
	line-height: 1.8rem;
}

/*.column-list li:before*/
.column-main2 li:before {
	border-radius: 50%;
	width: 5px;
	height: 5px;
	display: block;
	position: absolute;
	left: 0;
	top: 7px;
	content: '';
	background: #5e9ee8;
}

.image-box {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 30px;
	align-items: flex-start;
}

.acms-grid,
.acms-grid-r {
	margin-left: 0;
	margin-right: 0;
}

/************** 職種紹介 **************/

.main1-list-link {
	position: absolute;
	display: inline-block;
	top: 80px;
	right: 30px;
	text-align: right;
	font-size: 12px;
	font-weight: 700;
	padding-right: 80px;
}

.interview .main1-list-link {
	right: 80px;
}

.main1-list-link:after {
	content: url(../images/arrow-bk.svg);
	display: inline-block;
	position: absolute;
	right: 0;
}

.job-container {
	max-width: 1200px;
	/*margin: 30px auto;*/
	padding-bottom: 30px;
}

.job-container.j-kango {
	background-color: rgba(255, 113, 138, 0.07);
}
.job-container.j-rehabili {
	background-color: rgba(255, 180, 92, 0.07);
}
.job-container.j-tuusho {
	background-color: rgba(116, 180, 93, 0.07);
}
.job-container.j-houmon {
	background-color: rgba(74, 203, 153, 0.07);
}
.job-container.j-soudan {
	background-color: rgba(103, 147, 247, 0.07);
}
.job-container.j-hoiku {
	background-color: rgba(108, 190, 234, 0.07);
}
.job-container.j-eigyo {
	background-color: rgba(227, 125, 209, 0.07);
}
.job-container.j-kitchen {
	background-color: rgba(255, 156, 111, 0.07);
}

.job-img {
	width: 100%;
	height: 420px;
	background-size: cover;
	background-position: center;
}

/*.job-ctg1 .job-img{ background-image: url(../images/job-ctg1-1.jpg); }
*/
.job-ctg-box {
	text-align: center;
}

.job-ctg-box p {
	display: inline-block;
	min-width: 450px;
	text-align: center;
	padding: 50px;
	margin: 0 auto;
	background-color: #ff718a;
	position: relative;
	top: -60px;
	color: #ffffff;
	font-size: 1.5rem;
	font-weight: 700;
}

.j-kango .job-ctg-box p,
.j-kango .job-link-box {
	background-color: #ff718a;
}
.j-rehabili .job-ctg-box p,
.j-rehabili .job-link-box {
	background-color: #ffb45c;
}
.j-tuusho .job-ctg-box p,
.j-tuusho .job-link-box {
	background-color: #74d55d;
}
.j-houmon .job-ctg-box p,
.j-houmon .job-link-box {
	background-color: #4acb99;
}
.j-soudan .job-ctg-box p,
.j-soudan .job-link-box {
	background-color: #6793f7;
}
.j-hoiku .job-ctg-box p,
.j-hoiku .job-link-box {
	background-color: #6cbeea;
}
.j-eigyo .job-ctg-box p,
.j-eigyo .job-link-box {
	background-color: #e37dd1;
}
.j-kitchen .job-ctg-box p,
.j-kitchen .job-link-box {
	background-color: #ff9c6f;
}

.j-kango h2,
.j-kango h3,
.j-kango h4 {
	color: #ff718a;
}
.j-rehabili h2,
.j-rehabili h3,
.j-rehabili h4 {
	color: #ffb45c;
}
.j-tuusho h2,
.j-tuusho h3,
.j-tuusho h4 {
	color: #74d55d;
}
.j-houmon h2,
.j-houmon h3,
.j-houmon h4 {
	color: #4acb99;
}
.j-soudan h2,
.j-soudan h3,
.j-soudan h4 {
	color: #6793f7;
}
.j-hoiku h2,
.j-hoiku h3,
.j-hoiku h4 {
	color: #6cbeea;
}
.j-eigyo h2,
.j-eigyo h3,
.j-eigyo h4 {
	color: #e37dd1;
}
.j-kitchen h2,
.j-kitchen h3,
.j-kitchen h4 {
	color: #ff9c6f;
}

.job-ctg h2,
.job-ctg h3,
.job-ctg h4 {
	text-align: center;
	padding: 0;
}

.job-ctg h3 {
	font-size: 1.1rem;
	font-weight: 700;
	margin: 50px 0 30px;
}

.job-ctg h3:after {
	content: '';
	margin: 10px auto 0;
	display: block;
	width: 30px;
	height: 2px;
	text-align: center;
}

.j-kango h3:after {
	border-bottom: 2px solid #ff718a;
}
.j-rehabili h3:after {
	border-bottom: 2px solid #ffb45c;
}
.j-tuusho h3:after {
	border-bottom: 2px solid #74d55d;
}
.j-houmon h3:after {
	border-bottom: 2px solid #4acb99;
}
.j-soudan h3:after {
	border-bottom: 2px solid #6793f7;
}
.j-hoiku h3:after {
	border-bottom: 2px solid #6cbeea;
}
.j-eigyo h3:after {
	border-bottom: 2px solid #e37dd1;
}
.j-kitchen h3:after {
	border-bottom: 2px solid #ff9c6f;
}

.job-detail p {
	font-size: 0.9rem;
	line-height: 1.5rem;
}

.job-detail {
	position: relative;
	box-sizing: border-box;
	margin-bottom: 50px;
}

.job-detail-content {
	position: relative;
	overflow: hidden;
	display: flex; /*211130追加*/
	align-items: center; /*211130追加*/
	/*height: 200px; more用*/
}

.job-detail-content h4 {
	margin: 0;
	width: 40%;
} /*211130追加*/

/*more用style*/
/*.job-detail-content::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  content: "";
  height: 100px;
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
}

.readmore-label{
  display: table;
  height: 35px;
  line-height: 35px;
  vertical-align: baseline;
  padding: 0 30px;
  margin: 0 auto;
  background: rgba(255,255,255, .7);
  border-radius: 22px;
  border: 2px solid #FF718A;
  color: #FF718A;
  font-size: 15px;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}

.readmore-label:before{
    content: 'MORE';
}

.readmore-check{
    display: none;
}

.readmore-check:checked ~ .readmore-label{
    position: static;
    transform: translateX(0);
    -webkit-transform: translateX(0);
}

.readmore-check:checked ~ .readmore-label:before{
    content: 'CLOSE';
}

.readmore-check:checked ~ .job-detail-content{
    height: auto;
}

.readmore-check:checked ~ .job-detail-content::before {
    display: none;
}

.job-ctg1 .job-detail-qualification{
  background-color: #FFF5F7;
  color: #FF718A;
  font-weight: 700;
  margin: 10px auto 5px;
}*/

.job-img-sub {
	width: 100%;
	height: 350px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.job-copy {
	margin: 0 auto 20px;
	text-align: center;
}

.job-copy p {
	display: inline;
	background-color: #ffffff;
	font-size: 1.2rem;
	line-height: 2rem;
	font-weight: 700;
}

.job-interview {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.job-interview .interview-box {
	width: 15vw;
	margin: 20px;
}

.job-interview .interview-img,
.job-interview .interview-img-hover {
	height: 15vw;
}

.job-link-container {
	max-width: 1200px;
	margin: 30px auto 30px 0;
	/*max-width: 1000px;
  margin: 30px auto;*/
	padding-bottom: 30px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.job-link-box {
	width: 48%;
	height: 70px;
	border-radius: 35px;
	/*background-color: #FF718A;*/
	color: #ffffff;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.job-link-box p:nth-child(1) {
	font-size: 1.4rem;
	font-weight: 700;
	border-right: 2px solid #ffffff;
	padding-right: 20px;
	margin-right: 20px;
}

/************** 先輩インタビュー **************/

.for-newgrad h1:after {
	content: '新卒採用の方へ';
	font-size: 1.5rem;
	font-weight: 700;
	border-left: 6px solid #3e6cd1;
	margin-left: 30px;
	padding-left: 20px;
	position: absolute;
	top: 0;
	left: 230px;
}

.for-career h1:after {
	content: '経験者採用の方へ';
	font-size: 1.5rem;
	font-weight: 700;
	border-left: 6px solid #3e6cd1;
	margin-left: 30px;
	padding-left: 20px;
	position: absolute;
	top: 0;
	left: 230px;
}

.interview h1 {
	width: 600px;
}

.interview-container {
	margin-top: 180px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.interview-left {
	width: 40%;
	position: fixed;
}

.interview-main-box {
	width: 100%;
	height: 50vh;
	background-color: #ffd04f;
	background-image: url(../images/interview-1a.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
	transition: all 0.3s ease-out;
	opacity: 1;
	visibility: visible;
}

.interview-main-txt1,
.interview-main-txt2 {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 80%;
	font-size: 0.9rem;
	margin-bottom: 10px;
}

.interview-main-txt1-1,
.interview-main-txt1-2,
.interview-main-txt2-1,
.interview-main-txt2-2 {
	display: inline-block;
	background-color: #ffffff;
	padding: 10px 30px;
	margin-bottom: 10px;
	line-height: 1.4rem;
}

.interview-main-txt1-1 p {
	line-height: 1.4rem;
}

.interview-main-txt1-2 dd,
.interview-main-txt2-2 dd {
	/*margin-left: 10px;
  font-size: 12px;
  padding: 5px 10px;
  height: 35px;*/
	overflow-y: scroll;
}

.interview-main-txt1-2 dd::-webkit-scrollbar,
.interview-main-txt2-2 dd::-webkit-scrollbar {
	width: 3px;
}

.interview-main-txt1-2 dd::-webkit-scrollbar-track,
.interview-main-txt2-2 dd::-webkit-scrollbar-track {
	width: #f0f6fd;
}

.interview-main-txt1-2 dd::-webkit-scrollbar-thumb,
.interview-main-txt2-2 dd::-webkit-scrollbar-thumb {
	width: #5e9ee8;
}

.interview-main-txt1-2,
.interview-main-txt2-2 {
	width: 100%;
}

.interview-main-txt1 span {
	font-size: 1.1rem;
	font-weight: 700;
	margin-right: 10px;
}

.interview-main-txt1 dl,
.interview-main-txt2 dl {
	display: flex;
	align-items: center;
	margin: 0;
}

.interview-main-txt1 dt,
.interview-main-txt2 dt {
	font-weight: 700;
	white-space: nowrap;
	text-align: center;
}

.interview-main-box#box-1 {
	position: relative;
}

.interview-main-box#box-2 {
	position: absolute;
	top: 0;
}

.interview-main-box:before {
	content: '';
	width: 18px;
	height: 200px;
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: -15px;
	left: 50px;
}

.interview-main-box#box-1:before {
	background-image: url(../images/top-on.svg);
}

.interview-main-box#box-2:before {
	background-image: url(../images/top-off.svg);
}

.hide {
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease-out;
}

.interview-link-box {
	display: flex;
	justify-content: space-between;
	margin: 40px 0 0 40px;
}

.interview-link-box .interview-box {
	width: 18%;
}

.interview-link-box .interview-img,
.interview-link-box .interview-img-hover {
	height: 7vw;
}

.interview-link-box .interview-img:before {
	content: none;
}

.interview-right {
	width: 55%;
	margin-left: 45%;
}

.interview-copy-box {
	width: 100%;
	background: linear-gradient(to right, #ffffff 15%, #f0f6fd 15%);
	background-color: #f0f6fd;
	position: relative;
	padding-bottom: 50px;
	padding-right: 40px;
}

.interview-copy-box p:nth-child(1) {
	font-size: 2.2rem;
	font-weight: 700;
	color: #3e6cd1;
	margin-bottom: 40px;
}

.interview-copy-box p:nth-child(2) {
	display: inline;
	background-color: #ffffff;
	font-size: 1.1rem;
	line-height: 2.2rem;
	font-weight: 700;
}

.interview-content-box {
	max-width: 800px;
	padding-right: 30px;
	margin-top: 50px;
}

p.question {
	font-weight: 700;
	color: #3e6cd1;
	margin: 40px 0 30px;
}

p.question:before {
	content: 'Q';
	font-size: 1.5rem;
	font-weight: 800;
	color: #3e6cd1;
	margin-right: 20px;
}

.interview-ph {
	margin: 40px 0;
}

.interview-ph .flex-container {
	justify-content: center;
}

.interview-ph .flex-2box:nth-child(2) {
	margin-top: 80px;
	margin-left: 2%;
}

.interview-ph img {
	width: 100%;
}

.interview-job-link {
	width: 80%;
	height: 70px;
	border-radius: 35px;
	background-color: #3e6cd1;
	color: #ffffff;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin: 80px auto;
	position: relative;
}

.interview-job-link:hover {
	opacity: 0.7;
	transition: all 0.3s ease-out;
}

.interview-job-link a {
	position: absolute;
	width: 100%;
	height: 100%;
	display: block;
}

.interview-bottom-link {
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-bottom: 50px;
}

.interview-bottom-link-box p {
	font-size: 12px;
	font-weight: 700;
}

.interview-bottom-link-box p.prev {
	padding-left: 80px;
	position: relative;
}

.interview-bottom-link-box p.prev:before {
	content: url(../images/arrow-bk.svg);
	display: inline-block;
	position: absolute;
	top: 0;
	right: 70px;
	transform: scale(-1, 1);
}

.interview-bottom-link-box p.next {
	padding-right: 80px;
	position: relative;
}

.interview-bottom-link-box p.next:after {
	content: url(../images/arrow-bk.svg);
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
}

.interview-bottom-link-box p a {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

/************   ブログ   ************/

.blog .column-side-txt {
	width: calc(25% - 100px);
	top: 150px;
}

.blog .column-side-txt h1 {
	position: fixed;
	top: 50px;
	z-index: 1;
}

.blog .column-side-txt h2 {
	font-size: 1.3rem;
	font-weight: 800;
	margin: 50px 0 0;
}

.blog .acms-list-group {
	border-top: 1px solid #cbdff7;
}

.blog .acms-list-group-item {
	border-bottom: 1px solid #cbdff7;
	font-size: 0.9rem;
	padding: 10px 0;
}

.blog-entry {
	background-color: #ffffff;
	padding: 50px;
	max-width: 1000px;
	margin: 0 auto 30px 0;
}

.blog-entry .acms-page-header {
	border-bottom: 1px solid #cbdff7;
	margin: 0 0 30px;
}

.blog-entry .l-eduSystem__text {
	margin-bottom: 30px;
}

.blog-entry .acms-page-header p {
	font-weight: 700;
}

.blog-entry h2 {
	display: block;
	font-size: 1.2rem;
	color: #191919;
	padding: 0;
	margin: 0;
	border-bottom: none;
}

.blog-entry img {
	width: 80%;
}

.blog-entry-pager {
	width: 100%;
	display: flex;
	justify-content: space-between;
	border-top: 1px solid #cbdff7;
	padding-top: 20px !important;
	margin-top: 20px !important;
}

.column-main2 .blog-entry-pager li:before {
	content: none;
}

.column-main2 .blog-entry-pager li {
	width: 33%;
	margin: 0;
	padding: 0;
}

.acms-pager.blog-entry-pager li > a {
	border-style: none;
	background-color: transparent;
	padding: 0;
	line-height: 18px;
}

.blog-entry-pager .entry-next a:after {
	content: url(../images/arrow-bk.svg);
	display: block;
	position: relative;
	right: 0;
	margin: 5px 0 0 0;
	text-align: right;
}

.blog-entry-pager .entry-prev a:after {
	content: url(../images/arrow-bk.svg);
	display: block;
	position: relative;
	top: 0;
	left: 0;
	transform: scale(-1, 1);
	margin: 5px 0 0 0;
	text-align: right;
}

.acms-pager.blog-entry-pager:after,
.acms-pager.blog-entry-pager:before {
	content: none;
}

.blog-top-pager .acms-pager li {
	margin: 0 10px 10px 0;
	padding: 0;
}

.blog-top-pager .acms-pager li:before {
	content: none;
}

.blog-top-pager .acms-pager li span,
.blog-top-pager .acms-pager li span a {
	border-radius: 0;
	border-style: none;
	background-color: #ffffff;
	color: #3e6cd1;
	font-weight: 700;
	width: 30px;
	height: 30px;
	line-height: 30px;
	padding: 0;
	text-align: center;
}

.blog-top-pager .acms-pager li.back-arrow span::before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #3e6cd1;
	border-right: solid 2px #3e6cd1;
	-ms-transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
	position: absolute;
	top: 50%;
	left: 12px;
	margin-top: -4px;
}

.blog-top-pager .acms-pager li.forward-arrow span::before {
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #3e6cd1;
	border-right: solid 2px #3e6cd1;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 8px;
	margin-top: -4px;
}

.blog-top-pager .acms-pager li.cur span {
	background-color: #cbdff7;
	color: #3e6cd1 !important;
}

.blog .acms-badge {
	color: #3e6cd1;
	background-color: #cbdff7;
}

/************   調整用   ************/
.fw-bold {
	font-weight: 700 !important;
}

.w1200 {
	max-width: 1200px;
}

.w1250 {
	max-width: 1250px;
}

.mt-10 {
	margin-top: 10px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mt-30 {
	margin-top: 30px !important;
}

.mt-50 {
	margin-top: 50px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.mb-30 {
	margin-bottom: 30px !important;
}

.mb-50 {
	margin-bottom: 50px !important;
}

.fs-15 {
	font-size: 15px !important;
}

.ta-l {
	text-align: left !important;
}

.ta-c {
	text-align: center !important;
}

.ta-r {
	text-align: right !important;
}

@media screen and (min-width: 1700px) {
	.interview-img,
	.interview-img-hover {
		height: 230px;
	}
}

@media screen and (max-width: 1700px) {
	.loopSlider1,
	.loopSlider2,
	.loopSlider3 {
		width: 250px;
	}

	.loopSlider1:after,
	.loopSlider3:after,
	.loopSlider2:after {
		width: 250px;
		height: 250px;
	}

	.loopSlider1 ul,
	.loopSlider2 ul,
	.loopSlider3 ul {
		width: 250px;
	}

	.loopSlider1 ul li div,
	.loopSlider2 ul li div,
	.loopSlider3 ul li div {
		width: 250px;
		height: calc(250px * 0.75);
		background-size: cover;
		background-position: center;
	}

	.loopSlider-box img {
		width: 250px;
	}

	.top-message-img,
	.top-policy-img {
		margin: 5% 5% 5% 0;
		width: 45%;
		height: 90%;
	}
	.top-policy-img {
		margin: 5% 0 5% 5%;
	}
}

@media screen and (max-width: 1600px) {
	.nav-box li.ori {
		margin-bottom: 200px;
	}

	.top-message-img,
	.top-policy-img {
		margin: 10% 5% 10% 0;
		height: 80%;
	}

	.top-policy-img {
		margin: 10% 0 10% 5%;
	}
}

@media screen and (max-width: 1500px) {
	.nav-box ul {
		height: 70vh;
		margin: 0 90px 0 40px;
	}

	.loopSlider1,
	.loopSlider2,
	.loopSlider3 {
		width: 200px;
	}

	.loopSlider1:after,
	.loopSlider3:after,
	.loopSlider2:after {
		width: 200px;
		height: 200px;
	}

	.loopSlider1 ul,
	.loopSlider2 ul,
	.loopSlider3 ul {
		width: 200px;
	}

	.loopSlider1 ul li div,
	.loopSlider2 ul li div,
	.loopSlider3 ul li div {
		width: 200px;
		height: calc(200px * 0.75);
		background-size: cover;
		background-position: center;
	}

	.top-recruit-newgrad img,
	.top-recruit-career img {
		height: 90px;
		right: 20px;
	}

	.top-message-img,
	.top-policy-img {
		margin-top: 20%;
		margin-bottom: 20%;
		height: 60%;
	}

	.top-pages h1 {
		font-size: 1.8rem;
		line-height: 1.8rem;
		padding-left: 40px;
	}

	.top-pages h1:before {
		width: 30px;
		height: 30px;
	}

	.top-pages h1:after {
		top: -30px;
	}

	.top-pages-ttl {
		padding: 30px 15px 20px;
	}

	.top-business h1:after {
		top: -15px;
	}

	.footer-contact .container {
		padding: 40px 80px 40px 40px;
	}

	.footer-contact img {
		width: 40%;
	}

	p.footer-contact-catch {
		font-size: 20px;
		margin-bottom: 40px;
	}

	.footer-bnr img {
		max-width: 300px;
	}

	.link-btn {
		border-radius: 40px;
		/*font-size: 20px;*/
		height: 80px;
		line-height: 80px;
		margin-bottom: 40px;
	}

	.link-btn:after {
		top: -5px;
	}

	.policy-img {
		max-width: 750px;
		height: calc(750px * 0.75);
	}

	.bg-wh {
		padding: 20px;
	}

	/*.for-newgrad h1:after,
.for-career h1:after {
  font-size: 20px;
  left: 200px;
}*/

	.interview-main-box {
		height: 40vh;
	}

	.interview-main-txt1,
	.interview-main-txt2 {
		width: 90%;
		margin: 0;
		/*bottom: -10px;*/
	}

	.interview-main-txt1-1,
	.interview-main-txt1-2,
	.interview-main-txt2-1,
	.interview-main-txt2-2 {
		display: inline-block;
		background-color: #ffffff;
		margin-bottom: 5px;
	}

	.interview-main-txt1-2,
	.interview-main-txt2-2 {
		margin-bottom: 0;
	}

	.interview-main-txt2-1 dd {
		margin-left: 10px;
	}

	.interview-main-txt1-2 dd,
	.interview-main-txt2-2 dd {
		margin-left: 10px;
		font-size: 0.8rem;
		line-height: 1.3rem;
		height: 40px;
		overflow-y: scroll;
	}

	.blog-entry {
		padding: 30px;
	}
}
@media screen and (max-width: 1400px) {
	.logo-box ul li {
		margin-right: 15px;
	}

	.logo-box ul li:last-child {
		width: 160px;
		margin-left: 20px;
	}

	.footer-bnr img {
		max-width: 270px;
	}
}

@media screen and (max-width: 1300px) {
	.loopSlider1,
	.loopSlider2,
	.loopSlider3 {
		width: 180px;
	}

	.loopSlider1:after,
	.loopSlider3:after,
	.loopSlider2:after {
		width: 180px;
		height: 180px;
	}

	.loopSlider1 ul,
	.loopSlider2 ul,
	.loopSlider3 ul {
		width: 180px;
	}

	.loopSlider1 ul li div,
	.loopSlider2 ul li div,
	.loopSlider3 ul li div {
		width: 180px;
		height: calc(180px * 0.75);
		background-size: cover;
		background-position: center;
	}

	.top-recruit-newgrad img,
	.top-recruit-career img {
		height: 80px;
		right: 15px;
	}

	.top-recruit-txt {
		padding: 0 45px 0 35px;
	}

	.interview-txt:after {
		width: 20%;
	}
}

@media screen and (max-width: 1279px) {
	.nav-box span {
		font-size: 1.8rem;
		line-height: 1.8rem;
	}

	.nav-box li.ori {
		margin-bottom: 100px;
	}

	.top-message,
	.top-policy {
		width: 100%;
	}

	.top-message,
	.top-policy {
		padding: 40px 40px 40px 40px;
		align-items: center;
	}

	.top-message-img,
	.top-policy-img {
		width: 40%;
		height: 450px;
		margin: 0 5% 0 0;
	}

	.top-policy-img {
		margin: 0 0 0 5%;
	}

	.top-message-txt,
	.top-policy-txt {
		width: 55%;
	}

	.top-pages h1 {
		font-size: 1.5rem;
		line-height: 1.5rem;
	}

	.more-btn {
		margin-bottom: 20px;
	}

	.footer-bnr img {
		max-width: 220px;
	}
}

@media screen and (max-width: 1024px) {
	.loopSlider1,
	.loopSlider2,
	.loopSlider3 {
		width: 150px;
	}

	.loopSlider1:after,
	.loopSlider3:after,
	.loopSlider2:after {
		width: 150px;
		height: 150px;
	}

	.loopSlider1 ul,
	.loopSlider2 ul,
	.loopSlider3 ul {
		width: 150px;
	}

	.loopSlider1 ul li div,
	.loopSlider2 ul li div,
	.loopSlider3 ul li div {
		width: 150px;
		height: calc(150px * 0.75);
		background-size: cover;
		background-position: center;
	}

	.logo-box {
		padding: 40px 0;
	}

	.nav-box li {
		margin-bottom: 40px;
	}

	.nav-box li,
	.nav-box a,
	.nav-box a:hover,
	.nav-box a:visited {
		font-size: 0.9rem;
	}

	.nav-box span {
		font-size: 1.5rem;
		line-height: 1.5rem;
	}

	.nav-box li ul li {
		margin-bottom: 5px;
	}

	.nav-box li.ori {
		margin-bottom: 50px;
	}

	.nav-box li.nav_sub {
		margin-bottom: 10px;
	}

	.container {
		padding: 40px;
	}

	.top-recruit-box {
		display: block;
	}

	.top-recruit-newgrad,
	.top-recruit-career {
		width: 80%;
		margin: 0 auto 20px;
		height: 180px;
	}

	.top-recruit-txt {
		width: 35%;
		height: 180px;
		border-radius: 0 90px 90px 0;
	}

	.top-recruit-newgrad img,
	.top-recruit-career img {
		display: none;
	}

	.top-message-img,
	.top-policy-img {
		height: 400px;
	}

	.top-job {
		background-size: 40%;
	}

	.top-job-box > div {
		width: 48%;
	}

	.top-job-box p.job-txt {
		height: 20vw;
	}

	.interview-box {
		width: 30%;
		margin-bottom: 50px;
	}

	.interview-img,
	.interview-img-hover {
		height: 25vw;
	}

	.interview-txt:after {
		width: 65px;
	}

	.tab_content_description.container {
		padding-top: 80px;
		padding-bottom: 30px;
	}

	.top-pages {
		padding-top: 30px;
	}

	.top-pages h1 {
		font-size: 2rem;
		line-height: 2rem;
		padding-left: 50px;
	}

	.top-pages-ttl {
		padding: 30px 20px 20px;
		height: 130px;
	}

	.top-pages h1:before {
		width: 35px;
		height: 35px;
	}

	.top-data,
	.top-career,
	.top-business,
	.top-workplace {
		width: 48%;
		margin-bottom: 30px;
	}

	.top-blog-box {
		width: 48%;
		margin-bottom: 30px;
	}

	.footer-bnr img {
		max-width: 340px;
		margin-bottom: 20px;
	}

	/************   下層ページ   ************/

	.anchor-link a,
	.anchor-link a:hover,
	.anchor-link a:visited {
		font-size: 0.9rem;
		line-height: 1.7rem;
	}

	.column-main-copy p span {
		font-size: 23px;
		line-height: 50px;
	}

	.column-main-copy p:nth-child(2) {
		margin-top: 15px;
	}

	.policy-img {
		max-width: 500px;
		height: calc(500px * 0.75);
	}

	.messege-copy p {
		font-size: 20px;
		line-height: 35px;
		padding: 20px 0;
	}

	.training-box,
	.career-box {
		width: 48%;
		margin-bottom: 4%;
	}

	.trcontent-ttl {
		width: 30%;
	}

	.trcontent-txt {
		width: 70%;
	}

	.job-img {
		height: 300px;
	}

	.job-ctg-box p {
		min-width: 400px;
		padding: 30px;
		top: -40px;
	}

	.column-main1 h2 {
		font-size: 1.4rem;
		line-height: 1.4rem;
	}

	.job-interview .interview-box {
		width: 20vw;
	}

	.job-interview .interview-img,
	.job-interview .interview-img-hover {
		height: 20vw;
	}

	/*.job-copy p {
    font-size: 16px;
    line-height: 28px;
}*/

	.job-img-sub {
		height: 300px;
	}
}

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

	#adminBox,
	.acms-admin-box {
		margin: 10px 10px 0 10px;
	}

	.main {
		margin: 10px 10px 0 10px;
	}

	.main h1 {
		font-size: 2.2rem;
		line-height: 2.2rem;
	}
	.main h1 span {
		font-size: 0.9rem;
	}

	.menu-right-box {
		/* width: 260px; */
		width: 60px;
		height: 60px;
	}

	.recruit-txt-box {
		width: calc(100% - 260px);
		background-color: #ffffff;
		position: absolute;
		top: 0;
		left: 0;
		padding: 10px 0;
		height: 60px;
		z-index: 12;
		text-align: center;
	}

	.recruit-txt-box img {
		max-height: 40px;
		width: auto;
	}

	.nav-box ul {
		width: 100%;
		display: block;
		padding: 100px 30px 50px 30px;
		margin: 0;
		height: 100vh;
	}

	.nav-box li {
		width: 100%;
	}

	.nav-box li ul {
		padding: 10px 0 0;
	}

	.nav-box li.ori,
	.nav-box li.nav_sub {
		margin-bottom: 30px;
	}

	.menu-btn {
		right: 0;
		width: 60px;
		height: 60px;
	}

	.h-entry-btn {
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		width: 200px;
		height: 60px;
		top: 0;
		position: relative;
		background-color: #fd7a80;
		border-bottom: none;
		transition: all 0.3s ease-out;
		line-height: 60px;
		padding-top: 0;
		letter-spacing: 0.2em;
		font-size: 20px;
	}

	/*.h-entry-btn a, .h-entry-btn a:hover, .h-entry-btn a:visited {
  line-height: 60px;
  padding-top: 0;
  letter-spacing: .2em;
  font-size: 20px;
}*/

	.loopSlider-box {
		top: 0;
		left: 5vw;
		width: 90vw;
	}

	.loopSlider1,
	.loopSlider2,
	.loopSlider3 {
		width: 28vw;
		height: 60vh;
	}

	.loopSlider1:after,
	.loopSlider3:after,
	.loopSlider2:after {
		width: 28vw;
		height: 28vw;
	}

	.loopSlider1 ul,
	.loopSlider2 ul,
	.loopSlider3 ul {
		width: 28vw;
	}

	.loopSlider1 ul li div,
	.loopSlider2 ul li div,
	.loopSlider3 ul li div {
		width: 28vw;
		height: 21vw;
		background-size: cover;
		background-position: center;
	}

	.mv-txt {
		width: 100%;
		overflow: hidden;
		margin-top: 60vh;
		padding-top: 30px;
		background-color: #ffffff;
	}

	.logo-box.sp {
		display: block;
		width: 100%;
		padding: 0;
	}

	.logo-box ul {
		justify-content: space-between;
		padding: 0 30px;
	}
	.logo-box ul li {
		margin-right: 2%;
	}

	.logo-box ul li:last-child {
		width: auto;
		margin-left: 4%;
		margin-right: 0;
	}

	.mv {
		width: 100%;
		min-height: auto;
	}

	.mv h1 {
		width: 100%;
		margin-left: 30px;
	}

	.mv h1 img {
		width: calc(100% - 50px);
	}

	.news {
		margin: 0;
		padding: 30px;
	}
	.news .news-ttl {
		padding: 5px 20px;
		font-size: 20px;
		line-height: 20px;
	}

	.news .news-date {
		font-size: 18px;
		font-weight: 700;
	}

	.container {
		padding: 30px;
	}

	.top-recruit-newgrad,
	.top-recruit-career {
		width: 100%;
	}

	/*.top-message-video{
  width: 80%;
  margin: 0 auto;
}*/
	.top-policy {
		flex-direction: row;
	}

	.top-message,
	.top-policy {
		padding: 30px;
	}

	.top-message-policy h1 {
		margin-top: 30px;
		z-index: 1;
	}

	.top-message-txt,
	.top-policy-txt {
		width: 100%;
	}

	.top-message-img,
	.top-policy-img {
		width: 80%;
		margin: 0 auto 30px;
	}

	.top-job {
		background-position: top 50px right 30px;
	}

	.top-job-box > div:hover p.job-txt {
		opacity: 0;
	}

	.tab_item {
		width: 40%;
	}

	.interview-box {
		width: 48%;
	}

	.interview-img,
	.interview-img-hover {
		height: 40vw;
	}

	.top-data,
	.top-career,
	.top-business,
	.top-workplace {
		width: 100%;
	}

	.top-pages h1 {
		margin-bottom: 10px;
	}

	.top-pages-txt {
		display: none;
	}

	.top-blog-txt {
		padding: 10px 15px;
	}

	.footer-contact img {
		width: 80%;
	}
	p.footer-contact-catch {
		font-size: 20px;
	}

	/*.link-btn{
  font-size: 20px;
}*/

	.footer-contact .container {
		padding: 50px 30px;
		background-image: url(../images/at-therapit-sp.jpg);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top;
	}

	/************   下層ページ   ************/

	.column-side {
		display: none;
	}

	.column-main1,
	.column-main2 {
		width: 100%;
		padding: 60px 30px 30px 30px;
	}

	.column-main1 h2 {
		font-size: 1.3rem;
	}

	.message-video {
		max-width: 100%;
		height: 56vw;
	}

	.messege-ph .flex-2box:nth-child(2) {
		margin-top: 0;
	}

	.policy-img {
		max-width: 100%;
		height: 65vw;
	}

	.column-main1 h2 {
		padding: 0;
		margin-bottom: 10px;
	}

	.statue-img {
		width: 30%;
	}

	.statue-txt {
		width: 70%;
	}

	.data-grid {
		width: 100%;
	}

	.flex-2box {
		width: 100%;
	}

	.flex-3box {
		width: 49%;
	}

	.job-ctg-box p {
		min-width: 300px;
	}

	.job-interview {
		justify-content: space-around;
	}

	.job-interview .interview-box {
		width: 35vw;
		margin: 0;
	}

	.job-interview .interview-img,
	.job-interview .interview-img-hover {
		height: 35vw;
	}

	.job-link-box {
		width: 90%;
		height: 70px;
		margin: 10px 5%;
	}

	.main1-list-link {
		top: 30px;
		right: auto;
		left: 30px;
	}

	.interview .main1-list-link {
		right: auto;
	}

	/************** 先輩インタビュー **************/

	.interview-ttl-container {
		padding: 60px 30px 30px 30px;
		width: 100%;
		background-color: #ffffff;
		/*position: fixed;*/
		top: 0;
		left: 0;
	}

	.interview-container {
		margin-top: 0;
	}

	.interview-left {
		width: 100%;
		height: 40vh;
		z-index: 2;
		position: -webkit-sticky; /* Safari */
		position: sticky;
		top: 0;
	}

	.interview-main-box:before {
		width: 13px;
		left: 30px;
	}

	.interview-link-box {
		display: none;
	}

	.interview h1 {
		width: 100%;
		margin-bottom: 10px;
	}

	.for-newgrad h1,
	.for-career h1 {
		position: relative;
	}

	.for-newgrad h1:after,
	.for-career h1:after {
		font-size: 1.1rem;
		line-height: 1.1rem;
		left: 0;
		position: relative;
		display: block;
		margin: 10px 0 0 0;
		padding: 0 10px;
		border-left: 3px solid #3e6cd1;
	}

	.interview-main-box {
		height: 40vh;
	}

	.interview-right {
		width: 100%;
		margin-left: 0;
	}

	.interview-copy-box {
		margin-top: 50px;
		padding: 0 30px 30px;
	}

	.interview-content-box {
		padding: 0 30px;
	}

	.interview-copy-box p:nth-child(1) {
		font-size: 2rem;
		margin-bottom: 30px;
	}

	.interview-copy-box p:nth-child(2) {
		font-size: 1rem;
		line-height: 2rem;
	}

	.interview-ph .flex-2box:nth-child(2) {
		margin-top: 0;
		margin-left: 0;
	}

	#page-top {
		width: 60px;
		height: 60px;
		right: 30px;
	}

	#page-top p {
		font-size: 1rem;
		top: 7px;
	}

	#page-top p::before {
		top: -10px;
		left: 25px;
	}

	.footer .container {
		padding: 40px 30px 30px 30px;
	}
}

@media screen and (max-width: 480px) {
	.main h1 {
		font-size: 2.2rem;
		line-height: 2.2rem;
	}

	.main p {
		font-size: 0.9rem;
		line-height: 1.8rem;
	}

	.logo-box ul li:last-child {
		width: 40%;
	}

	.h-entry-btn,
	.h-entry-btn a:hover,
	.h-entry-btn a:visited {
		letter-spacing: 0.05em;
		font-size: 16px;
	}

	.menu-right-box {
		width: 40%;
	}

	.recruit-txt-box {
		width: 60%;
	}

	.h-entry-btn {
		width: calc(100% - 60px);
	}

	.top-recruit-txt p {
		font-size: 1.4rem;
		line-height: 1.4rem;
	}

	.top-recruit-txt p span {
		font-size: 0.9rem;
	}

	.top-recruit-newgrad:after,
	.top-recruit-career:after {
		left: 35%;
		margin-left: 15px;
	}

	.top-recruit-newgrad,
	.top-recruit-career {
		height: 120px;
	}

	.top-recruit-txt {
		height: 120px;
		padding: 0 70px 0 20px;
		border-radius: 0 60px 60px 0;
	}

	p.top-message-copy {
		font-size: 1.1rem;
	}

	.top-message-img,
	.top-policy-img {
		width: 100%;
		height: 80vw;
	}

	.top-job {
		background-size: 50%;
		background-position: top 80px right 30px;
	}

	.top-job-box > div {
		width: 100%;
	}

	.top-job-box p {
		font-size: 1rem;
		line-height: 1rem;
	}

	.top-job-box p.job-txt {
		height: 120px;
	}

	.top-job-box > div:hover p.job-txt {
		opacity: 0;
	}

	.job-c {
		padding: 5px 10px;
	}
	.tab_item {
		margin: 0 5px;
		padding-top: 0;
		height: 50px;
		line-height: 50px;
		font-size: 14px;
	}

	.tabs input:checked + .tab_item:after {
		width: 20%;
		left: 40%;
	}

	.interview-main-txt1-1,
	.interview-main-txt1-2,
	.interview-main-txt2-1,
	.interview-main-txt2-2 {
		padding: 5px 10px;
	}

	.interview-main-txt1-1 p {
		font-size: 0.8rem;
		line-height: 1.4rem;
	}

	.interview-main-txt1 span {
		font-size: 0.9rem;
	}

	.interview-txt:after {
		width: 25%;
	}

	.interview-box p {
		line-height: 1.5rem;
	}

	.interview-box p span {
		font-size: 0.8rem;
		line-height: 0.8rem;
	}

	.top-pages h1 {
		font-size: 1.8rem;
		line-height: 1.8rem;
	}

	.top-workplace h1 span {
		font-size: 0.8rem;
	}

	.top-blog-img img {
		height: 100px;
	}

	p.footer-contact-catch {
		font-size: 1rem;
		margin-bottom: 30px;
	}

	/*.link-btn{
  padding: 0 50px;
}
*/
	.link-btn {
		text-align: center;
		padding: 0 30px;
		font-size: 1rem;
		line-height: 60px;
		margin: 0 auto 30px;
		border-radius: 30px;
		width: 100%;
		height: 60px;
	}

	.link-btn:after {
		top: -5px;
	}

	p.top-blog-ttl {
		line-height: 1.3rem;
	}

	.column-main-bgcopy p {
		top: -100px;
		font-size: 30px;
		line-height: 30px;
	}

	.slide-copy {
		margin-top: 30px;
	}

	.column-main-copy p span {
		font-size: 15px;
		line-height: 35px;
	}

	.column-main-copy p:nth-child(2) {
		margin-top: 10px;
		font-size: 1rem;
	}

	.container-narrow {
		margin: 0 auto 30px;
	}

	.slide-copy_inner span {
		font-size: 1.1rem;
		line-height: 2.3rem;
		padding: 3px 0;
	}

	.messege-copy p {
		font-size: 1rem;
		padding: 20px 0;
	}

	.column-main2 h2 {
		font-size: 1.2rem;
		line-height: 1.8rem;
		padding: 50px 0 5px 30px;
	}

	.column-main2 h3 {
		font-size: 1.1rem;
	}

	.statue-img,
	.statue-txt {
		width: 100%;
	}

	.statue-img img {
		max-width: 70px;
		padding-top: 20px;
	}

	.bg-wh h4 {
		font-size: 1rem;
		line-height: 1.7rem;
		margin: 0 0 5px;
	}

	.training-box,
	.career-box {
		width: 100%;
	}

	.trcontent-ttl {
		width: 100%;
		padding: 10px;
	}

	.trcontent-txt {
		width: 100%;
	}

	.training-ttl,
	.career-class,
	.trcontent-ttl p {
		font-size: 1rem !important;
	}

	.flex-3box {
		width: 100%;
	}

	.column-main2 li {
		font-size: 0.9rem;
		line-height: 1.5rem;
	}

	.column-main2 .blog-entry h2 {
		padding: 0;
		font-size: 1.1rem;
	}

	.image-box img {
		width: 100%;
	}

	.job-img {
		height: 200px;
	}

	.job-ctg1 .job-ctg-box p {
		font-size: 20px;
		padding: 30px 50px;
		min-width: 100%;
	}

	.job-ctg-box p {
		font-size: 1.3rem;
	}

	.job-interview .interview-box {
		width: 60vw;
		margin: 20px 0;
	}

	.job-interview .interview-img,
	.job-interview .interview-img-hover {
		height: 60vw;
	}

	.job-link-box p:nth-child(1) {
		width: 100%;
		margin: 0;
		padding: 10px 0 0;
		border: none;
		font-size: 16px;
	}

	.job-link-box p:nth-child(2) {
		padding-bottom: 5px;
	}

	.interview-job-link {
		margin: 40px auto;
		width: 100%;
	}

	.job-detail-content {
		display: block;
	} /*211130追加*/

	.job-detail-content h4 {
		width: 100%;
		font-size: 16px;
		margin: 0 0 10px;
	} /*211130追加*/

	.job-img-sub {
		height: 150px;
	}
}

@media screen and (max-width: 350px) {
	.footer-bnr img {
		max-width: 280px;
		margin-bottom: 20px;
	}
}

.load-container {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	background: #3e6cd1;
	z-index: 99999999;
	left: 0;
	top: 0;
	opacity: 0.3;
}

.loader {
	margin: 100px auto;
	font-size: 25px;
	width: 1em;
	height: 1em;
	border-radius: 50%;
	position: absolute;
	text-indent: -9999em;
	-webkit-animation: load5 1.1s infinite ease;
	animation: load5 1.1s infinite ease;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

@-webkit-keyframes load5 {
	0%,
	100% {
		box-shadow: 0em -2.6em 0em 0em #ffffff, 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
			-2.6em 0em 0 0em rgba(255, 255, 255, 0.5), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7);
	}

	12.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.7), 1.8em -1.8em 0 0em #ffffff,
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
			-2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5);
	}

	25% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.5), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7),
			2.5em 0em 0 0em #ffffff, 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	37.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.7), 1.75em 1.75em 0 0em #ffffff, 0em 2.5em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	50% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.5), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.7), 0em 2.5em 0 0em #ffffff,
			-1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	62.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.5),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.7), -1.8em 1.8em 0 0em #ffffff, -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	75% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.5), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.7), -2.6em 0em 0 0em #ffffff,
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	87.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.5),
			-2.6em 0em 0 0em rgba(255, 255, 255, 0.7), -1.8em -1.8em 0 0em #ffffff;
	}
}

@keyframes load5 {
	0%,
	100% {
		box-shadow: 0em -2.6em 0em 0em #ffffff, 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
			-2.6em 0em 0 0em rgba(255, 255, 255, 0.5), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7);
	}

	12.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.7), 1.8em -1.8em 0 0em #ffffff,
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2),
			-2.6em 0em 0 0em rgba(255, 255, 255, 0.2), -1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5);
	}

	25% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.5), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.7),
			2.5em 0em 0 0em #ffffff, 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2), 0em 2.5em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	37.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.5),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.7), 1.75em 1.75em 0 0em #ffffff, 0em 2.5em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	50% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.5), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.7), 0em 2.5em 0 0em #ffffff,
			-1.8em 1.8em 0 0em rgba(255, 255, 255, 0.2), -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	62.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.5),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.7), -1.8em 1.8em 0 0em #ffffff, -2.6em 0em 0 0em rgba(255, 255, 255, 0.2),
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	75% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.5), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.7), -2.6em 0em 0 0em #ffffff,
			-1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2);
	}

	87.5% {
		box-shadow: 0em -2.6em 0em 0em rgba(255, 255, 255, 0.2), 1.8em -1.8em 0 0em rgba(255, 255, 255, 0.2),
			2.5em 0em 0 0em rgba(255, 255, 255, 0.2), 1.75em 1.75em 0 0em rgba(255, 255, 255, 0.2),
			0em 2.5em 0 0em rgba(255, 255, 255, 0.2), -1.8em 1.8em 0 0em rgba(255, 255, 255, 0.5),
			-2.6em 0em 0 0em rgba(255, 255, 255, 0.7), -1.8em -1.8em 0 0em #ffffff;
	}
}

iframe[src^="https://www.google"]
{
	width: 100% !important;
}
