/* CSS Document */
.desktop{
	display: none !important;
}
.FTW-B{
	font-weight: bold;
}
body{
}
.fadein{
	opacity: 0;
	transform:translateY(20px);
	transition:
		opacity 0.8s ease-out,
		transform 0.8s ease-out;
}
.fadein.show{
	opacity: 1;
	transform:translateY(0px);
}
div.headerWrapper{
	width:100%;
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%),#fff;
	position: fixed;
	z-index: 100;
	top:0;
}
section.gradation{
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
	overflow: hidden;
}
section.gradation.second{
    background: url("../images/top_bg2.png"),
	-webkit-linear-gradient(left, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    overflow: visible;
    padding-top: 138px;
    padding-bottom: 8px;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    margin-bottom: 25px;
    position: relative;
    box-sizing: border-box;
    padding-left: 30px;
    padding-right: 30px;
}
section.gradation.general{
    padding-top: 44px;
    padding-bottom: 28px;
    border-radius: 40px;
    margin-bottom: 60px;
}
section.top{
	margin-top:60px;
}
section.gradation.close{
	padding-bottom:100px;
	position: relative;
}
section.gradation.nextWork{
	margin-bottom:60px;
}
section.gradation.work{
	padding-top:40px;
	position: relative;
}
section.gradation.work::before{
	content: "";
	width:40px;
	height: 40px;
	background:url("../images/circle_left_top.svg") center center no-repeat;
	background-size:40px;
	position: absolute;
	top:0;
	left:0;
}
section.gradation.work::after{
	content: "";
	width:40px;
	height: 40px;
	background:url("../images/circle_right_top.svg") center center no-repeat;
	background-size:40px;
	position: absolute;
	top:0;
	right:0;
}
section.gradation.close::before,
div.interviewWrapper::before{
	content: "";
	width:40px;
	height: 40px;
	background:url("../images/circle_left.svg") center center no-repeat;
	background-size:40px;
	position: absolute;
	bottom:0;
	left:0;
}
section.gradation.close::after,
div.interviewWrapper::after{
	content: "";
	width:40px;
	height: 40px;
	background:url("../images/circle_right.svg") center center no-repeat;
	background-size:40px;
	position: absolute;
	bottom:0;
	right:0;
}
div.addgradation{
	width:100%;
	height: 40px;
	border-bottom-left-radius: 100px;
	border-bottom-right-radius: 100px;
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
	margin-bottom:60px;
}
div.addgradation.narrow{
    margin-bottom:52px;
}
div.header{
	width:100%;
	height: 60px;
	margin:auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
div.footer h1{
    display: flex;
    align-items: center;
    margin-left: 20px;
    text-align: center;
    margin: auto;
    width: 240px;
}
div.footer h1 span{
	font-size:12px !important;
	margin-top:-4px;
}
div.header .corporate_logo{
	display: flex;
	align-items: center;
	margin-left:20px;
	position: absolute;
	top:0;
	bottom:0;
	left:10px;
	margin:auto;
}
div.megaMenu .corporate_logo{
	display: flex;
	align-items: center;
	position: absolute;
	top:36.5px;
	left:20px;
}
div.footer .corporate_logo{
	margin:0 10px;
}
div.header .corporate_logo img,
div.megaMenu .corporate_logo img,
div.footer .corporate_logo img{
	width:auto;
	height: 17px;
}
@media(max-width:360px){
	div.footer .corporate_logo img{
		width:70%;
		height: auto
	}
	div.footer div.corporate_logo{
		margin:0 10px;
	}
}
div.header .corporate_logo span,
div.megaMenu .corporate_logo span,
div.footer .corporate_logo span{
	padding-left:1em;
	margin-bottom:-0.5em;
	display: inline-block;
	line-height: 2.2em;
	font-size:9.66px;
}
div.header .corporate_logo a,
div.megaMenu .corporate_logo a,
div.footer .corporate_logo a{
	color:#000;
}
@media(max-width:360px){
	div.header .corporate_logo a,
	div.megaMenu .corporate_logo a,
	div.footer .corporate_logo a{
		color:#000;
		display: flex;
		flex-direction: column;
	}
}
.headerRight {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	position: absolute;
	margin:auto;
	top:0;
	right:0;
	bottom:0;
}

div.mypage{
	position: absolute;
	width:210px;
	box-sizing: border-box;
	padding:20px;
	border-radius: 20px;
    background-color: #fff;
    right: 40px;
    top: 84px;
	display: none;
}
div.mypage.active{
	display: block;
	transition:all 0.5s;
}
div.mypage p.cat{
	font-size:14px;
	color:#000;
	margin-bottom:6px;
	font-weight: bold;
}
div.mypage a.catlink{
	display: block;
	width:100%;
	border-radius: 5.643px;
	color:#fff !important;
	background-color:#000;
	font-size:14px;
	margin-bottom:7px;
	height: 42px;
	line-height: 42px;
	background-image:url("../images/icon_m0.svg") !important;
	background-repeat: no-repeat;
	
}
div.mypage a{
	position: relative;
	text-align: center;
	background-size:11.5px;
	background-position: right 10px center;
}

a.mypage{
	display: block;
	width:36px;
	height: 36px;
	margin-right: 80px;
}
a.mypage img{
	width:36px;
	height: auto;
}
a:hover img{
	opacity: 0.7;
}
div.megaMenu{
	width:100%;
	position: fixed;
	max-height: calc(100vh - 60px);
	top:60px;
	/*padding-top:100px;*/
	/*background:rgba(255,255,255,0.97);*/
	z-index: 150;
	display: none;
	transition: transform 0.2s;
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%),#fff;
	opacity: 0;
	transform:translateY(-20px);
}
div.megaMenu.active{
	display: block;
    opacity: 1;
	transition: opacity 1.2s;
	transform: translateY(0);
    transition-delay: 1.5s;
}
div.megaMenu div.menu{
	position: absolute;
	top:0;
	right:0;
}
div.menu{
	width:60px;
	height: 60px;
	border-bottom-left-radius: 10px;
	background-image:url("../images/icon_menu.svg");
	background-position: center bottom -4px;
	background-repeat: no-repeat;
	background-color:#fff;
	background-size:36.749px;
    display: flex;
    justify-content: center;
    align-items: center;
	position: absolute;
	top:0;
	right:0;
	cursor: pointer;
}
div.menu.active{
	display: flex;
}
div.subMenu{
    position: fixed;
    width: 100%;
    width: calc(100% - 20px);
    box-sizing: border-box;
    padding: 16px;
    border-radius: 10px;
    bottom: 75px;
    z-index: 20;
    margin: auto;
    left: 0;
    right: 0;
    transform: translateY(400px);
    opacity: 0;
}
div.subMenu.active{
	display: flex;
	gap:10px;
	justify-content: center;
    opacity: 1;
    transform: translateY(0);
	transition:all 0.75s;
}
div.subMenu.intern2{
	background-color:#fff;
}
div.subMenu.grad{
	background-color:#fff;
}
div.subMenu p.cat{
	font-size:14px;
	color:#000;
	margin-bottom:14px;
	font-weight: bold;
}
div.subMenu a.catlink:nth-child(3){
	margin-bottom:14px;
}
div.subMenu a.catlink{
	display: block;
	width:100%;
	border-radius: 5.643px;
	color:#fff !important;
	background-color:#000;
	font-size:14px;
	margin-bottom:7px;
	height: 42px;
	line-height: 42px;
	text-align: center;
	background-repeat: no-repeat;
	background-image:url("../images/icon_link2.svg");
	background-size:10px;
	background-position: right 12px center;
	
}
.openbtn1 {
    cursor: pointer;
    width: 28px;
    height: 14px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.openbtn1 span {
    display: block;
    width: 100%;
    height: 1px;
    background: #000;
    transition: all 0.4s ease;
}

.openbtn1.active span:nth-of-type(1) {
    transform: translateY(6px) rotate(30deg);
    transition: all 0.4s ease;
}

.openbtn1.active span:nth-of-type(2) {
    opacity: 0;
    transition: all 0.4s ease;
}

.openbtn1.active span:nth-of-type(3) {
    transform: translateY(-6px) rotate(-30deg);
    transition: all 0.4s ease;
}


ul.headerMenu {
	display: flex;
	margin-right:20px;
	gap:10px;
	position: relative;
	display: none;
}
ul.headerMenu a{
	width:160px;
	height: 46px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 46px;
	background:red;
	text-align: center;
	font-weight: bold;
	color:#fff !important;
	background-color:#333;
	background-size:11.5px;
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-image:url("../images/icon_m0.svg") !important;
}
ul.headerMenu a:nth-child(1){
	background-image:url("../images/arrow_gray_down.svg") !important;
}
ul.headerMenu a:nth-child(2){
	/*background-image:url("../images/arrow_gray_down.svg") !important;*/
}
ul.headerMenu a.sub2{
	background-image:url("../images/arrow_gray_down.svg") !important;
}
ul.headerMenu a:nth-child(4){
	background-image:url("../images/icon_m4.svg");
}
ul.headerMenu li a{
}
ul.headerMenu span{
	display: block;
	line-height: 1.2em;
}
/*ul.headerMenu span.title span{
	font-size:12px !important;
}*/
div.mainVisual{
	width:100%;
	box-sizing: border-box;
	margin:auto;
	background-image:url("../images/top_bg.png");
	background-size:100%;
	background-position: center bottom;
	background-repeat: no-repeat;
	min-height: 362px;
	padding-top:73px;
	padding-bottom:66px;
	position: relative;
}
.montserrat{
	font-family: "Montserrat";

}
div.mainVisual div.left{
	width:207px;
	box-sizing: border-box;
	padding-left:18px;
	position: absolute;
	z-index: 2;
	
	min-height: 362px;
}
div.mainVisual div.left p.first{
	margin-top:85px;
	margin-top:50px;
	letter-spacing: 0.08em
}
div.mainVisual div.left p.second{
	font-size:21.59px;
}
div.mainVisual h1{
	margin-left:-20px;
}
div.mainVisual h1 img{
	width:218px;
}
div.mainVisual div.right{
	width:326px;
	position: absolute;
	left:36vw;
	z-index: 1;
	transform: scale(0.5,1);
}
.jR3DCarouselGalleryCustomeTemplate .captions{
	position: relative;
	padding: 4px 0;
	margin: 20px 40px;
	bottom: 27px;
	background: #ec1c8e;
	display:block			
}
.jR3DCarouselGalleryCustomeTemplate a{
	text-decoration: none;			
}
.jR3DCarouselCustomSlideMobile video {
	border-radius: 20px;
	height: 100%;
	/*width:200%;*/
	/*border:10px solid #fff;*/
	padding:10px;
	box-sizing: border-box;
}

div.news{
    flex-direction: column;
    margin: 0 auto;
    display: flex;
    align-items: center;
    margin-top: 30px;
}
div.news div.left{
    box-sizing: border-box;
    padding: 16px min(5%,36px);
    background: #fff;
    position: relative;
    border-radius: 10px;
    display: flex;
    margin: 20px 30px;
    width: calc(100% - 60px);
    max-width: 320px;
}
div.news div.left::before{
	/*content: "";
	position: absolute;
	width:23px;
	height: 23px;
	background:url("../images/icon_info.svg") no-repeat;
	background-size:23px;
	top:-5.65px;
	left:-5.65px;*/
}
div.news div.two{
	text-align:center;
	border-right: 1px solid #BEBEBE;
	padding-right: 12px;
	margin-right: 12px;
}
div.news div.two img{
    height: auto;
    max-width: min(163px,100%);
}
div.news div.two p{
	margin-top:20px;
}
div.news img.logo2{
	width:72px !important;
	height: 73px;

}
div.news div.right{	
	border-top:1px solid #000;
	padding-top:12px;
    margin:0 30px;
}
div.titleWrapper{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
div.titleWrapper p.title{
    font-size:20px;
}
a.viewmore{
	line-height: 30px;
	padding-right: 30px;
	background:url("../images/icon_more.svg") right center no-repeat;
	background-size:20px;
}
a.viewmore:hover{
	opacity: 0.75;
}
ul.news{
	margin-top:20px;
}

ul.news li{
	display: flex;
	gap:32px;
	margin-bottom:1.5em;
}
ul.news span.date{
	color:#8B8B8B;
	display: block;
	width:100px;
    font-size:12px;
}
ul.news a{
	color:#000;
    font-size:12px;
}
ul.news span.new{
	display: none;
}
div.smallWrapper{
	margin:auto 30px;
}
h2.main{
    position: relative;
    margin-bottom: 33px;
    font-size: 30px;
    margin-top:60px
}
h2.main + p{
    font-size: 14px;
}
h2.main.career{
    font-size: 18px;
}
h2.main::before{
    content: "";
    width: 20px;
    height: 1px;
    background: #009bca;
    position: absolute;
    top: -30px;
    left: 0px;
}
h2.main.internship::before{
	background:#78AC42;
}
h2.main.newgrad::before{
	background:#78BB42;
}
h2.main.career::before{
	background:#DB542F;
}
h2.main.env::before{
	background:#564082;
}
h2.main::after{
    position: absolute;
    font-size: 16px;
    font-weight: bold;
    color: #009bca;
    top: -42px;
    left: 30px;
    font-family: "Montserrat";
}
h2.main.company::after{
	content: "Company";
}
h2.main.work::after{
	content: "Work";
}
h2.main.env::after{
	content: "Emvironment";
	color: #564082;
}
h2.main.newgrad::after{
	content: "New Grad";
	color:#78BB42;
}
h2.main.internship::after{
	content: "Internship";
	color:#78AC42;
}
h2.main.career::after{
	content: "Career";
	color:#DB542F;
}
h2.career span.small{
	font-size:24px !important;
}
h2.entry{
    text-align: center;
    transform: translate(0,-29px);
    position: relative;
    font-size: 40px;
    font-weight: bold;
}
h2.entry::after{
    content: "採用エントリー";
    position: absolute;
    font-size: 16px;
    font-weight: bold;
    color: #000;
    bottom: -18px;
    left: 0;
    right: 0;
}
div.companyWrapper,
div.companyWrapper2{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}
div.companyWrapper.close/*,
div.companyWrapper2.close*/{
	display: none;
	transition: all 0.2s;
}
div.companyWrapper.active/*,
div.companyWrapper2.active*/{
	display: flex !important;
	transition: all 0.2s;
}
div.companyWrapper2{
    transition: all 1.5s ease; /* すべてのスタイル変更に対して0.5秒のアニメーションを適用 */
    opacity: 0;
    height: 0;
    overflow: hidden;
}
.companyWrapper2.active {
    opacity: 1;
    height: auto; /* 元の高さに戻す */
}
p.companyMore{
	font-size:14px;
	padding-right: 20px;
	background:url("../images/arrow_down.svg") right center no-repeat;
	background-size:10px;
	cursor: pointer;
	margin:32px auto;
	width:13em;
}
p.companyMore2{
	font-size:14px;
	padding-right: 20px;
	background-size:10px;
	cursor: pointer;
	margin:29px auto;
	text-align: center;
    font-weight: bold;
}
p.companyMore2 span.ci1{
	margin-left:20px;
	display: inline-block;
}
p.companyMore2 span.ci1 img{
	width:10px;
	height: 1em;
	object-fit: cover;
	object-position: center;
}
p.companyMore:hover{
	opacity: 0.75;
}
div.ceo{
	background:#fff;
	margin-bottom:10px;
	border-radius: 12px;
	display: flex;
    flex-direction: column;
	margin-top:29px;
	box-sizing: border-box;
	padding:10px;
    position: relative;
}
div.ceo div.video{
	width:100%;
	aspect-ratio:1 / 1;
	background:#ccc;
	border-radius: 8px;
}
div.ceo div{
	margin:0 10px;
}
div.ceo img{
    width:100%;
    height: auto;
    aspect-ratio:1 / 1;
    object-fit: cover;
    border-radius: 6px;
    object-position: 70% 30%;
    margin-bottom:10px;
}
div.ceo h3.company,
div.companyWrapper h3,
div.companyWrapper2 h3{
    font-size:16px;
}
div.ceo h3.company + p{
    font-size:12px;
}
a.company{
	width:100%;
	height: 110px;
	background:#fff;
	border-radius: 8px;
	display: flex;
	position: relative;
	margin-bottom:15.81px;
	box-sizing: border-box;
	padding:10px;
	align-items: center;
	color:#000;
}
a.company div{
	margin-left:17px;
}
a.company img{
	border-radius: 6px;
	width:90px;
	height: 90px;
	object-fit: cover;
	object-position: center;
}
p.viewmore2{
	position: absolute;
	right:10px;
	bottom:10px;
	padding-right: 18px;
	background:url("../images/arrow_viewmore2.svg") right center no-repeat;
	background-size:10px;
	font-family: "Montserrat";
	font-weight: normal;
    font-size:11px;
}
p.viewmore6{
	position: absolute;
	right:22px;
	bottom:22px;
	padding-right: 18px;
	background:url("../images/arrow_viewmore2.svg") right center no-repeat;
	background-size:10px;
	font-family: "Montserrat";
}

a.department {
    background: #e1e6e6;
    background: #fff;
    border-radius: 12px;
    display: flex;
    box-sizing: border-box;
    padding: 10px;
    position: relative;
    margin-top: 60px;
    flex-direction: column;
    padding-bottom: 38px;
}
a.department img{
	width:100%;
	height: auto;
    aspect-ratio:1 / .43;
	object-fit: cover;
	object-position: center;
    border-radius: 6px;
    margin-bottom:20px;
}
a.department p{
    font-size: 13px;
}
a.department div{
	margin:0 10px;
}
h3.department{
    margin-bottom: 18px;
    position: relative;
    font-size: 16px;
}
h3.department::before{
   /* content: "Work";
    position: absolute;
    left:0;
    top:-25px;
	font-family: "Montserrat";
    font-size:14px;*/
}
div.interviewWrapper{
    width: 100%;
    position: relative;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    overflow: hidden;
    margin-bottom: 60px;
}
div.interview{
    height: 315px;
	background-color:#fff;
    margin:122px 20px 74px;
    border-radius: 29px;
    position: relative;
}
div.interview2{
    background-color: #fff;
    margin: 10px 10px 56px;
    border-radius: 20px;
    position: relative;
    padding: 38px 20px;
    display: flex;
    gap: 36px;
    flex-direction: column;
    /* padding-bottom: 343px; */
}
div.interview h2{
    font-family: "Montserrat";
    text-align: center;
    position: relative;
    transform: translate(0,-25px);
    font-size: 32px;
}
div.interview h2::after{
    content: "社員インタビュー";
    font-weight: bold;
    font-size:18px;
    font-family: "Roboto", "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    position: absolute;
    margin:auto;
    right:0;
    left:0;
    bottom:-29px;
}
a.interview{
    display: block;
    width: 227px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    background-color: #000;
    color: #fff;
    border-radius: 75px;
    background-image: url("../images/arrow_interview.svg");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 10px;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 25.5px;
    font-size: 14px;
	z-index: 2;
}
a.interview.store{
    position: relative;
    margin-top: 50px;
    margin-bottom: 56px;
}
a.interview:hover{
    opacity: 0.75;
}
div.carousel{
	position: absolute;
	width:100%;
	height: 317px;
	gap:15px;
	top:205px;
	margin:auto;
	display: flex;
	flex-direction: column;
}
div.carousel img{
	margin:0 7.5px;
	object-fit: cover;
	object-position: center;
}
div.carousel div.carousel-row{
	height: 57px;
}
div.carousel div.carousel-row img{
    width: 111px !important;
    height: 57px !important;
    border-radius: 4px;
}
div.envWrapper{
    width: 100%;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    background-size: cover;
    background-position: center;
    margin: 0 auto 60px;
    position: relative;
    border-radius: 40px;
    overflow: hidden;
    padding-bottom: 28px;
    padding-top: 44px;
    padding-left: 30px;
    padding-right: 30px;
    box-sizing: border-box;
}
div.workWrapper{
    width:100%;
	background-image:
    linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    background-size: cover;
    background-position: center;
    margin:0 auto 200px;
    position: relative;
    border-radius: 100px;
    overflow: hidden;
    padding-bottom:166px;
}
div.entryWrapper{
    width:100%;
	background-image:
    linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    background-size: cover;
    background-position: center;
    margin:0 auto;
    position: relative;
    padding-top:72px;
    /*border-top-left-radius: 100px;
    border-top-right-radius: 100px;*/
    /*overflow: hidden;*/
}
div.careerWrapper{
    width:100%;
	background-color:#DFE4E4;
    background-size: cover;
    background-position: center;
    margin:0 auto 200px;
    position: relative;
    border-radius: 100px;
    overflow: hidden;
    padding-bottom:166px;
}
div.gradWrapper{
    width:100%;
	height: 650px;
	background-image:
    linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    margin:0 auto 200px;
    position: relative;
	padding-top:208px;
	margin-bottom:572px;
}
div.sitemapWrapper{
    width: 100%;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}
div.megaMenu div.sitemapWrapper{
	background-image:none;
    width:calc(100% - 30px);
    margin:auto;
    overflow-y: auto;
    height: calc(100vh - 100px);
    
}
div.megaMenu div.sitemapWrapper::-webkit-scrollbar {
  width: 5px;
}

div.megaMenu div.sitemapWrap5per::-webkit-scrollbar-track {
  background-color: #fff;
}

div.megaMenu div.sitemapWrapper::-webkit-scrollbar-thumb {
  background-color: #bababa;
  border-radius: 8px;
}
h2.grad{
    text-align: center;
    position: relative;
}
h2.main.newgrad::before{
	background:#78BB42;
}

h2.grad::before{
    content: "New Grad";
    font-size:24px;
    font-weight: bold;
    text-align: center;
    position: absolute;
    margin:auto;
    left:0;
    right:0;
    top:-60px;
	font-family: "Montserrat";
    color:#564084;
}
h2.grad::after{
    content:"";
    width:30px;
    height: 1px;
    background:#564084;
    position: absolute;
    left:0;
    right:0;
    top:-18px;
    margin:auto;
}
p.env{
    /* text-align: center; */
    margin: 30px auto 30px;
}
div.env{
    margin:auto;
}
div.internship{
	display: flex;
	margin-bottom: 200px;
}
div.internship > div{
	width:50%;
}
h2.main.internship + p{
	text-align: left;
}
div.internship div.right{
	display: flex;
	justify-content: space-between;
}
div.internship a.intern{
	display: block;
	width:260px;
	height: 389px;
	border-radius: 10px;
	padding:10px;
	box-sizing: border-box;
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);	
	color:#000;
	position: relative;
}
div.internship a.intern h3{
	text-align: center;
	margin-top:26px;
}
div.internship a.intern h3 + p{
	text-align: center;
	margin-top:10px;
}
div.newgradWrapper {
	width:1200px;
	position: absolute;
	margin:auto;
	display: flex;
	justify-content: space-between;
	left:0;
	right:0;
	top:404px;
}
div.newgrad{
	width:582px;
	height: 732px;
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);	
	box-sizing: border-box;
	padding:10px;
	border-radius: 30px;
	position: relative;
}
div.newgrad img{
	border-radius: 20px;
}
h3.newgrad{
	text-align: center;
	margin-top:137px;
	position: relative;
}
h3.newgrad::before{
	position: absolute;
	text-align: center;
	margin:auto;
	left:0;
	right:0;
	top:-68px;
	font-weight: bolx;
	font-size:24px;
}
h3.newgrad.alumnui::before{
	content: "Alumni";
	color:#5B3A8C;
}
h3.newgrad.referral::before{
	content: "Referral";
	color:#E35513;
}
h3.newgrad::after{
	content:"";
	width:30px;
	height: 1px;
	position: absolute;
	margin:auto;
	left:0;
	right:0;
	top:-22px;
}
h3.newgrad.alumnui::after{
	background:#5B3A8C;
}
h3.newgrad.referral::after{
	background:#E35513;
}
h3.newgrad + p{
	text-align: center;
	margin-top:51px;
}
a.viewmore3{
    display: block;
    width:340px;
    height: 75px;
    line-height: 75px;
    text-align: center;
    background-color:#000;
    color:#fff;
    border-radius: 75px;
    background-image:url("../images/arrow_interview.svg");
    background-repeat: no-repeat;
    background-position: right 36px center;
    background-size:10px;
    position: absolute;
    margin:auto;
    left:0;
    right:0;
    bottom:50px;
	font-size:16px;
}
a.viewmore3:hover{
    opacity: 0.75;
}
p.viewmore4{
    text-align: right;
    color:#fff;
    background-image:url("../images/arrow_interview.svg");
    background-repeat: no-repeat;
    background-position:right center;
    background-size:10px;
    position: absolute;
    padding-right:18px;
    right:36px;
    bottom:28px;
}
p.viewmore4:hover{
    opacity: 0.75;
}
p.viewmore5{
    text-align: right;
    color:#000;
    background-image:url("../images/arrow_viewmore2.svg");
    background-repeat: no-repeat;
    background-position:right center;
    background-size:10px;
    position: absolute;
    padding-right:18px;
    right:24px;
    bottom:24px;
}
p.viewmore5:hover{
    opacity: 0.75;
}
div.careerWrapper2{
    margin: 30px auto 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
a.career{
    border-radius: 10px;
    display: flex;
    gap: 20px;
    flex-direction: column;
    align-items: center;
    box-sizing: border-box;
    padding: 10px;
    color: #000;
    position: relative;
    background: #fff;
    padding-bottom: 30px;
}
a.career img{
    border-radius: 10px;
    width: 100%;
    aspect-ratio: 320 / 140;
    object-fit: cover;
}
a.career p.sub{
    margin-bottom:13px;
	color:#CF5513;
    font-size:14px;
}
a.career h3{
    margin-bottom: 13px;
    font-size: 18px;
}
a.career p.desc{
    line-height: 2em;
    font-size: 13px;
}
div.careerWrapper3 {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
}
a.career3{
     width: 100%; 
    background: #fff;
    color: #000;
    border-radius: 10px;
    box-sizing: border-box;
    padding: 10px;
    display: flex;
    gap: 30px;
    align-items: center;
    position: relative;
}
a.career3 img{
    border-radius: 10px;
    width: 90px;
    height: 90px;
    object-fit: cover;
}
h3.career3{
    font-size:16px;
    font-weight: bold;
}
div.jobWrapper{
    margin: 15px auto 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-bottom: 44px;
    display: none;
}
a.job{
	display: block;
	box-sizing: border-box;
	width:100%;
    height: 70px;
    border-radius: 6px;
    position: relative;
    margin: 12px 30px;
}
a.job div.title{
	position: absolute;
	width:100%;
	height: 70px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
a.job div.img{
	position: absolute;
	width:100%;
	height: 70px;
	object-fit: cover;
	z-index: 1;
	border-radius: 6px;
}
a.job div.img img{
	width:100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 6px;
}
a.job div.cover{
	position: absolute;
	width:100%;
	height: 70px;
	background:rgba(0,0,0,0.6);
	z-index: 2;
	border-radius: 6px;
}
a.job span{
	display: block;
	text-align: center;
	color:#fff;
	font-size:12px;
}
a.job span.title{
	font-size:20px;
}
a.job:hover{
	opacity: 0.75;
}
div.sitemap{
    margin: auto;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    /*padding-top: 75px;*/
    padding-bottom: 67px;
    display: flex;
    flex-direction: column;
    color: #000;
}
div.sitemap a{
	color:#000;
    display: block;
}
dl.sitemap > dt{
	font-size:16px;
	font-weight: bold;
	margin-bottom:23px;
}
div.megaMenu dl.sitemap > dt{
	font-size:20px;
	width:250px;
	line-height: 42px;
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
	border-radius: 6px;
	text-indent: 1em;
}
div.megaMenu div.site{
	display: none;
}
div.megaMenu dl.sitemap > dd > ul > li span{
	border-bottom:1px solid #D7D7D7;
	padding-bottom:5px;
	margin-bottom:5px;
	display: inline-block;
	width:100%;
}
dl.sitemap ul.company{
	display: none;
}
div.megaMenu ul.company{
	display: block !important;
	margin-top:0.7em;
}
div.megaMenu ul.company li{
	margin-bottom:0.7em;
}
dl.sitemap dd > ul{
	margin-bottom:20px;
}
dl.sitemap dd > ul > li{
	font-size:14px;
	padding-left:10px;
	position: relative;
	margin-bottom:0.7em;
}
dl.sitemap dd > ul:not(ul.sub) > li::before{
	content:"";
	background:#D65513;
	width:4px;
	height: 4px;
	border-radius: 2px;
	position: absolute;
	left:-1px;
	top:0.5em;
}
dl.sitemap dd > ul > li > ul > li{
	padding-left:30px;
	position: relative;
	font-size:12px;
}
dl.sitemap dd > ul > li > ul > li::before,
div.sitemapflex dt::before{
	content:"";
	width:10px;
	height: 1px;
	background:#A4A4A4;
	position: absolute;
	left:17px;
	top:9px;
}
dl.sitemap dd > ul > li > ul{
	margin-bottom:20px;
	margin-top:0.7em;
}
dl.sitemap div.sitemapflex{
	margin-top:10px;
	margin-left:20px;
}
div.sitemapflex {
	display: none;
}
div.megaMenu div.sitemapflex{
	display: flex !important;
}
div.sitemapflex dt{
	position: relative;
	margin-bottom:0.7em;
}
div.sitemapflex li{
	font-size:12px !important;
}
div.sitemapflex li::before{
	content:"" !important;
}
dl.sitemap a.link{
	background:url("../images/icon_link.svg") right center no-repeat;
	padding-right: 24px;
	background-size:12px;
}
div.site{
    margin: auto;
    display: flex;
    gap: 10px;
    flex-direction: column;
    padding: 17px;
    box-sizing: border-box;
}
div.site a:hover{
    border:none;
}
div.site h4{
	padding-right: 27px;
	font-size:20px;
	font-weight: bold;
}
div.group{
    box-sizing: border-box;
    background: #fff;
    border-radius: 10px;
    padding: 27px 36px;
    padding: 17px;
}
div.group h5,
p.groupTitle {
    margin-bottom: 17px;
    font-size: 14px;
    font-weight: bold;
}
div.group dl{
	display: flex;
	align-items: center;
	margin-bottom:18px;
}
div.group dl dt{
    width: 70px;
    font-size: min(2.8vw,12px);
}
div.group dl dd{
	display: flex;
	gap:10px;
}
@media(max-width:375px){
	div.group dl{
		display: flex;
		flex-direction: column;
	}
	div.group dl dt{
		font-size:12px;
		text-align: center;
		width: 100%;
		margin-bottom:0.5em;
	}
}
div.footerWrapper{
	width:100%;
	padding-bottom:34px;
}
div.footer{
    max-width: 100%;
    width: 100%;
    margin: auto;
    padding-top: 53px;
    margin-bottom: 27px;
}
div.footerFlex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 31px;
    flex-direction: column;
    gap: 40px;
}
ul.footerLink{
    display: flex;
    gap: 12px;
    margin-left: 20px;
    flex-direction: column;
    font-size: 12px;
}
ul.footerLink li{
	background:url("../images/icon_link.svg") right center no-repeat;
	background-size:12px;
	padding-right: 20px;
}
div.newgrad2Wrapper {
    margin: 55px auto 0;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
h3.newgrad2{
	text-align: center;
	margin-bottom:32px;
}
a.newgrad2big{
    display: block;
    /* height: 340px; */
    box-sizing: border-box;
    border-radius: 20px;
    padding: 10px;
    background-color: #fff;
    position: relative;
    margin-bottom: 20px;
    padding-bottom: 34px;
}
a.newgrad2big img{
    border-radius: 14px;
    width: 100%;
    aspect-ratio: 520 / 220;
    object-fit: cover;
    object-position: center;
}
a.newgrad2big h4{
	margin-top:28px;
}
a.newgrad2{
    height: 80px;
    box-sizing: border-box;
    border-radius: 8px;
    background-color: #fff;
    position: relative;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    padding: 10px 20px;
}
a.newgrad2 span.job,
a.newgrad2big span.job{
    color: #fff;
    padding: 8px 14px;
    background: #000;
    border-radius: 6px;
    /* margin-left: 17px; */
    margin-right: 12px;
}
a.newgrad2big span.job{
    padding: 0 14px;
}
a.newgrad2 span.job.gray,
a.newgrad2big span.job.gray{
	background:#485254;
}
a.newgrad2big h4{
    font-size: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:10px;
}
a.newgrad2 h4{
    font-size:16px;
}
.sitemapWrapper h2{
	font-size:18px;
	font-weight: bold;
	margin-bottom:35px;
}
.megaMenu div.sitemapWrapper h2{
	font-size:18px;
	font-weight: bold;
	width:250px;
	height: 42px;
	line-height: 42px;
	background-image:
    linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
	border-radius: 6px;
	box-sizing: border-box;
	padding-left:15px;
	margin-bottom:35px;
}
.megaMenu div.sitemapWrapper h2.arrow{
	background-image:
		url("../images/arrow_red.svg"),
		linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%) !important;
		background-position: 
			right 10px center,
			center;			;
		background-repeat: no-repeat;
		background-size:
			10px,
			250px;
}

div.sitemapWrapper h3{
	font-size:14px;
	margin-bottom:20px;
	position: relative;
	padding-left:10px;
}
div.sitemapWrapper h3:not(.megaMenu div.sitemapWrapper h3)::before{
	content:"";
	width:3px;
	height: 3px;
	border-radius: 3px;
	background:#E35513;
	position: absolute;
	left:0;
	top:8px;
}
.megaMenu div.sitemapWrapper h3,
ul.red{
	font-size:14px;
}
.megaMenu h3.red,
ul.red li{
	padding-left:11px;
	padding-bottom:11px;
	position: relative;
	border-bottom:1px solid #B1B1B1;
	margin-bottom:35px;
}
.megaMenu h3.red::before,
ul.red li::before{
	content:"";
	width:3px;
	height: 3px;
	border-radius: 3px;
	background:#E35513;
	position: absolute;
	left:0;
	top:8px;
}
div.sitemap ul.red li.link{
	background:url("../images/icon_link.svg") right top 5px no-repeat;
	background-size:12px;
	padding-right:20px;
}
.megaMenu div.sitemap ul.red li.link{
	background:url("../images/icon_link_red.svg") right top 5px no-repeat;
	background-size:12px;
}
ul.line{
	margin-bottom:46px;
}
ul.line li{
    padding-left: 20px;
    margin-bottom: 35px;
    position: relative;
    font-size: 12px;
    line-height: 50px;
    text-indent: 49px;
}
ul.line li::before{
	content: "";
	width:10px;
	height: 1px;
	background:#B1B1B1;
	position: absolute;
	left:0;
	top:8px;
}
h3.gen{
	font-size:14px;
	font-weight: bold;
}
.megaMenu h3.gen{
	padding-left:24px;
	padding-bottom:10px;
	border-bottom:1px solid #B1B1B1;
	margin-bottom:21px;
	background:url("../images/arrow_red_down.svg") left 5px top 7px no-repeat;
	background-size:10px;
}
.sitemapWrapper a:hover{
	/*border-bottom:1px solid #B1B1B1;*/
}
p.pankuzu{
    margin: 33px auto 21px 10px;
    display: flex;
    gap: 7px;
    align-items: center;
    justify-content: flex-start;
    overflow-x: auto;
    word-break: keep-all;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 10px;
}
p.pankuzu span.next{
	background:url("../images/arrow_gray.svg") center center no-repeat;
	background-size:5px;
	width:5px;
	height: 8px;
	display: block;
	flex:0 0 5px;
}
p.pankuzu a,
p.pankuzu span.nolink{
    border-radius: 20px;
    color:#fff;
}
div.h1Wrapper p.pankuzu a{
    text-decoration: underline;
}
p.pankuzu span.current{
    color:#fff;
}
div.h1Wrapper p.pankuzu span.current{
}
p.pankuzu a:hover{
	opacity: 0.75;
}
section.gradation p.pankuzu a,
section.gradation p.pankuzu span.nolink,
section.gradation p.pankuzu span.current{
	color:#000;
}
p.pankuzu.blk a,
p.pankuzu.blk span.nolink,
p.pankuzu.blk span.current{
	color:#000 !important;
	display: flex;
	justify-content: flex-start;
	font-size:12px;
}
p.pankuzu.blk {
	margin-left:20px;
}
p.pankuzu.blk a{
	text-decoration: underline;
}
h1.bigTitle {
    font-size: 24px;
    font-weight: bold;
    margin: 0 38px 38px;
}
p.bigTitle{
	margin:0 auto 45px;
}
img.bigStaff{
	width:100%;
	aspect-ratio:400 / 218;
	object-fit: cover;
	object-position: center;
}
div.staffBox{
    margin: auto;
    width: min(100%,420px);
}
div.staffBox p:not(p.job){
    margin-left:16px;
}

div.staff{
    background: #fff;
    box-sizing: border-box;
    padding: 14px;
    border-radius: 6px;
    display: flex;
    gap: 14px;
    margin: auto 30px;
}
div.staff div.left img{
    width: 70px;
    height: 96px;
    object-fit: cover;
    border-radius: 6px;
}
div.staff p.job{
	width:80px;
	height: 24px;
	line-height: 24px;
	text-align: center;
	font-size:12px;
	font-weight: bold;
	color:#fff;
	margin-bottom:9px;
}
div.staff p.job.regular{
	background:url("../images/tag_1-80.jpg");
}
div.staff p.job.pharmacist{
	background:url("../images/tag_2-80.jpg");
}
div.staff p.staff,
div.staff p.name{
	font-size:12px;
}
div.staff p.en{
	font-size:8px;
}
h2.staff{
    text-align: center;
    margin: 50px auto 22px;
    color: #000;
    font-size: 20px;
    font-weight: bold;
}
h3.staff {
    text-align: center;
    margin: 70px auto 22px;
    color: #000;
}
div.dayflowWrapper{
    display: flex;
    justify-content: space-between;
    margin: auto auto 46px;
    position: relative;
    flex-direction: column;
}
div.dayflowWrapper::after{
	content: "";
	height:calc(100% - 20px);
	width: 1px;
	position: absolute;
	background:#009C9C;
	margin:auto;
	left:0;
	right:0;
	top:0;
	bottom:0;
}
dl.dayflow{
	text-align: center;
	display: flex;
	justify-content: center;
	gap:42px;
	margin-bottom:33px;
}
dl.dayflow:last-child{
	margin-bottom: 0;
}
dl.dayflow dt{
	font-size:14px;
	color:#009C9C;
	position: relative;
	text-align: right;
	width:calc(50% - 21px);
}
dl.dayflow dt::after{
	content: "";
	width:14px;
	height: 14px;
	border-radius: 14px;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	right:-28px;
	background:#009C9C;
}
dl.dayflow dd{
	font-size:14px;
	color:#000;		
	text-align: left;
	width:calc(50% - 21px);
	font-weight: bold;
}
h3.interview{
    color: #009C9C;
    font-weight: bold;
    margin-bottom: 30px;
    position: relative;
    font-size: 14px;
    padding-left: 10px;
}
h3.interview::before{
    content: "";
    width: 6px;
    height: 6px;
    background: #009C9C;
    border-radius: 6px;
    position: absolute;
    left: -5px;
    top: 6px;
    font-size: 16px;
}
div.interview2 div.contents_left,
div.interview2 div.contents_right{

}
div.interview2 div.contents_right{
}
div.interview2 div.contents_left.narrow{

}
div.interview2 div.staffPhoto_right,
div.interview2 div.staffPhoto_left{
    /* width: 340px; */
    position: relative;
    height: 313px;
}
div.interview2 div.staffPhoto_right.wide{
	height: auto;
}
div.interview2 div.staffPhoto_right img{
    position: absolute;
    margin: auto;
    left: 0;
    width: 417px;
    height: 313px;
    object-fit: cover;
    object-position: left center;
    border-radius: 30px;
}
div.interview2 div.staffPhoto_left img{
    position: absolute;
    margin: auto;
    /* top: 24px; */
    right: 32px;
    width: 417px;
    height: 313px;
    object-fit: cover;
    object-position: left center;
    border-radius: 30px;
}
div.interview2 p.summary,
div.interviewNarrow p.summary,
div.mydayoff p.summary{
	font-size:28px;
	font-weight: bold;
}
div.interview2 h2.summary, div.interviewNarrow h2.summary, div.mydayoff h2.summary {
    font-size: 20px;
    font-weight: bold;
}
div.interview2 p.content,
div.interview3 p.content,
div.mydayoff p.content{
    margin-top: 40px;
    font-size: 16px;
    line-height: 2em;
}
p.content img{
    border-radius: 10px;
	width:100%;
}
div.staffPhotoBig {
    margin: auto 10px 45px;
}
div.staffPhotoBig img{
    object-fit: cover;
    border-radius: 10px;
    aspect-ratio: 340/ 180;
    width: 100%;
    height: auto;
    margin-bottom: 45px;
}
div.mydayoff{
    margin: 0 10px 100px;
    border-radius: 28px;
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: column-reverse;
    align-items: stretch;
    padding-top: 43px;
    /* gap: 55px; */
}
div.mydayoff div.left{
	width:calc(100%);
	position: relative;
	overflow: visible;
}
div.mydayoff div.left::after{
	content: "";
	position: absolute;
	background-image:url("../images/mydayoff.svg");
	background-size:222px;
	background-repeat: no-repeat;
	background-position: center;
	width: 222px;
	height: 64px;
	top: -32px;
	left: 0;
	right:0;
	margin:auto;
	z-index: 100;
}
div.mydayoff img.mydayoff{
	display: none;
}
div.mydayoff  img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 28px;
}
div.mydayoff div.right{
    width: calc(100%);
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    border-radius: 28px;
    box-sizing: border-box;
    padding: 44px 20px 70px 20px;
}
div.interview3{
    /* width: 1000px; */
    margin: auto;
    padding-bottom: 60px;
}
div.interviewNarrow {
    /* width: 660px; */
    margin: auto 20px;
}
div.interviewNarrow + img{
    /* width: 1000px; */
    /* height: 500px; */
    object-fit: cover;
    object-position: center;
    margin: 37px auto;
    border-radius: 11.176px;
    width: calc(100% - 20px);
    display: block;
}
h2.other{
    text-align: center;
    margin: 20px auto 20px;
    font-weight: bold;
    font-size: 20px;
}
div.interviewSlideWrapper{
    max-width: 1260px;
    margin: auto auto 60px;
    position: relative;
    display: flex;
    justify-content: center;
    width: 320px;
}
div.interviewSlide{
	width:320px;
}
div.interviewSlide div{
	width:320px;
	height: 180px;
	position: relative;
}
div.interviewSlide div img{
    width: 300px;
    height: 180px;
    border-radius: 10px;
    object-fit: cover;
    display: block;
    margin:0 10px;
}
div.interviewSlide p.job,
div.interviewList p.job{
    font-size:16px;
    font-weight: bold;
    color:#fff;
    line-height: 30px;
    position: absolute;
    top:12px;
    left:19px;
    text-indent: 20px;
    background-repeat: no-repeat;
    background-position: left center;
    background-size:auto 30px;
    padding-right: 10px;
}
div.interviewSlide p.job.regular,
div.interviewList p.job.regular{
    background-image:url("../images/tag_all.svg");
}
div.interviewSlide p.job.pharmacist,
div.interviewList p.job.pharmacist{
    background-image:url("../images/tag_pharma.svg");
}
button.slick-arrow{
    width:33px;
    height: 33px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    position: absolute;
    background-repeat: no-repeat;
    background-size:33px;
    z-index: 10;
    top:75.5px;
    cursor: pointer;
}
button.slick-arrow:hover{
    opacity: 0.75;
}
button.slick-prev{
    background-image:url("../images/slide_prev.svg");
    left:-16.5px;
}
button.slick-next{
    background-image: url("../images/slide_next.svg");
    right: -15px;
}
p.comment{
    position: absolute;
    bottom:10px;
    left:10px;
}
p.comment::before{
    content:"INTERVIEW";
    font-size:10px;
    font-weight: bold;
    display: block;
}
div.interviewList p.comment{
    font-size:18px;
    font-weight: bold;
    bottom:24px;
    left:15px;
}
div.interviewList p.comment::before{
    content: "";
}
p.comment span.cmt{
    background:#fff;
    color:#000;
    font-size:14px;
    font-weight: bold;
    padding:1.5px;
    line-height: 1.7em;
}
div.interviewSlide p.name{
    font-size:13px;
    padding:15px 9px;
}
div.interviewList p.name{
    font-size:14px;
    padding:20px 24px;
}

div.h1Wrapper{
    width: 100%;
    height: 250px;
    margin-top: 60px;
	padding-top:15px;
    position: relative;
	background: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);

}
div.h1Wrapper img{
    width: 100%;
    height: 250px;
    object-fit: cover;
    object-position: center;
    position: absolute;
    margin: auto;
    /* top: 0; */
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 0;
}
div.h1Wrapper div.overlay{
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 250px;
    background: rgba(0,0,0,0.5);
    margin: auto;
    bottom: 0;
    left: 0;
    right: 0;
}
div.h1Wrapper div.h1{
    /* width: 1100px; */
    height: 250px;
    margin: auto;
    right: 0;
    left: 0;
    position: absolute;
    z-index: 1;
    color: #fff;
}
div.pankuzuWrapper{
    position: absolute;
    margin: auto;
    top: 0;
    z-index: 1;
    overflow: hidden;
    width: calc(100% - 20px);
    padding: 0 10px;
    left: 0;
}
div.pankuzuWrapper.second{
    top: 40px !important;
}
div.h1 p.title{
    font-size: 12px;
    margin-top: 131px;
    margin-left: 30px;
}
div.h1 h1{
    margin-top: 15px;
    line-height: 1.8em;
    font-size: 24px;
    margin-left: 30px;
}
div.h1 h1 span{
    font-size: 18px;
}
div.h2Inner {
    width:100%;
    margin:0 auto 0;
    position: relative;
}
h2.inner{
	font-size:24px;
	font-weight: bold;
}
h3.normal{
	font-size:24px;
}
div.h2Inner p.category{
    margin-bottom: 13px;
    font-size: 12px;
    font-weight: bold;
}
div.h2Inner img{
    position: absolute;
    width:600px;
    height: 300px;
    object-fit: cover;
    object-position: center;
    right:0;
    z-index: 2;
    bottom:-137px;
    border-radius: 28px;
}
ul.interviewSwitch{
    height: 50px;
    display: flex;
    margin: 10px;
}
ul.interviewSwitch li{
    box-sizing: border-box;
    border: 1px solid #edf2f2;
    text-align: center;
    line-height: 50px;
    color: #b0b0b0;
    width: 100%;
    font-size: 16px;
}
ul.interviewSwitch li span{
    background:url("../images/arrow_down.svg") right center no-repeat;
    background-size:12px;
    padding-right: 30px;
}
ul.interviewSwitch li:hover,
ul.interviewSwitch li.ui-tabs-active{
    background-color:#edf2f2;
    color:#000;
}
ul.interviewSwitch li a{
    display: block;
    width:100%;
    height: 100%;
}
div.interviewListWrapper,
div.storeListWrapper{
    width: 100%;
    margin: 20px auto 45px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}
div.interviewList,
div.storeList{
    box-sizing: border-box;
    width:330px;
	height: 100%;
    padding:5px;
    border-radius: 20px;
    background-image:linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    margin-bottom:14px;
    position: relative;
}
div.interviewList img{
    width: 320px;
    height: 320px;
    border-radius: 16px;
    object-fit: cover;
}
div.storeList img{
    width: 320px;
    /* height: 175px; */
    aspect-ratio: 320/175;
    max-width: calc(100% - 10px);
    border-radius: 18px;
    margin: auto;
    display: block;
}
div.interviewList div{
    position: relative;
}
h2.second{
    margin: 70px 0px 0;
    position: relative;
    font-size: 22px;
    margin-bottom: 32px;
}
h2.second.grouplist{
    margin: 70px 20px 0;
}
h2.second.cource{
	margin-top:182px !important;
}
h2.normal{
    width:100%;
    margin:100px auto 110px;
    position: relative;
}
h3.gradation{
	
}
h2.second.company{
    margin-top:60px;
    font-size:32px;
    font-weight: bold;
    width:100%;
}
h2.second.first{
    margin-top: 90px;
    margin-bottom: 32px;
    margin: 90px 10px 0;
}
h2.second::before,
div.storeDetail:not(.storeDetail.noline)::before,
h2.mcc::before{
    content: "";
    width: 60px;
    height: 1px;
    position: absolute;
    left: 0;
    top: -38px;
    background-image: linear-gradient(90deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
h2.second::after,
div.storeDetail:not(.storeDetail.noline)::after,
h2.mcc::after{
    content:"";
    width:calc(100% - 60px);
    height: 1px;
    position: absolute;
    left:60px;
    top:-38px;
    background:#ddd;
}
img.courcePic{
	margin-bottom:60px;
}



div.storeWrapper {
    width: calc(100% - 20px);
    margin: 34px auto 44px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
div.storeWrapper div.left{
    width: 100%;
}
div.storeWrapper div.left video{
    width:100%;
	aspect-ratio:264 / 470;
    border-radius: 20px;
    background:#efefef;
    margin-bottom:26px;
}
div.storeWrapper div.left video + p{
    font-size:16px;
}
div.storeWrapper div.right{
}
div.storeWrapper p.store{
    font-size:16px;
}
dl.storeType{
    display: flex;
    gap:6px;
    align-items: center;
    margin-top:12px;
    margin-bottom: 42px;
}
dl.storeType dt{
    font-size:12px;
    background:#333;
    color:#fff;
    text-align: center;
    width:70px;
    border-radius: 2.8px;
    padding:2px;
}
dl.storeType dd{
    font-size: 13px;
}
div.h2Inner dl.storeType{
}
div.storeWrapper div.right p{
    line-height: 2em;
    font-size: 16px;
    margin-bottom: 1em;
}
div.storeList p.storeName{
    font-size: 18px;
    font-weight: bold;
    margin: 14px;
}
div.storeList dl.storeType{
    margin-left:23px;
}
div.storeDetail:first-child{
    margin-top: 87px;
}
div.storeDetail h3.summery{
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 1em;
}
div.storeDetail {
    width: calc(100% - 60px);
    display: flex;
	flex-direction: column;
    gap: 20px;
    position: relative;
    margin: 10px auto;
}
div.storeDetail.noreverse{
	flex-direction: column !important;
}
div.storeDetail.reverse{
	flex-direction:column-reverse !important;
	margin-top:20px;
}
div.storeDetail:nth-child(2){
	flex-direction: column-reverse;
	margin-top:20px;
}
div.storeDetail div.left{
}
div.storeDetail div.right{
}
div.storeDetail div.right img{
    width:630px;
    height: 270px;
    object-fit: cover;
    object-position: center;
    border-radius: 10px;
}
div.storeDetailImg,
div.storeDetailImg540,
div.storeDetailImg630-3{
    flex-wrap: wrap;
    display: flex;
    justify-content: space-between;
    gap: 10px;
}
div.storeDetailImg540 img:nth-child(1){
	aspect-ratio:5/3;
	width:100%;
}
div.storeDetailImg540 img:nth-child(2),
div.storeDetailImg540 img:nth-child(3){
	aspect-ratio:1/1;
	width:calc(50% - 5px);
	margin-bottom:10px;
}

div.storeDetailImg img{
    border-radius: 10px;
    object-fit: cover;
    object-position: center;
    height: 200px;
}
div.storeDetailImg img:nth-child(1){
    width:100%;
}
div.storeDetailImg img:nth-child(2),
div.storeDetailImg img:nth-child(3){
    width:calc(50% - 5px);
	height: auto;
	aspect-ratio:1/1;
	object-fit: cover;
}
div.storeDetailImg img:nth-child(4){
    width:calc(100%);
	height: auto;
	aspect-ratio:5/3;
	object-fit: cover;
}
div.storeDetail p.summery{
    margin-bottom:60px;
}
div.storeDetail p.content{
    font-size:16px;
    line-height: 2em;
}
div.storeVideo{
	width:100%;
	aspect-ratio:1.3823/1;
}


div.storeDetailImg630-3 img,
div.storeDetailImg540 img{
	border-radius: 10px;
}
div.storeDetailImg540 img{
    object-fit: cover;
    object-position: center;
}
div.storeDetailImg630-3 img:first-child{
    width:100%;
}
div.storeDetailImg630-3 img:not(:first-child){
	width:calc(33% - 6px);
}
div.separate {
    margin: auto 30px auto;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
div.separate div.left{
/*width:30%*/
}
div.separate h2{
    font-size: 20px;
    font-weight: bold;
    padding: 20px 20px 10px;
}
div.separate h3{
    font-size: 18px;
    font-weight: bold;
}
div.companyLeft {
    border-radius: 10px;
    border: 1px solid #DADFDF;
}
div.companyLeft img{
    width: 262px;
    width: calc(100% - 40px);
    aspect-ratio: 262/150;
    border-radius: 10px;
    display: block;
    margin: 22px auto 37px;
}
div.companyLeft p{
	padding:30px;
	font-size:18px;
	font-weight: bold;
    background-image:linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}
div.companyLeft dl{
	margin:28px;
	font-size:14px;
	overflow: hidden;
}
div.companyLeft dl dt{
	width:30%;
	float: left;
	clear: both;
	margin-bottom:10px;
}
div.companyLeft dl dd{
    width: 70%;
    float: right;
}
div.separate div.right div.company{
    display: flex;
	flex-direction: column;
    justify-content: space-between;
    margin-top: 21px;
    gap: 43px;
}
div.separate div.right div.company p{
    display: flex;
    font-size: 16px;
    line-height: 2em;
}
div.separate div.company img{
    width: 100%;
    aspect-ratio: 252/168;
    object-fit: cover;
    border-radius: 10px;
    margin-bottom: 46px;
}
div.generalWrapper {
    /* width: 1100px; */
    margin: 30px 30px;
}
div.imgWrapper{
    text-align: center;
    margin:20px auto 20px;
	width:100%;
}
div.imgWrapper.mcc{
	margin:75px auto 161px;
	width: 100%;

}
div.imgWrapper.alumniImg{
	margin-top:57px;
}
div.imgWrapper.alumniImg img{
    border-radius: 13px;
}

div.imgWrapper.mb{
    margin-bottom: 55px;
}
div.imgWrapper img{
    height: auto;
    width: calc(100% - 20px);
}
div.generalWrapper p.general{
    font-size:16px;
    font-weight: bold;
	line-height: 2em;
}
div.generalWrapper p.generalNormal{
    font-size:16px;
	line-height: 2em;
	margin-top:38px;
}
p.content{
	font-size:16px;
}
ul.alumni{
    margin: 20px;
    font-size: 18px;
    font-weight: bold;
    color: #E35513;
}
ul.alumni li{
	list-style: disc;
	line-height: 2em;
}
ul.alumni span{
	color:#000;
}
table.workarea,
table.workarea2{
    /* width: 1000px; */
    margin: 40px auto 52px;
    font-size: 16px;
    font-weight: bold;
}
table.workarea td{
    padding: 10px 10px;
    border: 1px solid #e0e0e0;
    text-align: center;
    vertical-align: middle;
}
table.workarea2 td{
    padding:15px;
    border:1px solid #e0e0e0;
    text-align: center;
    vertical-align: middle;
}
table.workarea td.darkgreen{
    background-color:#78bb42;
    padding:25px 37px;
}
table.workarea td.lightgreen{
    background-color:#c8dfa6;
    padding:25px 37px;
}
table.workarea td.blue{
    background-color:#009acc;
}
table.workarea td.gray{
    text-align: left;
    background-color:#f5f5f5;
}
table.workarea2 td.orange{
    background-color:#f1b03d;
    color:#fff;
}
table.workarea2 td.pink{
    background-color:#d81478;
    color:#fff;
}
table.workarea2 td.gray,
table.workarea2 tr.gray td{
    background-color:#f5f5f5;
}
h3.ttlh3{
    font-size: 18px;
    font-weight: bold;
    line-height: 28px;
    padding-left: 20px;
    position: relative;
    margin-top: 16px;
    margin-right: 50px;
    margin-left: 15px;
}
h3.ttlh3::before{
    content: "";
    position: absolute;
    margin: auto;
    width: 1px;
    height: 40px;
    top: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(0deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
    
p.ast{
    font-size:16px;
    padding-left:1em;
    margin-left:50px;
    position: relative;
}
p.ast::before{
    content: "※";
    position: absolute;
    left:0;
}
ul.general{
    font-size:16px;
    line-height: 2em;
}
ul.general.narrow{
    /* margin-left: 50px; */
}
ul.general li{
    list-style: disc;
    margin-left:1em;
}
table.workarea2.mb{
    margin-bottom: 60px;
}

div.generalWrapper dl.process:first-of-type{
	margin-top:25px;
}
dl.process{
    margin: auto;
    display: flex;
    position: relative;
    flex-wrap: wrap;
    gap: 25px;
    align-items: center;
    z-index: 1;
    /* align-items: baseline; */
    flex: 0 0 75px;
}
dl.process2{
    margin: auto;
    display: flex;
    position: relative;
    gap: 25px;
    z-index: 1;
    /* align-items: baseline; */
    flex: 0 0 75px;
}
dl.process dd::before,
dl.process2 dd::before{
    content: "";
    width:1px;
    height: 100%;
    position: absolute;
    margin:auto;
    left:37.5px;
    top:0;
    bottom:0;
    z-index: -1;
    background:#E6E6E6;
    display: none;
}
dl.process dd.noline::before,
dl.process2 dd.noline::before,
dl.process dt.noline + dd::before,
dl.process2 dt.noline + dd::before{
    background:#fff;
}
dl.process.alumni,
dl.process2.alumni{
	margin-bottom:80px;
}
dl.process + p,
dl.process2 + p{
	margin:30px auto 122px;
	font-size: 16px;
	line-height: 2em;
}
dl.process dt{
    width:75px;
    height: 75px;
    border-radius: 10px;
    position: relative;
    float: left;
    /*background-image:linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);*/
    background-image:url("../images/flow.svg");
    background-size:75px;
    clear: both;
}
dl.process2 dt{
    width: 75px;
    height: 75px;
    border-radius: 10px;
    position: relative;
    float: left;
    /*background-image:linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);*/
    background-image:url("../images/flow.svg");
    background-size:75px;
    clear: both;
}
dl.process dt:not(dl.process dt.noline)::before{
/*    content: "";
    width: 1px;
    height: calc(50px);
    position: absolute;
    background: #E6E6E6;
    left: 39px;
    bottom: -50px;
    margin: auto;
    z-index: -1;*/
}
dl.process2 dt::before{
/*    content: "";
    width: 1px;
    position: absolute;
    background: #E6E6E6;
    left: 37px;
    margin: auto;
    z-index: -1;*/
}
dl.process2 dt.d1::before{
    height: 88px;
    bottom: -88px;
}
dl.process2 dt.d2::before{
    height: 115px;
    bottom: -115px;
}
dl.process2 dt.d3::before{
    height: 196px;
    bottom: -197px;
}
dl.process2 dt.d4::before{
    height: 142px;
    bottom: -142px;
}
dl.process2 dt.d5::before{
    height: 141px;
    bottom: -141px;
}
dl.process dt span.step{
    font-size:36px;
    text-align: center;
    width:75px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    line-height: 1em;
    position: absolute;
    display: block;
    margin:auto;
    left:0;
    right:0;
    bottom:13px;
}
dl.process2 dt span.step{
    font-size: 36px;
    text-align: center;
    width: 75px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    line-height: 1em;
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 13px;
}
dl.process dt span.step::before{
    content: "STEP";
    font-size:14px;
    display: block;
    width:100%;
    text-align: center;
    position: absolute;
    top:-25px;
    left:0;
    right:0;
    margin:auto;
}
dl.process2 dt span.step::before{
    content: "STEP";
    font-size:14px;
    display: block;
    width:100%;
    text-align: center;
    position: absolute;
    top:-25px;
    left:0;
    right:0;
    margin:auto;
}
dl.process dd{
    flex-direction: column;
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    flex: 1 1 0;
    border-bottom: 1px solid #ccc;
}
dl.process2 dd {
    flex-direction: column;
    padding-top: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e6e6e6;
    width: 70%;
}
dl.process dd div.right,
dl.process2 dd div.right{
    font-size:16px;
	width: 100%;
}
dl.process dd div.right strong,
dl.process2 dd div.right strong,
dl.process2 dd div{
    display:block;
    font-weight: bold;
}
dl.process dd div.left,
dl.process2 dd div.left{
    font-size: 22px;
    font-weight: bold;
}
dl.process2:last-child{
	margin-bottom:60px;
}
p.p_secondTop {
    font-size: 16px;
    margin: 40px auto 40px;
    line-height: 2em;
}
p.p_secondTop span.small{
	display: block;
	font-size:12px;
	margin-top:40px;
}

dl.faq {
    /* width: 1000px; */
    margin: auto auto 10px;
    background-color: #F1F6F6;
    border-radius: 12px;
    box-sizing: border-box;
    padding: 30px 30px 30px 80px;
    padding: 10px;
}
dl.faq dt{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    overflow: hidden;
    min-height: 45px;
    cursor: pointer;
    padding-right: 11%;
}
dl.faq dt span{
    padding: 0px 0 0 56px;
    display: block;
    margin-top: 8px;
}
dl.faq dd{
    border-top: 1px solid #EAEAEA;
    position: relative;
    margin-top: 18px;
    display: none;
}
dl.faq dd span{
	font-size:16px;
	line-height: 2em;
	display: block;
	padding-top:33px;
	padding-left:55px;
}
dl.faq dt::before{
    content: "Q";
    font-size: 18px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    display: block;
    width: 38px;
    height: 38px;
    line-height: 38px;
    text-align: center;
    border-radius: 8px;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    position: absolute;
    top: 0;
    left: 0;
}
dl.faq dd::before{
    content: "A";
    color: #fff;
    font-size: 18px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    display: block;
    width: 38px;
    height: 38px;
    line-height: 38px;
    text-align: center;
    border-radius: 8px;
    background-color: #000;
    top: 33px;
    left: 0;
    position: absolute;
}
ul.menu-icon{
    width: 30px;
    height: 30px;
    position: absolute;
    top: 5px;
    /* bottom: 0; */
    right: 0;
    margin: auto;
}
.menu-icon .accordion a::before{
	display: block;
	content: "";
	position: absolute;
	top:0; 
	right:0;
	bottom:0;
	left:0;
	margin:auto;
	width: 20px;
	height: 2.5px;
	background-color: #000;
	transition: .2s;
	transform: rotate(90deg);
}
.menu-icon .accordion a::after{
	display: block;
	content: "";
	position: absolute;
	top: 0; 
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 20px;
	height: 2.5px; 
	background-color: #000;
	transition: .3s;
}
.menu-icon .accordion a.on::before{
	transform: rotate(0deg);
}
.menu-icon .accordion a.on::after{
	background-color: transparent;
}
div.alumni {
    width: 100%;
    margin: 84px auto;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    box-sizing: border-box;
    padding: 40px 30px;
    border-radius: 30px;
}
div.alumni h3{
    font-size: 22px;
    font-weight: bold;
    border-bottom: 1px solid #000;
    padding-bottom: 21px;
}

div.alumni2 {
    margin: 40px auto;
}
div.alumni2 h3{
    margin-left: 40px;
    font-size: 16px;
    color: #E35513;
    font-weight: bold;
    position: relative;
}
div.alumni2 h3::before{
	content: "";
	position: absolute;
	background:#E35513;
	width:6px;
	height: 6px;
	left:-18px;
	border-radius: 6px;
	top:8px;
}
p.alumni{
    /* margin: 16px auto  57px 100px; */
    font-size: 24px;
    margin: 30px;
}
a.interview.entry{
    position: relative;
    margin-bottom: 80px;
}

p.referral1,
p.referral2{
	width:100%;
	margin-top:57px;
	line-height: 2em;
	margin:57px auto;
}
p.referral1{
	font-size:24px;
	font-weight: bold;
}
p.referral2{
	font-size:16px;
}

div.policyWrapper {
	width:100%;
	margin:auto;
	display: flex;
	justify-content: flex-start;
	gap:20px;
	flex-wrap: wrap;
	margin-bottom:80px;
}
div.policy{
    box-sizing: border-box;
    /* width: 528px; */
    border: 1px solid #EDF2F2;
    border-radius: 20px;
    padding: 15px;
}
dl.policy{
	display: flex;
	gap:30px;
	align-items: center;
}
dl.policy dt{
    width: 75px;
    height: 75px;
    border-radius: 10px;
    position: relative;
    float: left;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    clear: both;
}
dl.policy dt span.policy{
    font-size: 29.06px;
    text-align: center;
    width: 75px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    line-height: 1em;
    position: absolute;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 17px;
}
dl.policy dt span.policy::before{
    content: "POLICY";
    font-size: 12px;
    display: block;
    width: 100%;
    text-align: center;
    position: absolute;
    top: -26px;
    left: 0;
    right: 0;
    margin: auto;
}
dl.policy dd{
    font-size: 20px;
    font-weight: bold;
}
div.policy p{
	font-size:16px;
	line-height: 2em;
	margin-top:30px;
}
ul.newsWrapper {
	width:1000px;
	margin:80px auto 100px;
}
ul.newsWrapper a{
	box-sizing: border-box;
	padding:56px 100px 56px 56px;
	background-color:#F2F7F7;
	border-radius: 10px;
	margin-bottom: 17px;
	background-image:url("../images/arrrow_news.svg");
	background-position: right 48px center;
	background-repeat: no-repeat;
	background-size:36px; 
	display: flex;
	gap:40px;
	align-items: baseline;
}
ul.newsWrapper span.date{
	color:#808080;
	font-size:16px;
}
ul.newsWrapper span.title{
	color:#000;
	font-size:16px;
}

div.movie {
    box-sizing: border-box;
    padding: 40px 20px;
    /* width: 1100px; */
    margin: 45px auto 45px;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    border-radius: 20px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
}
div.movie div.left{
    /* width: 365px; */
}
div.movie div.right{
	width:100%;
}
div.movie div.right div.youtube{
    width: 100%;
    aspect-ratio: 528/302;
    /* height: 302px; */
    box-sizing: border-box;
    padding: 5px;
    background: #fff;
}
div.movie h3{
    font-size: 24px;
    /* line-height: 41px; */
    font-weight: bold;
}
div.movie p.ceo{
	font-size:16px;
	margin-top:24px;
}
div.movie p.ceo span{
	font-weight: bold;
	padding-left:1em;
}
div.movie p.topmessage{
    font-size: 15px;
    margin-top: 32px;
    line-height: 2em;
}

div.aboutmcc {
    font-size: 15px;
    line-height: 2em;
    margin: 60px 20px 50px;
}

h2.mcc {
    font-size: 20px;
    font-weight: bold;
    position: relative;
    /* display: inline-block; */
    margin-top: 200px;
}
h2.mcc span{
    /* display: inline-block; */
    position: relative;
}
h2.mcc span::after{
	content: "";
	position: absolute;
	bottom: -10px;
	left: 0;
	width: 100%;
	height: 2px; /* 下線の太さ */
	background-image: linear-gradient(90deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
h2.mcc span::before{
    position: absolute;
    font-size: 13px;
    left: 0;
    top: -32px;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 800;
    font-style: normal;
    line-height: 1em;
}
h2.mcc span.vision::before{
	content: "GROUP VISION";
}
h2.mcc span.symbol::before{
	content: "GROUP SYMBOL";
}
h2.mcc span.philosophy::before{
	content: "GROUP PHILOSOPHY";
	/*display: inline-block;*/
	width:300px;
}
h2.mcc span.slogan::before{
	content: "GROUP SLOGAN";
}




p.mccbig {
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5em;
    margin-bottom: 44px;
}

h3.mcc {
    font-size: 20px;
    font-weight: bold;
    margin-top: 24px;
    margin-bottom: 24px;
    line-height: 36px;
    padding-left: 11px;
}
h3.mcc.mat{
	border-left:1px solid #EFAE3D;
}
h3.mcc.coco{
	border-left:1px solid #D61478;
	margin-top:81px;
}



div.symbol {
    /* width: 400px; */
    margin: 20px 10px;
}
div.symbol img{
	width:100%;
	height: auto;
}
div.slogan {
    /* width: 610px; */
    margin: 20px 10px;
}
div.symbol img{
	slogan:610px;
	height: auto;
}


div.groupWrapper {
    /* width: 1100px; */
    margin: 34px auto;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
div.generalWrapper a.group{
    box-sizing: border-box;
    padding: 12px;
    border: 1px solid #ECF1F1;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    width: 100%;
}
div.generalWrapper a.group h4{
    font-weight: bold;
    font-size: 18px;
    text-align: center;
}
a.group div{
    width:100%;
}
a.group dl{
	display: flex;
	gap:9px;
	align-items: baseline;
	margin-top:18px;
}
a.group dl dt{
	color:#A0AFB7;
	font-size:12px;
	width:50px;
}
a.group img{
	width:102px !important;
	height: 59px !important;
	object-fit: cover;
	object-position: center;
	border-radius: 3.9px;
}
a.group dl dd {
	display: flex;
	flex-wrap: wrap;
	gap:6px;
	align-items: baseline;
}
a.group dl dd span{
	font-size:12px;
	color:#fff;	
	padding:5px 10px;
	line-height: 1em;
	background-color:#A0AFB7;
	border-radius: 20px;
}
h2.mcc{
    /*margin-top: 100px;*/
}
h2.mcc::before{
    content:"";
    width:60px;
    height: 1px;
    position: absolute;
    left:0;
    top:-80px;
    background-image:linear-gradient(90deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
h2.mcc::after{
    content: "";
    width: calc(100% - 60px);
    height: 1px;
    position: absolute;
    left: 60px;
    top: -80px;
    background: #ddd;
}
@media(max-width:347px){
	h2.mcc::after{
		width:calc(270px - 60px);
	}
}
div.welfareWrapper {
    /* width: 1100px; */
    margin: 40px auto 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 25px;
}
div.welfare{
    /* width: 350px; */
    width: min(97%,350px);
    border-radius: 20px;
    border: 1px solid #ECF1F1;
    box-sizing: border-box;
    padding: 10px 10px 37px;
}
div.welfare img{
    width: 330px;
    /* height: 360px; */
    aspect-ratio: 33/36;
    max-width: 100%;
    object-fit: cover;
    object-position: center;
}
div.courceImgWrapper{
	margin:30px auto 40px;
	width: 100%;
	min-width: 800px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
div.courceImgWrapper img{
	width:800px;
	height: auto;
}
div.welfare dt{
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    position: relative;
    margin-top: 40px;
    margin-bottom: 50px;
}
div.welfare dt::after{
	content:"";
	position: absolute;
	width:60px;
	height: 1px;
	margin:auto;
	left:0;
	right:0;
	bottom:-23px;
    background-image:linear-gradient(90deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
div.welfare dd{
	font-size:15px;
	line-height: 1.87em;
	margin-left:40px;
	margin-right:40px;
}

div.numWrapper {
    width: calc(100% - 60px);
    margin: 60px auto;
}


div.col3{
	width:100%;
	display: flex;
	justify-content: space-between;
	gap:25px;
	flex-wrap: wrap;
}
div.col3 dl.col,
dl.col1{
	width:350px;
	box-sizing: border-box;
	background-color:#fff;
	border-radius: 20px;
	padding:55px 10px;
	text-align: center;
	background-image:url("../images/num_corner.svg");
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size:30px;
}
dl.col1{
	width:100%;
	margin-top:25px;
	margin-bottom: 25px;
}
div.col3 dl.col dt,
dl.col1 dt{
	margin-bottom:26px;
}
div.col3 dl.col dt span,
dl.col1 dt span{
	font-size:24px;
	font-weight: bold;
	padding:5px 8px;
    background-image:linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
}
div.col3 dl.col dd img{
	display: block;
	margin:auto;
}
div.col3 dl.col dd img.number{
	height:52px;
	width:auto;
	object-fit: contain;
	object-position: center;
	margin-bottom:40px;
}
div.col3 dl.col dd img.pic{
	height:100px;
	width:100px;
	object-fit: contain;
	object-position: center;
}

div.typeWrapper {
	margin:25px 88px;
	display: flex;
	justify-content: space-between;
}
dl.type{
	width:450px;
	display: flex;
	align-items: center;
	gap:30px;
}
dl.type dt{
	width:120px;
	height: 120px;
	border-radius: 7px;
	line-height: 120px;
	font-size: 40px;
	font-weight: bold;
	color:#fff;
}
dl.type dt.arts{
	background:#7FB826;
}
dl.type dt.sciences{
	background:#0098D7;
}
dl.type ol {
	list-style: none; /* 既存のリストスタイルを削除 */
	counter-reset: ranking; /* カウンタをリセット */
	font-size:21px;
}
dl.type ol li {
	counter-increment: ranking; /* リスト項目ごとにカウンタを増加 */
	position: relative; /* 相対位置 */
	padding-left: 40px; /* テキストの位置調整 */
	text-align: left;
	font-weight: bold;
}
dl.type ol li::before {
	content: counter(ranking) ' 位'; /* カウンタの値と「位」を表示 */
	position: absolute; /* 絶対位置 */
	left: 0; /* 左端に配置 */
	padding-right: 40px;
}
dl.type ol li span::before{
	content: " ・・・ ";
}
dl.type dt{
	margin-bottom:0 !important;
}

div.courceWrapper {
    margin: 45px auto 0;
}
div.courceWrapper.pic{
    width:800px;
}
div.courceWrapper.second{
	margin-top:80px;
}
h2.second.cource + div + p{
	font-size:16px;
	line-height: 2em;
}
div.courceWrapper h3{
	font-size:24px;
	font-weight: bold;
	line-height: 40px;
	padding-left:20px;
	position: relative;
	margin-bottom:54px;
}
div.courceWrapper h3::before{
	content: "";
	position: absolute;
	margin:auto;
	width:1px;
	height: 40px;
	top:0;
	bottom:0;
	left:0;
    background-image:linear-gradient(0deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
div.example{
	width:100%;
	box-sizing: border-box;
	padding:74px;
    background-image:linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
	border-radius: 40px;
	margin-top:78px;
}
div.example.second{
	margin-top:30px;
	margin-bottom:186px;
}
div.example h4 + p{
	font-size:16px;
	line-height: 2em;
}
div.example div.twoblock{
	margin:45px auto 77px;
	display: flex;
	justify-content: space-between;
	gap:37px;
}
div.example div.twoblock div{
	width:405px;
	box-sizing: border-box;
	padding:30px;
	border-radius: 10px;
	background:#fff;
}
div.example div.twoblock div h5{
	font-size: 18px;
	font-weight: bold;
	margin-bottom:20px;
}
div.example div.twoblock div p,
div.example div.twoblock div ul{
	font-size:15px;
	line-height: 2em;
}
div.example div.twoblock div li{
	margin-left:1em;
	list-style: disc;
}
div.example h4{
	display: inline-block;
	font-size:20px;
	font-weight: bold;
	padding-bottom:12px;
	border-bottom:1px solid #000;
	line-height: 1em;
	margin-bottom:38px;
}
div.example div.listWrapper{
	display: flex;
	justify-content: space-between;
}
div.example div.listWrapper ul{
	font-size:16px;
	margin-left:1em;
}
div.example div.listWrapper ul li{
	list-style: disc;
	margin-bottom:1em;
}
div.courceWrapper h3 + p{
	font-size:16px;
	line-height: 2em;
}
div.courceWrapper p.para{
	margin-top:80px;
	font-size:16px !important;
	line-height: 2em;
}
div.sixImg {
	width:100%;
	margin:52px auto 112px;
	display: flex;
	flex-wrap: wrap;
	gap:27px;
}
div.sixImg.second{
	margin-top:72px;
}
div.sixImg img{
	width:314px;
	height: 195px;
	object-fit: cover;
	object-position: center;
	border-radius: 10px;
}

dl.history{
	width:100%;
	margin:20px auto 20px;
	display: flex;
	justify-content: space-between;
	flex-direction: column;
	gap:15px;
}
dl.history dt{
    width: 300px;
    margin: auto;
    height: 40px;
    text-align: center;
    font-size: 18px;
    line-height: 40px;
    font-weight: bold;
    position: relative;
    background: #333333;
    color: #fff;
    display: block;
    border-radius: 30px;
    cursor: pointer;
}
dl.history dt:hover{
    opacity: 0.75;
}
dl.history dt div.historyArrow{
	width:8px;
	height: 8px;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	right:18px;
	background:url("../images/arrow_history.svg") center center no-repeat;
	background-size:8px;
	transition:transform 0.5s;
}
dl.history dd{
    display: none;
    margin-top: 70px;
}
div.historyWrapper{
    position: relative;
    margin-bottom: 40px;
}
div.historyWrapper::before{
    content:"";
    width:60px;
    height: 1px;
    position: absolute;
    left:0;
    top:-18px;
    background-image:linear-gradient(90deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
div.historyWrapper::after{
    content: "";
    width: calc(100% - 60px);
    height: 1px;
    position: absolute;
    left: 60px;
    top: -18px;
    background: #ddd;
}
div.history{
    width: 100%;
    overflow: hidden;
    padding: 20px 0;
    position: relative;
}
div.historyWrapper div.history:first-child{
	padding-top:0;
}
div.history::after{
	content: "";
	width:834px;
	height: 1px;
	background:#E6E6E6;
	position: absolute;
	right:0;
	bottom:0;
}
div.history div.date{
    width: 100%;
    height: 40px;
    position: relative;
}
div.history div.date p.year{
    font-size: 24px;
    font-weight: bold;
    /* width: 87px; */
    float: left;
}
div.history div.date p.year span{
	font-size: 24px;
	font-weight: bold;
}
div.history div.date p.month{
    position: absolute;
    margin:auto;
    top:0;
    bottom:0;
    right:0;
    left:0;
    width: 100px;
    height: 40px;
    line-height: 40px;
    border-radius: 6px;
    background: #EEF3F3;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
}
div.history div.progress{
    /* width: 834px; */
    float: right;
    overflow: hidden;
    padding-top: 1em;
    display: flex;
    flex-direction: column-reverse;
	gap:15px;
}
div.progress h3{
	font-size:18px;
	font-weight: bold;
}
div.progress h4{
	font-size:15px;
	font-weight: bold;
}
div.history div.progress div.content{
/*	width:563px;
	float: left;*/
}
div.history div.progress div.content.full{
    /* width: 863px; */
}
div.history div.progress div.historyImgWrapper{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 38px;
    padding-top: 40px;
    align-items: center;
}
div.history div.progress div.historyImgWrapper div{
	width:250px;
}
div.history div.progress div.historyImgWrapper div p{
	margin-top:17px;
	text-align: center;
	font-size:18px;
	font-weight: bold;
}
div.history div.progress div.historyImgWrapper div p span{
	font-size:13px;
	display: block;
	font-weight: normal;
	margin-top:8px;
}
div.history div.progress div.img{
	width:250px;
	margin:auto;
}
div.history div.progress div.img img,
div.historyImgWrapper img{
    width: 250px;
    /* height: 160px; */
    object-fit: cover;
    object-position: center;
    border-radius: 10px;
}
div.history div.progress p.title{
	font-size: 20px;
	font-weight: bold;
}
div.history div.progress p.title a{
	padding-right: 26px;
}
div.history div.progress p.title a::after{
	content: "";
	width:16px;
	height: 16px;
	background:url("../images/link_history.svg") center center no-repeat;
	background-size:16px;
	box-sizing: border-box;
	margin-left:20px;
	display: inline-block;
}
div.history div.progress p.supple{
	font-size: 16px;
	margin-top:26px
}


p.cource {
    width: 100%;
    /* margin: 64px auto 0; */
    font-size: 16px;
}


div.courceImg {
	text-align: center;
	margin:62px auto 0;
}
div.courceImg.prevEntry{
	margin-bottom:183px;
}

div.intern {
    box-sizing: border-box;
    width: 100%;
    padding: 40px 20px;
    border-radius: 30px;
    background-image: linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
    margin-top: 40px;
}
div.intern.second{
	margin-top:62px;
}
div.intern p.courceType{
    color: #7FB726;
    font-size: 20px;
    font-weight: bold;
}
div.intern p.courceType span{
    color: #fff;
    background: #7FB726;
    padding: 4px 10px;
    font-size: 16px;
    line-height: 1em;
    border-radius: 6px;
    margin-right: 10px;
}
div.intern h3{
    font-size: 20px;
    font-weight: bold;
    border-bottom: 1px solid #000;
    margin: 15px 0 20px;
    padding-bottom: 17px;
}
div.internWrapper{
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    flex-direction: column;
    gap: 25px;
}
div.internWrapper div.left{
    /* width: 579px; */
    font-size: 16px;
    line-height: 2em;
}
div.internWrapper div.internEntry{
	width:257px;
}
div.internWrapper div.left h4{
    line-height: 23px;
    border-left: 2px solid #7FB726;
    padding-left: 24px;
    font-size: 18px;
    font-weight: bold;
    margin: 28px 0 20px;
}
div.internWrapper div.left p a,
dl.guideline a{
	color:#0097D6;
	text-decoration:underline;
}
dl.internEntry{
    width: min(100%,257px);
    border-radius: 10px;
    background: #fff;
    text-align: center;
    margin: auto;
}
dl.internEntry dt{
	font-weight: bold;
	font-size:20px;
	line-height: 1.2em;
	background:#7FB726;
	color:#fff;
	padding:12px 0;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
dl.internEntry dt span{
	font-size:16px;
	display: block;
}
dl.internEntry img{
	width:213px;
	height: 123px;
	object-fit: cover;
	object-position: center;
	border-radius: 6px;
	display: block;
	margin:22px auto;
}
dl.internEntry dd p{
	font-size:16px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	line-height: 26px;
	gap:5px;
	
}
dl.internEntry dd p::before{
	content: "";
	width:11px;
	height: 26px;
	background: url("../images/waaileft.svg") no-repeat;
	display: inline-block;
}
dl.internEntry dd p::after{
	content: "";
	width:11px;
	height: 26px;
	background: url("../images/waairight.svg") no-repeat;
	display: inline-block;
}
dl.internEntry dd a.internEntry{
	display: block;
	width:210px;
	line-height: 57px;
	color:#fff;
	background-color:#EEAD3D;
	background-image:url("../images/arrow_interview.svg") ;
	background-position:  right 25px center ;
	background-repeat:  no-repeat;
	background-size:10px;
	border-radius: 57px;
	margin:17px auto;
	font-size:16px;
	font-weight: bold;
	text-indent: -1em;
}
div.intern span.odai{
	font-size:20px;
	font-weight: bold;
	color:#7FB726;
}
div.voiceWrapper {
	display: flex;
	flex-wrap: wrap;
	gap:55px;
	margin-top:88px;
}
div.voiceWrapper p{
	width:223px;
	border-radius: 20px;
	padding:21px;
	font-size:16px;
	margin-left:65px;
    background-image:linear-gradient(90deg, rgba(0,139,202,0.07) 0%, rgba(0,149,149,0.07) 17%, rgba(127,171,38,0.07) 34%, rgba(228,163,61,0.07) 50%, rgba(214,85,19,0.07) 66%, rgba(203,20,120,0.07) 83%, rgba(91,51,128,0.07) 100%);
	position: relative;
}

div.voiceWrapper p::before{
	content: "";
	width:51px;
	height: 112px;
	position: absolute;
	top:0;
	left:-67px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size:51px;
}
div.voiceWrapper p.v01::before{
	background-image:url("../images/v01.webp") ;
}
div.voiceWrapper p.v02::before{
	background-image:url("../images/v02.webp") ;
}
div.voiceWrapper p.v03::before{
	background-image:url("../images/v03.webp") ;
}
div.voiceWrapper p.v04::before{
	background-image:url("../images/v04.webp") ;
}
div.voiceWrapper p.v05::before{
	background-image:url("../images/v05.webp") ;
}
div.voiceWrapper p.v06::before{
	background-image:url("../images/v06.webp") ;
}
dl.guideline{
    margin: 60px auto 0;
    position: relative;
}
dl.guideline.mt{
	margin-top:70px !important;
}
dl.guideline::before{
    content:"";
    width:60px;
    height: 1px;
    position: absolute;
    left:0;
    top:-30px;
    background-image:linear-gradient(90deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}
dl.guideline::after{
    content:"";
    width:calc(100% - 60px);
    height: 1px;
    position: absolute;
    left:60px;
    top:-30px;
    background:#ddd;
}
dl.guideline dt{
	width: 100%;
	font-size: 18px;
	line-height: 1em;
	font-weight: bold;
}
dl.guideline dd{
    /* width: 670px; */
    font-size: 14px;
    /* line-height: 1em; */
    margin-top: 15px;
}
dl.guideline:last-child{
	margin-bottom: 80px;
}
dl.guideline + a.internEntry{
	text-align: center;
	display: block;
	width:360px;
	line-height: 75px;
	color:#fff;
	background-color:#EEAD3D;
	background-image:url("../images/arrow_interview.svg") ;
	background-position:  right 25px center ;
	background-repeat:  no-repeat;
	background-size:10px;
	border-radius: 37.5px;
	margin:17px auto 186px;
	font-size:16px;
	font-weight: bold;
	text-indent: -1em;
}



div.envWorkWrapper {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 26px;
}
div.envWorkWrapper div.envwork{
	background:#fff;
	box-sizing: border-box;
	border-radius: 11px;
	padding:8.7px;
}
div.envWorkWrapper div.envwork a{
	display: block;
	width:100%;
	height: 100%;
}
div.envWorkWrapper div.envwork img{
    width: 330px;
    width: 100%;
    height: auto;
    aspect-ratio: 330 / 200;
    border-radius: 6px;
    object-fit: cover;
    object-position: center;
}
div.envWorkWrapper div.envwork p.envwork{
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	margin-top:42px;
}
div.companyWrapper.e1,
div.companyWrapper.e2{
	display: none;
	overflow: hidden;
}
div.companyWrapper a.left{
	float: left;
}
div.companyWrapper a.right{
	float: right;
}
a.viewmore7{
	line-height: 30px;
	padding-right: 44px;
	background:url("../images/icon_more.svg") right center no-repeat;
	background-size:30px;
	transition: transform 0.5s ease; 
}
.viewmore7.rotated {
    transform: rotate(180deg); /* 180度回転 */
}
a.viewmore7:hover{
	opacity: 0.75;
}

.viewmore7 {
	
}

p.viewmore8 {
	text-align: center;
	margin-top:32px;
    font-size: 12px;
	margin-bottom:10px;
}
p.viewmore8 span img{
	width:10px !important;
	height: auto !important;
	margin-left:10px;
	transform: rotate(0deg);
	transition: all 0.5s;
    aspect-ratio:1 !important;
    vertical-align: unset;
}
p.viewmore8 span.right img{
	transform: rotate(-90deg)
}
div.recruitMap{
    width: 100%;
    aspect-ratio: 1249/962;
    /* height: 962px; */
    background: url("../images/recruitMap.svg") center center no-repeat;
    background-size: contain;
    position: relative;
}
ul.area {
	
}
ul.area li{
	width:25px;
	height: 25px;
	background-repeat: no-repeat;
	background-size:25px;
	background-position: center;
	position: absolute;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
ul.area li a{
	display: block;
	width:100%;
	height: 100%;
}
ul.area li a:hover{
	opacity: 0.75;
}
ul.area li.area1{
    background-image: url("../images/aera1.svg");
    bottom: 58%;
    right: 21%;
}
ul.area li.area2{
    background-image: url("../images/area2.svg");
    bottom: 33%;
    right: 26%;
}
ul.area li.area4{
    background-image: url("../images/area3.svg");
    bottom: 26%;
    right: 36%;
}
ul.area li.area3{
    background-image: url("../images/area4.svg");
    bottom: 37%;
    right: 38%;
}
ul.area li.area5{
    background-image: url("../images/area5.svg");
    bottom: 21%;
    right: 51%;
}
ul.area li.area6{
    background-image: url("../images/area6.svg");
    bottom: 22%;
    right: 64%;
}
ul.area li.area7{
    background-image: url("../images/area7.svg");
    bottom: 12%;
    right: 81%;
}
ul.popup{
	width:300px;
	border-radius: 8px;
	border-style:solid;
	border-width: 1px;
	position: absolute;
	box-sizing: border-box;
	padding:20px 10px;
	font-size:14px;
	background-color:#fff;
	right:0;
	left:0;
	margin:auto;
}
ul.popup::after{
	content: "";
	width:1px;
	height: 20px;
	position: absolute;
	margin: auto;
	left:0;
	right:0;
	bottom:-20px;
}
ul.popup li{
    padding-left: 0;
    list-style: disc;
    font-weight: bold;
    margin-left: 20px;
}
ul.popup li a{
	text-decoration: underline;
}
ul.popup#area1{
    border-color: #F3A847;
    bottom: 76%;
}
ul.popup#area1::after{
    background-color: #F3A847;
    right: -53%;
}
ul.popup#area2{
    border-color: #E35513;
    bottom: 51%;
}
ul.popup#area2::after{
    background-color: #E35513;
    right: -42%;
}
ul.popup#area4{
    border-color: #5B3A8C;
    bottom: 44%;
}
ul.popup#area4::after{
    background-color: #5B3A8C;
    right: -21%;
}
ul.popup#area3{
    border-color: #D81478;
    bottom: 55%;
}
ul.popup#area3::after{
    background-color: #D81478;
    right: -17%;
}
ul.popup#area5{
    border-color: #0098D7;
    bottom: 39%;
}
ul.popup#area5::after{
    background-color: #0098D7;
    right: 11%;
}
ul.popup#area6{
    border-color: #00A2A2;
    bottom: 40%;
}
ul.popup#area6::after{
    background-color: #00A2A2;
    right: 38%;
}
ul.popup#area7{
    border-color: #7FB826;
    bottom: 30%;
}
ul.popup#area7::after{
    background-color: #7FB826;
    right: 74%;
}
div.recruitList{
    width: 100%;
    margin: auto;
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 80px;
    /* align-items: center; */
}
div.recruitList dl{
    width: min(calc(100% - 20px),320px);
    margin: auto;
}
div.recruitList dl dt{
    width: min(calc(100% - 20px),320px);
    height: 50px;
    border: 1px solid #ecf1f1;
    border-radius: 10px;
    line-height: 50px;
    font-size: 20px;
    font-weight: bold;
    padding-left: 30px;
    position: relative;
    cursor: pointer;
    box-sizing: border-box;
}
div.recruitList dl dt span{
    display: inline-block;
    width:10px;
    height: 10px;
    position: absolute;
    background-image:url("../images/arrow_down.svg");
    background-repeat: no-repeat;
    background-size:9.2px;
    background-position:center;
    top:0;
    bottom:0;
    right:13px;
    margin:auto;
    transition: transform 0.3s ease;
}
div.recruitList dt span.rotated {
    transform: rotate(180deg);
    transition: transform 0.3s ease;
}
div.recruitList dl dt::before{
    content: "";
    width:2px;
    height: 20px;
    position: absolute;
    margin:auto;
    top:0;
    bottom:0;
    left:20px;
}
div.recruitList dl.tarea1 dt::before{
    background-color:#f1b03d;
}
div.recruitList dl.tarea2 dt::before{
    background-color:#D81478;
}
div.recruitList dl.tarea3 dt::before{
    background-color:#E35513;
}
div.recruitList dl.tarea4 dt::before{
    background-color:#5B3A8C;
}
div.recruitList dl.tarea5 dt::before{
    background-color:#0098D7;
}
div.recruitList dl.tarea6 dt::before{
    background-color:#00A2A2;
}
div.recruitList dl.tarea7 dt::before{
    background-color:#7FB826;
}
div.recruitList dl ul{
    padding:20px;
}
div.recruitList dl ul li{
    margin-bottom: 1em;
    list-style: disc;
    font-size:14px;
    font-weight: bold;
    margin-left: 20px;
}
div.recruitList dl ul li a{
    text-decoration: underline;
}
div.recruitList dl dd{
    display: none;
}



div.newsWrapper {
    /* width: 1000px; */
    margin: 60px 30px 80px;
}
dl.news{
    box-sizing: border-box;
    padding: 10px 39px 10px 10px;
    background-color: #F2F7F7;
    border-radius: 10px;
    margin-bottom: 17px;
    display: flex;
    gap: 25px;
    align-items: baseline;
    flex-direction: column;
    position: relative;
}
dl.news dt{
    display: flex;
    flex-direction: column;
    gap: 15px;
}
dl.news dt span{
	display: block;
}
dl.news dt span.date{
    font-size: 12px;
    color: #808080;
}
dl.news dt span.title{
	font-size:16px;
	color:#000;
}
dl.news dd{
	font-size:16px;
	display: none;
}
dl.news dt div.arrow{
	width:25px;
	height: 25px;
	position: absolute;
	right:10px;
	bottom:10px;
	cursor: pointer;
}
dl.news dt div.arrow img{
	object-fit: cover;
	object-position: center;
	transform: rotate(90deg)
}
dl.news dd h1{
	font-size:28px;
	font-weight: bold;
}
dl.news dd h2{
	font-size:24px;
	font-weight: bold;
}
dl.news dd h3{
	font-size:22px;
	font-weight: bold;
}
dl.news dd h4{
	font-size:20px;
	font-weight: bold;
}
dl.news dd h5{
	font-size:18px;
	font-weight: bold;
}
dl.news dd h6{
	font-size:16px;
	font-weight: bold;
}
dl.news dd p{
	margin:1em;
}
dl.news dd ul,
dl.news dd ol{
	margin:1em;
}
dl.news dd ul li{
	list-style: disc;
	margin-left:2em;
}
dl.news dd ol li{
	margin-left:2em;
}
dl.news dd img{
	max-width:100%;
	height: auto;
}
div.column2{
    display: flex;
    gap: 25px;
    flex-wrap: wrap;
}
div.column2 div.colwrapper{
    background-color: #fff;
    border-radius: 20px;
    /* width: 530px; */
    cursor: pointer;
    box-sizing: border-box;
    padding: 35px 20px 20px;
    background-image: url("../images/num_corner.svg");
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 30px;
    width: 100%;
}
div.numcontents dl.general dt{
    font-size: 22px;
    font-weight: bold;
    padding: 5px 8px;
    background-image: linear-gradient(90deg, rgba(0, 139, 202, 0.07) 0%, rgba(0, 149, 149, 0.07) 17%, rgba(127, 171, 38, 0.07) 34%, rgba(228, 163, 61, 0.07) 50%, rgba(214, 85, 19, 0.07) 66%, rgba(203, 20, 120, 0.07) 83%, rgba(91, 51, 128, 0.07) 100%);
    display: inline-block;
    margin: 20px auto 20px;
}
div.numcontents.number dl.general dd{
	color:#E9546B;
	font-family: "Montserrat";
	font-weight: bold;
	font-size:24px;
}
div.numcontents.number dl.general dd span.counter,
div.numcontents.number dl.general dd span.counter2{
    font-size: 32px;
    display: inline-block;
}
div.numcontents.number dl.general dd span{
	display: inline-block;
	text-align: right;
}
div.numcontents.number dl dd span.em05{
	width:.5em;
}
div.numcontents.number dl dd span.em1{
	width:1em;
}
div.numcontents.number dl dd span.em2{
	width:1.5em;
}
div.numcontents.number dl dd span.em3{
	width:2em;
}
div.numcontents.number dl dd span.em35{
	width:2.5em;
}
div.numcontents.number dl dd span.em4{
	width:4em;
}
div.numcontents.number dl dd span.em5{
	width:5em;
}
div.numcontents.number dl.general dd span.small{
	/*font-size:30px;*/
}
div.numcontents.number{
	text-align: center;
}
div.numcontents.description{
	display: none;
	text-align: center;
}
div.numcontents.description dl.general dd{
    text-align: justify;
    margin: 0px;
    font-size: 16px;
}
div.column3 div.numcontents.description dl.general dd{
	text-align: justify; 
	margin:0px;
	font-size:18px;
}
div.colwrapper.h475{
/*	height: 475px;*/
}
div.colwrapper.h420{
/*	height: 420px;*/
}
div.numcontents.number img{
    height: auto;
}
div.numcontents.number img.w84{
    width: 77px;
}
div.numcontents.number img.w122{
	width:122px;
}
div.numcontents.number img.w147{
    width: 118px;
}
div.numcontents.number img.w159{
	width:159px;
}
div.numcontents.number img.w179{
	width:179px;
}
div.numcontents.number img.w193{
	width:193px;
}
div.numcontents.number img.w203{
    width: 180px;
}
div.numcontents.number img.w300{
    width: 245px;
}
div.numcontents.number img.w348{
    width: 250px;
}
@media(max-width:347px){
	div.numcontents.number img.w348{
		width: 200px;
	}
}
div.numcontents.number img.w470{
	width:470px;
}
div.numcontents.number img.wa{
    width: 260px;
}
div.numcontents.number img.wb{
	width:470px;
}
div.numcontents.number img.wc{
	width:470px;
}
div.numcontents.number img.wd{
	width:470px;
}
div.num04{
    /*width: 471px;*/
    width: 100%;
    aspect-ratio: 1/1;
    /*height: 224px;*/
    position: relative;
}
div.num04 div.canvasWrapper{
    position: absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
    aspect-ratio:1/1;
    z-index: 3;
    z-index: 1
}

div.num04 canvas{
    width:100%;
    height: 100%;
}
div.num04 img{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    object-position: center;
    z-index: 2;
}

div.num04 dl.num04{
	position: absolute;
	color:#E9546B;
	font-weight: bold;
	text-align: center;

}
div.num04 dl.num04 dd{
    font-family: "Montserrat";
    line-height: 1.5em;
}
div.num04 dl.num04.v1,
div.num04 dl.num04.v2{
    font-size:16px;
}
div.num04 dl.num04.v1 span.num,
div.num04 dl.num04.v2 span.num{
    font-size: min(18vw, 34px);
}
div.num04 dl.num04.v1 span.small,
div.num04 dl.num04.v2 span.small{
    font-size:16px;
}
div.num04 dl.num04.v3 span.small{
    font-size:24px;
}
div.num04 dl.num04.v3 dt{
    font-size: 15px;
    line-height: 1.2em;
}
div.num04 dl.num04.v3 dd{
}
div.num04 dl.num04.v3 dd span.num{
    font-size: min(20vw,40px);
    line-height: 1.2em;
}
div.num04 dl.num04.v4 dt,
div.num04 dl.num04.v5 dt{
    font-size:14px;
}
div.num04 dl.num04.v4 span.num,
div.num04 dl.num04.v5 span.num{
    font-size:14px;
}
div.num04 dl.num04.v4 span.small,
div.num04 dl.num04.v5 span.small{
    font-size:9px;
}
@media (max-width: 374px){
    div.num04 img{
        /*width:230px;*/
    }
    div.canvasWrapper{
        width:125px;
    }
    div.num04 dl.num04.v1{
		top: 16%;
		left: -17%;
    }
    div.num04 dl.num04.v2{
		top: 65%;
		left: -14%;
    }
    div.num04 dl.num04.v3{
		top: -14%;
		right: -13%;
    }
    div.num04 dl.num04.v4{
		top: 19%;
		right: -7%;
    }
    div.num04 dl.num04.v5{
		top: 43%;
		right: -12%;
    }
}

@media (min-width: 375px) and (max-width: 424px){
    div.num04 img{
        /*width:275px;*/
    }
    div.canvasWrapper{
        width:137.5px;
    }
    div.num04 dl.num04.v1{
    top: 16%;
    left: -6%;
    }
    div.num04 dl.num04.v2{
    top: 59%;
    left: -9%;
    }
    div.num04 dl.num04.v3{
    top: -4%;
    right: -12%;
    }
    div.num04 dl.num04.v4{
    top: 25%;
    right: -3%;
    }
    div.num04 dl.num04.v5{
    top: 43%;
    right: -3%;
    }
}
@media (min-width: 425px) and (max-width: 440px){
    div.canvasWrapper{
        width:162.5px;
    }
    div.num04 img{
        /*width:325px;*/
    }
    div.num04 dl.num04.v1{
        top: 16%;
        left: 0%;
    }
    div.num04 dl.num04.v2{
        top: 60%;
        left: 2%;
    }
    div.num04 dl.num04.v3{
        top: 19%;
        right: -3%;
    }
    div.num04 dl.num04.v4{
        top: 40%;
        right: 13%;
    }
    div.num04 dl.num04.v5{
        top: 40%;
        right: -3%;
    }
}
@media (min-width: 441px) and (max-width: 500px){
    div.canvasWrapper{
        width:175px;
    }
    div.num04 img{
        /*width:350px;*/
    }
    div.num04 dl.num04.v1{
        top: 16%;
        left: 3%;
    }
    div.num04 dl.num04.v2{
        top: 60%;
        left: 2%;
    }
    div.num04 dl.num04.v3{
    top: 22%;
    right: -6%;
    }
    div.num04 dl.num04.v4{
    top: 42%;
    right: 9%;
    }
    div.num04 dl.num04.v5{
    top: 42%;
    right: -5%;
    }
}
@media (min-width: 501px) and (max-width: 525px){
    div.canvasWrapper{
        width:200px;
    }
    div.num04 img{
        /*width:375px;*/
    }
    div.num04 dl.num04.v1{
        top: 16%;
        left: 3%;
    }
    div.num04 dl.num04.v2{
        top: 60%;
        left: 2%;
    }
    div.num04 dl.num04.v3{
    top: 24%;
    right: -5%;
    }
    div.num04 dl.num04.v4{
    top: 42%;
    right: 9%;
    }
    div.num04 dl.num04.v5{
    top: 42%;
    right: -5%;
    }
}
@media (min-width: 525px) and (max-width: 550px){
    div.canvasWrapper{
        width:225px;
    }
    div.num04 img{
        /*width:420px;*/
        width:100%;
    }
    div.num04 dl.num04.v1{
        top: 16%;
        left: 3%;
    }
    div.num04 dl.num04.v2{
        top: 60%;
        left: 2%;
    }
    div.num04 dl.num04.v3{
    top: 24%;
    right: -5%;
    }
    div.num04 dl.num04.v4{
        top: 40%;
        right: 8%;
    }
    div.num04 dl.num04.v5{
    top: 40%;
    right: -5%;
    }
}
@media (min-width: 551px) and (max-width: 600px){
    div.canvasWrapper{
        width:250px;
    }
    div.num04 img{
        /*width:460px;*/
    }
    div.num04 dl.num04.v1{
        top: 16%;
        left: 3%;
    }
    div.num04 dl.num04.v2{
        top: 60%;
        left: 2%;
    }
    div.num04 dl.num04.v3{
        top: 24%;
        right: -5%;
    }
    div.num04 dl.num04.v3{
    top: 24%;
    right: -5%;
    }
    div.num04 dl.num04.v4{
        top: 40%;
        right: 8%;
    }
    div.num04 dl.num04.v5{
    top: 40%;
    right: -5%;
    }
}
@media (min-width: 601px) and (max-width: 650px){
    div.canvasWrapper{
        width:270px;
    }
    div.num04 img{
        /*width:500px;*/
    }
    div.num04 dl.num04.v1{
        top: 16%;
        left: 3%;
    }
    div.num04 dl.num04.v2{
        top: 60%;
        left: 2%;
    }
    div.num04 dl.num04.v3{
        top: 24%;
        right: -5%;
    }
    div.num04 dl.num04.v3{
    top: 24%;
    right: -5%;
    }
    div.num04 dl.num04.v4{
        top: 40%;
        right: 8%;
    }
    div.num04 dl.num04.v5{
    top: 40%;
    right: -5%;
    }
}
@media (min-width: 651px) and (max-width: 700px){
    div.canvasWrapper{
        width:290px;
    }
    div.num04 img{
        /*width:560px;*/
    }
    div.num04 dl.num04.v1{
        top: 16%;
        left: 3%;
    }
    div.num04 dl.num04.v2{
        top: 60%;
        left: 2%;
    }
    div.num04 dl.num04.v3{
        top: 27%;
        right: 1%;
    }
    div.num04 dl.num04.v4{
        top: 40%;
        right: 13%;
    }
    div.num04 dl.num04.v5{
        top: 40%;
        right: 0%;
    }
}
@media (min-width: 701px) and (max-width: 767px){
    div.canvasWrapper{
        width:330px;
    }
    div.num04 img{
        /*width:600px;*/
    }
    div.num04 dl.num04.v1{
        top: 18%;
        left: 6%;
    }
    div.num04 dl.num04.v2{
        top: 59%;
        left: 7%;
    }
    div.num04 dl.num04.v3{
        top: 28%;
        right: 3%;
    }
    div.num04 dl.num04.v4{
        top: 40%;
        right: 13%;
    }
    div.num04 dl.num04.v5{
        top: 40%;
        right: 3%;
    }
}

img.map{
	padding-top:173px;
}
div.column3{
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
}
div.column3 div.colwrapper{
    background-color: #fff;
    border-radius: 20px;
    width: 100%;
    /* height: 300px; */
    min-height: 300px;
    cursor: pointer;
    box-sizing: border-box;
    padding: 40px 10px;
    background-image: url("../images/num_corner.svg");
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 30px;
}
div.column3 div.numcontents.number dt{
	background:none;
	padding:0;
	margin:auto;
	position: absolute;
	left:0;
	right:0;
	top:152px;
}
div.column3 div.numcontents.number dt span{
    font-size: 20px;
    font-weight: bold;
    padding: 5px 8px;
    background-image: linear-gradient(90deg, rgba(0, 139, 202, 0.07) 0%, rgba(0, 149, 149, 0.07) 17%, rgba(127, 171, 38, 0.07) 34%, rgba(228, 163, 61, 0.07) 50%, rgba(214, 85, 19, 0.07) 66%, rgba(203, 20, 120, 0.07) 83%, rgba(91, 51, 128, 0.07) 100%);
    display: inline-block;
    margin: 20px auto 20px;
}
div.column3 div.numcontents.number dd{
	width:100%;
	position: absolute;
	margin:auto;
	left:0;
	right:0;
	bottom:20px;
	color:#000 !important;
}
div.column3 div.numcontents.description dd{
    padding:0 20px;
}
div.column1 {
    width:100%;
}
div.column1 div.colwrapper{
    width: 100%;
    border-radius: 20px;
    background-color: #fff;
    margin: 0 auto;
    background-image: url("../images/num_corner.svg");
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: right bottom;
    cursor: pointer;
    padding: 35px 10px 20px;
    box-sizing: border-box;
}
div.column1contents{
    /* width: 920px; */
    height: auto;
    /* aspect-ratio: 315/193; */
    width: 100%;
    margin: auto;
    position: relative;
    cursor: pointer;
}
div.column1contents > img{
    position: absolute;
    top:0;
    left:0;
    bottom:0;
    right:0;
    martin:auto;
    width:100%;
    height: auto;
	object-fit: cover;
    
    /*display: none;*/
}
div.column1contents dl.column1count{
    /* width: 300px; */
    /* position: absolute; */
    top: 0px;
    left: 0px;
    background: url(../images/num05.svg) center top no-repeat;
    background-size: 113px;
    padding-top: 97px;
    margin: auto;
    right: 0;
}
div.column1contents dl.column1count dd{
    color:#000 !important;
}
dl.general{
	overflow: hidden;
}
div.mapWrapper dl.local{
    position: absolute;
    text-align: center;
    width: 34vw;
}
div.mapWrapper dl.local dt{
    font-size: 3vw;
    font-weight: bold;
    background: none;
    padding: 0;
    margin: 0;
}
div.mapWrapper dl.local dd{
    font-size:2vw;
}
div.mapWrapper dl.local dd span.counter{
    display: inline-block;
    line-height: 1em;
    font-size: 5.5vw !important;
}
div.mapWrapper dl.local dd{
	font-family: "Montserrat";
	font-weight: bold;
	font-size:2vw !important;
}

div.mapWrapper dl.local dd span.small{
    font-size: 2.8vw !important;
}
div.mapWrapper{
    background: url("../images/num19.svg") center center no-repeat;
    width: calc(100% - 20px);
    aspect-ratio: 245/150;
    position: relative;
    margin: 10px 10px 30px;
}

div.mapWrapper dl.local.l1{/*北海道・東北*/
    top: 3%;
    right: calc(-5% + 17vw);
}
div.mapWrapper dl.local.l1 dt,
div.mapWrapper dl.local.l1 dd{
    color:#F2AA51 !important;
}
div.mapWrapper dl.local.l2{/*関東*/
    top: 67%;
    right: calc(-18% + 17vw);
}
div.mapWrapper dl.local.l2 dt,
div.mapWrapper dl.local.l2 dd{
    color:#0098D7 !important;
}
div.mapWrapper dl.local.l3{/*甲信越・北陸*/
    top: 33%;
    right: calc(0% + 17vw);
}
div.mapWrapper dl.local.l3 dt,
div.mapWrapper dl.local.l3 dd{
    color:#5B3A8C !important;
}
div.mapWrapper dl.local.l4{/*東海*/
    top: 76%;
    right: calc(2% + 17vw);
}
div.mapWrapper dl.local.l4 dt,
div.mapWrapper dl.local.l4 dd{
    color:#7FB826 !important;
}
div.mapWrapper dl.local.l5{/*関西*/
    top: 85%;
    right: calc(19% + 17vw);
}
div.mapWrapper dl.local.l5 dt,
div.mapWrapper dl.local.l5 dd{
    color:#00A2A2 !important;
}
div.mapWrapper dl.local.l6{/*四国・中国*/
    top: 48%;
    right: calc(24% + 17vw);
}
div.mapWrapper dl.local.l6 dt,
div.mapWrapper dl.local.l6 dd{
    color:#D81478 !important;
}
div.mapWrapper dl.local.l7{/*九州・沖縄*/
    top: 55%;
    right: calc(47% + 17vw);
}
div.mapWrapper dl.local.l7 dt,
div.mapWrapper dl.local.l7 dd{
    color:#E35513 !important;
}
div.column1 div.description dl dd{
    /* width: 680px; */
    margin-left: 10px!important;
    margin-right: 10px!important;
}



ul.footerEntry {
    width: calc(100% - 20px);
    margin: auto;
    display: flex;
    justify-content: space-between;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 30;
}
ul.footerEntry li{
    width: 22.5%;
    height: 42px;
    background: #333;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    cursor: pointer;
}
ul.footerEntry li a{
	font-size:12px;
	line-height: 15px;
	text-align: center;
	color:#fff;
	display: block;
}
ul.footerEntry li.f1 {
    border-top: 2px solid #78B842;
    border-right: 2px solid #78B842;
    border-left: 2px solid #78B842;
}
ul.footerEntry li.f2 {
    border-top: 2px solid #CF2A73;
    border-right: 2px solid #CF2A73;
    border-left: 2px solid #CF2A73;
}
ul.footerEntry li.f3 {
    border-top: 2px solid #DC542F;
    border-right: 2px solid #DC542F;
    border-left: 2px solid #DC542F;
}
ul.footerEntry li.f4 {
    border-top: 2px solid #0097C9;
    border-right: 2px solid #0097C9;
    border-left: 2px solid #0097C9;
}
/*sitemap*/
dl.sitemap2{
	
}
dl.sitemap2 dt{
    font-size: 16px;
    font-weight: bold;
	line-height: 60px;
	border-bottom:1px solid #fff;
	text-indent: 28px;
	position: relative;
}
dl.sitemap2 dd{
	display: none;
}
dl.sitemap2 dt span.arrow,
dl.sitemap2 dd span.arrow{
	display:block;
	width:10px;
	height: 10px;
	background:url("../images/arrow_red_down.svg") center center no-repeat;
	background-size:10px;
	position: absolute !important;
	margin:auto;
	top:0;
	bottom:0;
	right:28px;
	transition: transform 0.5s ease;
}
dl.sitemap2 ul.noChild{
	border-bottom:1px solid #fff;
}
dl.sitemap2 ul.noChild > li,
dl.sitemap2 span.store{
    line-height: 50px;
    font-size: 14px;
    text-indent: 42px;
    position: relative;
    background: url("../images/arrow_red.svg") right 28px center no-repeat;
    background-size: 6px;
    font-weight: bold;
}
dl.sitemap2 li.link{
    background: url("../images/icon_link.svg") right 28px center no-repeat !important;
    background-size: 12px !important;
}
div.megaMenu dl.sitemap2 ul.noChild > li,
div.megaMenu dl.sitemap2 span.store{
	line-height: 50px;
	font-size:14px;
	text-indent: 30px;
	position: relative;
	background:url("../images/arrow_red.svg") right 18px center no-repeat #fff;
	background-size:6px;
	font-weight: bold;
	border-radius: 4px;
	margin-bottom:3px;
	margin-right:10px;
}
dl.sitemap2 span.store::before{
	content: "";
	width:3.25px;
	height: 3.25px;
	border-radius: 3px;
	position: absolute;
	top:0;
	bottom:0;
	left:30px;
	margin:auto;
	background:#E35513;
}
div.megaMenu dl.sitemap2 span.store::before{
	content: "";
	width:3.25px;
	height: 3.25px;
	border-radius: 3px;
	position: absolute;
	top:0;
	bottom:0;
	left:20px;
	margin:auto;
	background:#E35513;
}
dl.sitemap2 ul.noChild > li::before{
	content: "";
	width:3.25px;
	height: 3.25px;
	background:#E35513;
	border-radius: 3px;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	left:30px;
	text-indent: 20px;
}
div.megaMenu dl.sitemap2 ul.noChild > li::before{
	left:20px;
}
dl.sitemap2 ul.hasChild{
	font-weight: bold;
	border-bottom: 1px solid #fff;
}
dl.sitemap2 ul.hasChild > li span{
    line-height: 50px;
    font-size: 14px;
    text-indent: 42px;
    display: block;
}
div.megaMenu dl.sitemap2 ul.hasChild > li ul li{
	line-height: 50px;
	text-indent: 16px;
	font-size:14px;
	background:url("../images/arrow_red_down.svg") right 28px center no-repeat #fff;
	background-size:7px !important;
	border-radius: 4px;
	margin-right: 10px;
}
dl.sitemap2 ul.line{
	margin-bottom: 0;
	display: none;
}
dl.sitemap2 ul.line li{
	margin-bottom:0 !important;
	position: relative;
	background:url("../images/arrow_red.svg") right 28px center no-repeat !important;
	background-size:6px !important;
}
div.megaMenu dl.sitemap2 ul.line li{
	background:url("../images/arrow_red.svg") right 18px center no-repeat #fff !important;
	line-height: 50px;
	border-radius: 4px;
	margin-bottom:3px !important;
	margin-left:18px;
	
}
dl.sitemap2 ul.line li::before{
	content:"";
	width:10px;
	height: 1px;
	background:#000;
	position: absolute;
	margin:auto;
	top:0;
	bottom:0;
	left:50px;
}
div.megaMenu dl.sitemap2 ul.line li::before{
	left:18px;
}
dl.sitemap2 dt.rightArrow{
	background:url("../images/arrow_red.svg") right 28px center no-repeat;
	background-size:6px;
}
dl.sitemap2 dt.otherLink{
	background:url("../images/icon_link.svg") right 28px center no-repeat;
	background-size:12px;
}
dl.sitemap2 li.arrow span{
	position: relative;
	display: block;
}
h1.inner{
	font-size:24px;
	font-weight: bold;
}
div.carrerimg {
	margin:20px auto;
	width:100%;
	height: auto;
}
div.carrerimg img{
	max-width:100% !important;
	height: auto;
	object-fit: cover
}


div.jobVideo {
	width:calc(80vw);
	aspect-ratio:2/1;
	margin:15px auto;
	border-radius: 15px;
}
div.jobVideo iframe{
	border-radius: 15px;
}
/*-----------------------------------------------
　部門紹介　組織イラスト
-------------------------------------------------*/


/* @group 組織イラスト動作 */
.Career-Illust {
    display: flex;
    justify-content: center;
    padding-top: 100px;
    margin-bottom: 80px;
}

.Career-Illust .Illust-Town {
    position: relative;
    width: 100%;
    /*min-width: 1380px;
    max-width: 1380px;*/
    /*height: 940px;*/
	aspect-ratio:1380/940;
    background-image: url("../img/portal/career-illust-town.svg");
    /*background-size: 1380px 940px;*/
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.Career-Illust .Illust-Town .Illust-MKCFCO {
    position: absolute;
    left: 0;
    right: 0;
    top: -26%;
    margin: auto;
    width: 100%;
    max-width: 26%;
    height: auto;
    transition: all 0.3s;
    z-index: 1;
}

.Career-Illust .Illust-Town .Illust-MKCFCO:hover {
    top: -70px;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-MEGCFG {
    position: absolute;
    left: 10px;
    top: 7.5%;
    width: 100%;
    max-width: 96.5%;
    height: auto;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-MEGCFG:hover {
    top: 50px;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-MKG {
    position: absolute;
    left: 10px;
    top: -10px;
    width: 100%;
    max-width: 592px;
    height: auto;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-MKG:hover {
    top: -20px;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-CFG {
    position: absolute;
    right: 10px;
    top: -10px;
    width: 100%;
    max-width: 592px;
    height: auto;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-CFG:hover {
    top: -20px;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-MCCM {
    position: absolute;
    left: 0;
    right: 0;
    top: 28%;
    margin: auto;
    width: 100%;
    max-width: 25%;
    height: auto;
    transition: all 0.3s;
    z-index: 1;
}

.Career-Illust .Illust-Town .Illust-MCCM:hover {
    top: 350px;
    transition: all 0.3s;
}

.Career-Illust .Illust-Town .Illust-MKCFCO a img,
.Career-Illust .Illust-Town .Illust-MKGCFG a img,
.Career-Illust .Illust-Town .Illust-MKG a img,
.Career-Illust .Illust-Town .Illust-CFG a img,
.Career-Illust .Illust-Town .Illust-MCCM a img {
    width: 100%;
    height: auto;
}

/**/

.Career-Illust .Illust-Town .Illust-MKCFCO02 {
    position: absolute;
    left: 0;
    right: 0;
    top: 12%;
    margin: auto;
    width: 100%;
    max-width: 17%;
    height: auto;
    transition: all 0.3s;
    z-index: 1;
}

.Career-Illust .Illust-Town .Illust-MCCM02 {
    position: absolute;
    left: 0;
    right: 0;
    top: 59%;
    margin: auto;
    width: 100%;
    max-width: 3.5%;
    height: auto;
    z-index: 1;
}

.Career-Illust .Illust-Town .Illust-MKCFCO02 img,
.Career-Illust .Illust-Town .Illust-MCCM02 img {
    width: 100%;
    height: auto;
}
/* @end */



/*------------------------------------------------------
 モーダル
------------------------------------------------------*/

.modal-wrapper {
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 60px 10px;
  text-align: center
}

.modal-wrapper:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}

.modal-wrapper:target {
  opacity: 1;
  visibility: visible;
  transition: opacity .4s, visibility .4s;
}

.modal-wrapper::after {
  display: inline-block;
  height: 100%;
  margin-left: -.05em;
  vertical-align: middle;
  content: ""
}

.modal-overlay {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, .7)
}

.modal-wrapper .modal-close {
  z-index: 20;
  position: absolute;
  top: -10px;
  right: -10px;
  width: 40px;
    height: 40px;
  color: #ffffff !important;
    background-color: #000000;
    border-radius: 20px;
  font-size: 20px;
  font-weight: 700;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  text-indent: 0
}

.modal-wrapper .modal-close:hover {
  background-color: #666666;
}

.modal-wrapper .modal-window {
  box-sizing: border-box;
  display: inline-block;
  z-index: 20;
  position: relative;
  width: 90%;
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, .6);
  vertical-align: middle
}

.modal-wrapper .modal-window .modal-content {
  max-height: 80vh;
  overflow-y: auto;
  margin-bottom: 40px;
	margin-top: 60px;
}

.Modal-Inner {
    /* width: 900px; */
    padding: 10px 20px;
    text-align: left;
    margin-right: auto;
    margin-left: auto;
}
.Modal-Inner h3 {
    font-weight: bold;
    line-height: 1em;
    padding-left: 1em;
    position: relative;
    margin-top: 2em;
    margin-bottom: 1.6em;
    font-size: 2em;
}
.Modal-Inner h3::before {
    content: "";
    position: absolute;
    margin: auto;
    width: 1px;
    height: 40px;
    top: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(0deg, rgba(0,143,206,1) 0%, rgba(0,153,153,1) 17%, rgba(127,175,38,1) 34%, rgba(232,167,61,1) 50%, rgba(218,85,19,1) 66%, rgba(207,20,120,1) 83%, rgba(91,58,131,1) 100%);
}


.flexbox2 .card p {
line-height: 2em;
font-size: 1.6em;
flex-grow: 1;
margin-bottom: 1.5em;
}

/* ❶ */
.flexbox2 .card {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}
 
.flexbox2 .card .item {
/*  width: 45%;*/
}
 
.flexbox2 .card .item:not(:nth-child(2n)) {
    /* margin-right: 80px; */
}
 
.flexbox2 .card .item:nth-child(n+3) {
  margin-top: 30px;
}
 
/* ❷ */
.flexbox2 .card .item div.adjust {
  display: flex;
  flex-direction: column; /* ★ポイント★ */
  height: 100%;
}
 
.flexbox2 .card .btn {
  margin-top: auto; /* ★ポイント★ */
  padding-top: 12px;
}

.flexbox2 a {
    text-align: center;
    display: block;
    width: 200px;
    line-height: 36px;
    color: #fff;
    background-color: #000;
    background-image: url("../images/arrow_interview.svg");
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 10px;
    border-radius: 18px;
    margin: auto auto 0;
    font-size: 14px;
	text-indent: -1em;
}
div.modal-content h2{
	font-size:22px;
	font-weight: bold;
}
div.modal-content p.generalNormal{
	margin:20px;
	text-align: left;
}

/*modal*/
div.divisionWrapper{
    margin: 20px 10px 10px;
}
div.division{
	box-sizing: border-box;
	padding:10px;
	border-radius: 10px;
	border:1px solid #D1D6D6;
	margin-bottom: 10px;
}
div.division > img{
    width: 100%;
    height: auto;
    padding: 0px 6px;
    aspect-ratio: 6/5;
    box-sizing: border-box;
    border-radius: 10px;
	object-fit: cover;
}
div.division h3{
	font-size: 22px;
	font-weight: bold;
	padding: 5px 10px;
	background-image: linear-gradient(90deg, rgba(0, 139, 202, 0.07) 0%, rgba(0, 149, 149, 0.07) 17%, rgba(127, 171, 38, 0.07) 34%, rgba(228, 163, 61, 0.07) 50%, rgba(214, 85, 19, 0.07) 66%, rgba(203, 20, 120, 0.07) 83%, rgba(91, 51, 128, 0.07) 100%);
	display: inline-block;
	margin: 20px auto 20px;
}
div.division p{
    font-size: 16px;
    margin-bottom: 18px;
    margin: 0 30px 18px;
    text-align: left;
    line-height: 1.8em;
}
a.toEmployee{
	width:200px;
	height: 36px;
	line-height: 36px;
	border-radius: 36px;
	box-sizing: border-box;
	text-align: center;
	background:#000;
	color:#fff;
	display: block;
	margin:40px auto 25px;
	font-size:14px;
	position: relative;
}
a.toEmployee span.arrow{
	background:url("../images/arrow_white_down.svg") center center no-repeat;
	width:10px;
	height: 7px;
	position: absolute;
	top:0;
	bottom:0;
	right:10px;
	margin:auto;
    transition: transform 0.5s ease-in-out; 
    display: inline-block; 
}
a.toEmployee span.arrow.rotate {
    transform: rotate(180deg); 
}
ul.employee{
	width: 100%;
}
ul.employee li a{
    width: 100%;
    padding: 10px;
    display: flex;
    gap: 8px;
    background: #E1E6E6;
    border-radius: 10px;
    margin-bottom: 10px;
    box-sizing: border-box;
    color: #000;
    line-height: 1.5em;
    text-indent: 0;
    align-items: center;
}
ul.employee li img{
	width:60px;
	height: 60px;
	border-radius: 60px;
}
ul.employee li div{
	font-size:12px;
	text-align: left;
}
/*end of modal*/

div.storeDetail.video{
	aspect-ratio:1100/426;
	margin-bottom:50px;
}


.storeDetailImg630 {
    flex-wrap: wrap;
    display: flex;
    justify-content: space-between;
    gap:20px;
}
.storeDetailImg630 img{
	border-radius: 10px;
}
.storeDetailImg630 img:nth-child(1){
	aspect-ratio:5/3;
	object-fit: cover;
	width:100%;
	height:100%;
	border-radius: 10px;
}
.storeDetailImg630 img:nth-child(2),
.storeDetailImg630 img:nth-child(3){
	aspect-ratio:5/3;
	object-fit: cover;
	width:calc(50% - 10px);
	border-radius: 10px;
}
dl.listsite{
	display: flex;
	flex-direction: column;
	margin-top:30px;
	width:calc(100% - 30px);
	margin:auto;
	margin-bottom:60px;
}
dl.listsite > dt{
	font-size:20px;
	font-weight: bold;
	text-align: left;
	margin-top:20px;
	margin-bottom:20px;
}
dl.listsite > dd{
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap:20px;

}
dl.listsite div.group > dl{
	margin-bottom:10px;
}
.rmap {
	width:100%;
	background:url("../images/recruitMap.svg") center center no-repeat;
	aspect-ratio:213/150;
	background-size:100%;
	position: relative;
}
.rmap dl{
	width:2.6vw;
	position: absolute;
}
.rmap dl dt{
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center;
    width: min(6.6vw,24px);
    height: min(6.6vw,24px);
    aspect-ratio: 1/1/;
    white-space: nowrap;
    overflow: hidden;
    text-indent: 100%;
    cursor: pointer;
    margin-top: min(-1.3vw,-20px);
}
.rmap dl dd{
    width: min(66vw,260px);
    padding: 2vw 2vw 4vw 8vw;
    border-radius: 8px;
    border-width: 2px;
    border-style: solid;
    position: absolute;
    bottom: 8vw;
    background: #fff;
    box-sizing: border-box;
}
.rmap dl dd::after{
	content: "";
	width:2px;
	height: 1.3vw;
	position: absolute;
	margin:auto;
	left:0;
	right:0;
	bottom:-1.3vw;
	display: none;
}
.rmap dl.r1{
    top: calc(37% - 1.3vw);
    left: calc(74% - 1.3vw);
}
.rmap dl.r2{
    top: calc(65% - 1.3vw);
    left: calc(69% - 1.3vw);
}
.rmap dl.r3{
    top: calc(62% - 1.3vw);
    left: calc(58% - 1.3vw);
}
.rmap dl.r4{
    top: calc(72% - 1.3vw);
    left: calc(60% - 1.3vw);
}
.rmap dl.r5{
    top: calc(77% - 1.3vw);
    left: calc(45% - 1.3vw);
}
.rmap dl.r6{
    top: calc(79% - 1.3vw);
    left: calc(32% - 1.3vw);
}
.rmap dl.r7{
    top: calc(88% - 1.3vw);
    left: calc(15% - 1.3vw);
}
.rmap dl.r1 dt{
    background-image: url("../images/aera1.svg");
}
.rmap dl.r2 dt{
    background-image: url("../images/area2.svg");
}
.rmap dl.r3 dt{
    background-image: url("../images/area4.svg");
}
.rmap dl.r4 dt{
    background-image: url("../images/area3.svg");
}
.rmap dl.r5 dt{
    background-image: url("../images/area5.svg");
}
.rmap dl.r6 dt{
    background-image: url("../images/area6.svg");
}
.rmap dl.r7 dt{
    background-image: url("../images/area7.svg");
}


.rmap dl.r1 dd{
    border-color: #F3A847;
    left: calc(-45vw + 1.3vw)
}
.rmap dl.r1 dd::after{
	background-color: #F3A847;
}
.rmap dl.r2 dd{
    border-color: #E35513;
    left: calc(-40vw + 1.3vw);
    z-index: 10;
}
.rmap dl.r2 dd::after{
	background-color: #E35513;
}
.rmap dl.r3 dd{
    border-color: #D81478;
    left: calc(-30vw + 1.3vw);
}
.rmap dl.r3 dd::after{
	background-color: #D81478;
}
.rmap dl.r4 dd{
    border-color: #5B3A8C;
    left: calc(-32vw + 1.3vw);
}
.rmap dl.r4 dd::after{
	background-color: #5B3A8C;
}
.rmap dl.r5 dd{
	border-color: #0098D7;
    left: calc(-30vw + 1.3vw);
}
.rmap dl.r5 dd::after{
	background-color: #0098D7;
}
.rmap dl.r6 dd{
	border-color: #00A2A2;
    left: calc(-28vw + 1.3vw);
}
.rmap dl.r6 dd::after{
	background-color: #00A2A2;
}
.rmap dl.r7 dd{
	border-color: #7FB826;
    left: calc(-13vw + 1.3vw);
}
.rmap dl.r7 dd::after{
	background-color: #7FB826;
}
.rmap ul{
	font-size:max(0.9vw,12px);
}
.rmap ul li{
	list-style: disc;
	margin-top: .8em;
}
.rmap ul li a{
	text-decoration: underline;
}
div.processWrapper{
    position: relative;
    width:100%;
    height:100%;
}
div.processWrapper .line {
    position: absolute;
    z-index: -1;
    height: 1px;
    background-color: #e6e6e6;
    transform-origin: 0 0;
}
div.processWrapper canvas {
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none; /* Canvas上の要素がクリックできるようにする */
}
p.notfound{
	font-size:16px;
	margin:50px 20px;
}

/*数字を見るの新バージョン*/
div.revWrapper{
    width: calc(100% - 60px);
    margin: 60px auto;
}
div.rev_column1{
	width:100%;
	margin-top:25px;
}
div.rev_column2,
div.rev_column3{
    display: flex;
    gap: 25px;
    flex-wrap: wrap;
}
div.rev_column3{
	margin-top:25px;
}
div.revWrapper div.rev{
    height: auto;
    box-sizing: border-box;
    border-radius: 20px;
    background-color: #fff;
    margin: auto;
    background-image: url("../images/num_corner.svg");
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: right bottom;
    cursor: pointer;
    padding: 40px;
    overflow: hidden;
    position: relative;
    min-height: 330px;
}
div.rev_column1 div.rev{
    width: 100%;
    border-radius: 20px;
    background-color: #fff;
    margin: 0 auto;
    background-image: url("../images/num_corner.svg");
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: right bottom;
    cursor: pointer;
    padding: 35px 10px 20px;
    box-sizing: border-box;
}
@media (min-width: 320px) and (max-width: 374.99px) {
  div.revWrapper div.rev_column3 div.rev {
    min-height: 375px;
  }
  div.revWrapper div.rev_column3 div.rev.pb {
    min-height: 400px;
  }
}
div.rev_column2 div.rev{
/*	width:calc((100% - 25px) / 2);
    min-width:536px;
	aspect-ratio:536/475;*/
    width: 100%;
}
div.rev_column3 div.rev{
/*	width:calc((100% - 50px) / 3);
    aspect-ratio:350/380;
    min-width:350px;*/
    width: 100%;
}
div.rev dl.general dt{
    font-size: min(5.5vw,22px);
    font-weight: bold;
    padding: 5px 8px;
    background-image: linear-gradient(90deg, rgba(0, 139, 202, 0.07) 0%, rgba(0, 149, 149, 0.07) 17%, rgba(127, 171, 38, 0.07) 34%, rgba(228, 163, 61, 0.07) 50%, rgba(214, 85, 19, 0.07) 66%, rgba(203, 20, 120, 0.07) 83%, rgba(91, 51, 128, 0.07) 100%);
    display: inline-block;
    margin: 40px auto 30px;
    margin: 28px auto 20px;
}
div.rev dl.general dd{
    color: #E9546B;
    /*font-family: "Montserrat";*/
    font-weight: bold;
    font-size: 24px;
}
div.rev div.number,
div.rev div.description{
	text-align: center;
}
div.rev div.number{
}
div.rev div.number img.w84 {
    width: 84px;
}
div.rev div.number img.w203{
	width:147px;
}
div.rev div.number img.w348 {
    width: 190px;
}
div.rev div.number img.w122 {
    width: 122px;
}
div.rev div.number img.w147 {
    width: 147px;
}
div.rev div.number img.w179 {
    width: 179px;
}
div.rev div.description {
	transition: opacity .5s, transform .6s /*cubic-bezier(0.215, 0.61, 0.355, 1)*/;
	z-index: 2;
	position: absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	margin:auto;
	background-color:#fff;
    background-image: url("../images/num_corner.svg");
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: right bottom;
}
div.rev:not(:hover) div.number,
div.rev.hover-effect div.number{
	opacity: 1;
	/*opacity: 0;*/
}
div.rev:not(:hover) div.description,
div.rev.hover-effect div.description{
	opacity: 0;
	/*opacity: 1;*/
	transform: translateY(100%);
}
div.rev dl.general dd span.counter,
div.rev dl.general dd span.counter2 {
    font-size: 32px;
    display: inline-block;
}
div.rev div.description dl.general dd {
    text-align: justify;
    margin: 0 20px 0;
    font-size: 16px;
    line-height: 1.8em;
    font-weight: normal;
    color: #000;
}
div.rev div.mapWrapper dl.local dt {
    font-size: 16px;
    font-size: min(1.3vw,12px);
    font-weight: bold;
    background: none;
    padding: 0;
    margin: 0;
}
div.rev_column1 div.description dl dd {
/*    max-width: 680px;
	width:100%;
    margin-left: auto !important;
    margin-right: auto !important;*/
}
div.rev_column3 div.number dt {
    background:none;
    padding: 0;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 152px;
}
div.rev_column3 div.number dd {
    width: 100%;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 20px;
    color: #000 !important;
}
div.rev_column3 div.number dt span {
    font-size: min(5.5vw,22px);
    font-weight: bold;
    padding: 5px 8px;
    background-image: linear-gradient(90deg, rgba(0, 139, 202, 0.07) 0%, rgba(0, 149, 149, 0.07) 17%, rgba(127, 171, 38, 0.07) 34%, rgba(228, 163, 61, 0.07) 50%, rgba(214, 85, 19, 0.07) 66%, rgba(203, 20, 120, 0.07) 83%, rgba(91, 51, 128, 0.07) 100%);
    display: inline-block;
    margin: 40px auto 30px;
}