@charset "utf-8";

/*=========================================*/
/* TOP PAGE */
/*=========================================*/


/*-- CONTENTS FRAME --*/

.top_page_contents_area{
	position:relative;
	margin:0px 0px 0px 100px;
	padding:100px 0px 125px 0px;
	width:calc(100% - 100px);
}

.top_page_contents_frame_wide{
	position:relative;
	margin:0px auto 0px auto;
	padding:75px 7.5% 0px 7.5%;
	max-width:1280px;
}

.top_page_contents_frame_midd{
	position:relative;
	margin:0px auto 0px auto;
	padding:50px 7.5% 0px 7.5%;
	max-width:1280px;
}

.top_page_contents_frame_full{
	position:relative;
	width:100%;
}

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

.top_page_contents_frame_wide{
	padding:70px 7.0% 0px 7.0%;
}

.top_page_contents_frame_midd{
	padding:45px 7.0% 0px 7.0%;
}

}

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

.top_page_contents_frame_wide{
	padding:65px 6.5% 0px 6.5%;
}

.top_page_contents_frame_midd{
	padding:40px 6.5% 0px 6.5%;
}

}

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

.top_page_contents_area{
	margin:0px 0px 0px 0px;
	padding:0px 0px 100px 0px;
	width:100%;
}

.top_page_contents_frame_wide{
	padding:0px 35px 0px 35px;
}

.top_page_contents_frame_midd{
	padding:0px 35px 0px 35px;
}

}

@media all and (max-width:960px), print{

.top_page_contents_area{
	margin:0px 0px 0px 0px;
	padding:0px 0px 75px 0px;
	width:100%;
}

.top_page_contents_frame_wide{
	padding:0px 25px 0px 25px;
}

.top_page_contents_frame_midd{
	padding:0px 25px 0px 25px;
}

}

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

.top_page_contents_area{
	padding:0px 0px 60px 0px;
}

.top_page_contents_frame_wide{
	padding:0px 20px 0px 20px;
}

.top_page_contents_frame_midd{
	padding:0px 20px 0px 20px;
}

}

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

.top_page_contents_area{
	padding:0px 0px 45px 0px;
}

.top_page_contents_frame_wide{
	padding:0px 15px 0px 15px;
}

.top_page_contents_frame_midd{
	padding:0px 15px 0px 15px;
}

}


/*-- CONTENTS TITLE --*/

.top_page_contents_title{
	position:absolute;
	top:100px;
	left:14%;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}

.top_page_contents_title .title{
	font-size:375%;
	line-height:125%;
	letter-spacing:-0.01em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(0,0,0,1.0);
	font-weight:normal;
	writing-mode:vertical-rl;
	font-feature-settings:initial;
}

.top_page_contents_title .eng{
	padding:5px 0px 0px 10px;
	font-size:112.5%;
	line-height:125%;
	letter-spacing:0.01em;
	color:rgba(25,25,25,1.0);
	font-weight:800;
	writing-mode:vertical-rl;
}

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

.top_page_contents_title{
	left:12%;
}

}

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

.top_page_contents_title{
	left:10%;
}

}

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

.top_page_contents_title{
	left:8%;
}

}

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

.top_page_contents_title{
	left:6%;
}

}

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

.top_page_contents_title{
	left:4%;
}

}

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

.top_page_contents_title .title{
	font-size:350%;
}

.top_page_contents_title .eng{
	font-size:106.25%;
}

}

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

.top_page_contents_title .title{
	font-size:325%;
}

.top_page_contents_title .eng{
	font-size:100%;
}

}

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

.top_page_contents_title{
	position:relative;
	top:auto;
	left:auto;
	padding:60px 40px 40px 40px;
	display:block;
}

.top_page_contents_title .title{
	font-size:300%;
	letter-spacing:-0.05em;
	writing-mode:horizontal-tb;
}

.top_page_contents_title .eng{
	padding:1px 0px 0px 5px;
	font-size:100%;
	letter-spacing:-0.01em;
	writing-mode:horizontal-tb;
}

}

@media all and (max-width:960px), print{

.top_page_contents_title{
	position:relative;
	top:auto;
	left:auto;
	padding:50px 30px 35px 30px;
	display:block;
}

.top_page_contents_title .title{
	font-size:275%;
	letter-spacing:-0.05em;
	writing-mode:horizontal-tb;
}

.top_page_contents_title .eng{
	padding:1px 0px 0px 4px;
	font-size:93.75%;
	letter-spacing:-0.01em;
	writing-mode:horizontal-tb;
}

}

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

.top_page_contents_title{
	padding:45px 25px 30px 25px;
}

.top_page_contents_title .title{
	font-size:250%;
}

.top_page_contents_title .eng{
	padding:1px 0px 0px 3px;
	font-size:87.5%;
}

}

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

.top_page_contents_title{
	padding:40px 20px 25px 20px;
}

.top_page_contents_title .title{
	font-size:237.5%;
}

}

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

.top_page_contents_title .title{
	font-size:225%;
}

}


/*-- CONTENTS NAV --*/

.top_page_contents_nav{
	position:relative;
	margin:0px 10px 25px 0px;
	width:calc(100% - 10px);
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.top_page_contents_nav a{
	position:relative;
	padding:40px 100px 40px 45px;
	background-image:url(../images/svg/icon_side_nav_black.svg);
	background-repeat:no-repeat;
	background-position:right 45px center;
	background-size:30px auto;
	text-decoration:none;
	display:block;
}

.top_page_contents_nav .nav{
	position:relative;
	display:flex;
	align-items:center;
}

.top_page_contents_nav .nav::after{
	position:absolute;
	top:0px;
	left:0px;
	right:0px;
	bottom:0px;
	width:100%;
	height:100%;
	content:'';
	transform-origin:left top;
	transform:scale(0, 1);
	transition:0.25s transform;
}

.top_page_contents_nav .nav::after{
	background-color:rgba(25,25,25,0.075);
}

.top_page_contents_nav .nav:hover::after{
	transform-origin:left top;
	transform:scale(1, 1);
}

.top_page_contents_nav .nav .name{
	position:relative;
	font-size:175%;
	line-height:125%;
	letter-spacing:-0.01em;
	color:rgba(25,25,25,1.0);
	font-weight:500;
	z-index:1;
}

.top_page_contents_nav .nav .sub{
	position:relative;
	padding:0px 0px 0px 5px;
	font-size:150%;
	line-height:125%;
	letter-spacing:-0.01em;
	color:rgba(25,25,25,1.0);
	font-weight:500;
	z-index:1;
}

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

.top_page_contents_nav{
	margin:0px 10px 22px 0px;
}

.top_page_contents_nav a{
	padding:37px 90px 37px 40px;
	background-position:right 40px center;
}

.top_page_contents_nav .nav .name{
	font-size:162.5%;
}

.top_page_contents_nav .nav .sub{
	font-size:137.5%;
}

}

@media all and (max-width:960px), print{

.top_page_contents_nav{
	margin:0px 8px 17px 0px;
	width:calc(100% - 8px);
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
}

.top_page_contents_nav a{
	padding:34px 76px 34px 35px;
	background-position:right 35px center;
	background-size:26px auto;
}

.top_page_contents_nav .nav::after{
	display:none;
}

.top_page_contents_nav .nav .name{
	font-size:150%;
}

.top_page_contents_nav .nav .sub{
	font-size:125%;
}

}

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

.top_page_contents_nav{
	margin:0px 6px 12px 0px;
	width:calc(100% - 6px);
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

.top_page_contents_nav a{
	padding:30px 57px 30px 25px;
	background-position:right 25px center;
	background-size:22px auto;
}

.top_page_contents_nav .nav .name{
	font-size:137.5%;
}

.top_page_contents_nav .nav .sub{
	font-size:112.5%;
}

}

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

.top_page_contents_nav a{
	padding:25px 48px 25px 20px;
	background-position:right 20px center;
	background-size:18px auto;
}

.top_page_contents_nav .nav .name{
	font-size:125%;
}

.top_page_contents_nav .nav .sub{
	font-size:100%;
}

}

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

.top_page_contents_nav a{
	padding:23px 46px 23px 18px;
	background-position:right 18px center;
}

.top_page_contents_nav .nav .name{
	font-size:112.5%;
}

.top_page_contents_nav .nav .sub{
	font-size:87.5%;
}

}


/*-- SUB TITLE --*/

.top_page_sub_title_area{
	position:relative;
	margin:0px 10px 0px 10px;
	display:flex;
}

.top_page_sub_title{
	position:relative;
	padding:5px 10px 2px 5px;
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:flex;
	align-items:center;
}

.top_page_sub_title .title{
	font-size:300%;
	line-height:105%;
	letter-spacing:-0.05em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(0,0,0,1.0);
	font-weight:normal;
}

.top_page_sub_title .corner_tl::before{
	position:absolute;
	top:-1px; left:-10px;
	width:10px; height:1px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_sub_title .corner_tl::after{
	position:absolute;
	top:-10px; left:-1px;
	width:1px; height:10px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_sub_title .corner_tr::before{
	position:absolute;
	top:-1px; right:-10px;
	width:10px; height:1px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_sub_title .corner_tr::after{
	position:absolute;
	top:-10px; right:-1px;
	width:1px; height:10px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_sub_title .corner_bl::before{
	position:absolute;
	bottom:-1px; left:-10px;
	width:10px; height:1px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_sub_title .corner_bl::after{
	position:absolute;
	bottom:-10px; left:-1px;
	width:1px; height:10px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_sub_title .corner_br::before{
	position:absolute;
	bottom:-1px; right:-10px;
	width:10px; height:1px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_sub_title .corner_br::after{
	position:absolute;
	bottom:-10px; right:-1px;
	width:1px; height:10px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

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

.top_page_sub_title .title{
	font-size:275%;
}

}

@media all and (max-width:960px), print{

.top_page_sub_title .title{
	font-size:250%;
}

}

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

.top_page_sub_title_area{
	margin:0px 5px 0px 5px;
}

.top_page_sub_title .title{
	font-size:225%;
}

}

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

.top_page_sub_title .title{
	font-size:8.0vw;
}

}


/*=========================================*/
/* MAIN */
/*=========================================*/


/*-- ANIMATION --*/

.animate-item{
	opacity:0;
	transform:translateY(75px);
	transition:opacity 2.5s ease, transform 1.75s ease;
}

.animate-item.is-active{
	opacity:1;
	transform:translateY(0);
}

.animate-item:nth-child(1){ transition-delay:0.5s; }
.animate-item:nth-child(2){ transition-delay:0.75s; }
.animate-item:nth-child(3){ transition-delay:1.0s; }
.animate-item:nth-child(4){ transition-delay:1.25s; }
.animate-item:nth-child(5){ transition-delay:1.5s; }
.animate-item:nth-child(6){ transition-delay:1.75s; }
.animate-item:nth-child(7){ transition-delay:2.0s; }
.animate-item:nth-child(8){ transition-delay:2.25s; }
.animate-item:nth-child(9){ transition-delay:2.5s; }
.animate-item:nth-child(10){ transition-delay:2.75s; }
.animate-item:nth-child(11){ transition-delay:3.0s; }
.animate-item:nth-child(12){ transition-delay:3.25s; }
.animate-item:nth-child(13){ transition-delay:3.5s; }


/*-- FRAME --*/

#top_page_main_area{
	position:relative;
	padding:100px 0px 0px 0px;
	background-color:rgba(255,255,255,1.0);
}

.top_page_main_frame{
	position:relative;
	width:100%;
	height:980px;
}

.writing_paper_area{
	position:absolute;
	top:0px;
	right:0px;
	left:0px;
	margin:auto;
	width:1526px;
	height:980px;
	background-image:url(../images/top_page/writing_paper_pc.png);
	background-repeat:no-repeat;
	background-position:center;
	background-size:auto 980px;
	z-index:10;
}

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

.top_page_main_frame{
	height:930px;
}

.writing_paper_area{
	width:1448px;
	height:930px;
	background-size:auto 930px;
}

}

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

.top_page_main_frame{
	height:880px;
}

.writing_paper_area{
	width:1370px;
	height:880px;
	background-size:auto 880px;
}

}

@media screen and (max-height:1080px){ /*-- height --*/

.top_page_main_frame{
	height:880px;
}

.writing_paper_area{
	width:1370px;
	height:880px;
	background-size:auto 880px;
}

}

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

.top_page_main_frame{
	height:830px;
}

.writing_paper_area{
	width:1292px;
	height:830px;
	background-size:auto 830px;
}

}

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

.top_page_main_frame{
	height:780px;
}

.writing_paper_area{
	width:1214px;
	height:780px;
	background-size:auto 780px;
}

}

@media screen and (max-height:1000px){ /*-- height --*/

.top_page_main_frame{
	height:780px;
}

.writing_paper_area{
	width:1214px;
	height:780px;
	background-size:auto 780px;
}

}

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

.top_page_main_frame{
	height:730px;
}

.writing_paper_area{
	width:1136px;
	height:730px;
	background-size:auto 730px;
}

}

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

.top_page_main_frame{
	height:680px;
}

.writing_paper_area{
	width:1060px;
	height:680px;
	background-size:auto 680px;
}

}

@media screen and (max-height:920px){ /*-- height --*/

.top_page_main_frame{
	height:680px;
}

.writing_paper_area{
	width:1060px;
	height:680px;
	background-size:auto 680px;
}

}

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

#top_page_main_area{
	padding:90px 0px 0px 0px;
}

.top_page_main_frame{
	height:630px;
}

.writing_paper_area{
	width:982px;
	height:630px;
	background-size:auto 630px;
}

}

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

.top_page_main_frame{
	height:580px;
}

.writing_paper_area{
	width:904px;
	height:580px;
	background-size:auto 580px;
}

}

@media screen and (max-height:840px){ /*-- height --*/

.top_page_main_frame{
	height:580px;
}

.writing_paper_area{
	width:904px;
	height:580px;
	background-size:auto 580px;
}

}

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

.top_page_main_frame{
	height:530px;
}

.writing_paper_area{
	width:826px;
	height:530px;
	background-size:auto 530px;
}

}

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

.top_page_main_frame{
	height:480px;
}

.writing_paper_area{
	width:748px;
	height:480px;
	background-size:auto 480px;
}

}

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

#top_page_main_area{
	padding:80px 0px 0px 0px;
}

.top_page_main_frame{
	height:480px;
}

.writing_paper_area{
	width:748px;
	height:480px;
	background-size:auto 480px;
}

}

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

.top_page_main_frame{
	height:600px;
}

.writing_paper_area{
	bottom:0px;
	width:100%;
	height:auto;
	aspect-ratio:109/70;
	background-size:100% auto;
}

}

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

.top_page_main_frame{
	height:550px;
}

}

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

#top_page_main_area{
	padding:70px 0px 0px 0px;
}

.top_page_main_frame{
	height:720px;
}

}

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

.top_page_main_frame{
	height:640px;
}

}

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

.top_page_main_frame{
	height:560px;
}

}

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

#top_page_main_area{
	padding:60px 0px 0px 0px;
}

}


/*-- CATCH --*/

.main_catch_font_01{
	position:absolute;
	top:7.65306%;
	left:65.98951%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_02{
	position:absolute;
	top:28.87755%;
	left:65.98951%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_03{
	position:absolute;
	top:50.10204%;
	left:65.98951%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_04{
	position:absolute;
	top:7.65306%;
	left:51.37614%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_05{
	position:absolute;
	top:28.87755%;
	left:51.37614%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_06{
	position:absolute;
	top:50.10204%;
	left:51.37614%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_07{
	position:absolute;
	top:7.65306%;
	left:34.14154%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_08{
	position:absolute;
	top:28.87755%;
	left:34.14154%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_09{
	position:absolute;
	top:50.10204%;
	left:34.14154%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_10{
	position:absolute;
	top:71.32653%;
	left:34.14154%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_11{
	position:absolute;
	top:7.65306%;
	left:19.52817%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_12{
	position:absolute;
	top:28.87755%;
	left:19.52817%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.main_catch_font_13{
	position:absolute;
	top:50.10204%;
	left:19.52817%;
	width:13.49934%;
	height:auto;
	aspect-ratio:1/1;
}

.writing_paper_area img{
	width:100%;
	height:auto;
	aspect-ratio:1/1;
}

/*--@media screen and (max-width:800px){

.main_catch_font_01{
	top:7.65306%;
	left:72.59259%;
	width:19.07407%;
}

.main_catch_font_02{
	top:28.87755%;
	left:72.59259%;
	width:19.07407%;
}

.main_catch_font_03{
	top:50.10204%;
	left:72.59259%;
	width:19.07407%;
}

.main_catch_font_04{
	top:7.65306%;
	left:51.94444%;
	width:19.07407%;
}

.main_catch_font_05{
	top:28.87755%;
	left:51.94444%;
	width:19.07407%;
}

.main_catch_font_06{
	top:50.10204%;
	left:51.94444%;
	width:19.07407%;
}

.main_catch_font_07{
	top:7.65306%;
	left:27.59259%;
	width:19.07407%;
}

.main_catch_font_08{
	top:28.87755%;
	left:27.59259%;
	width:19.07407%;
}

.main_catch_font_09{
	top:50.10204%;
	left:27.59259%;
	width:19.07407%;
}

.main_catch_font_10{
	top:71.32653%;
	left:27.59259%;
	width:19.07407%;
}

.main_catch_font_11{
	top:7.65306%;
	left:6.94444%;
	width:19.07407%;
}

.main_catch_font_12{
	top:28.87755%;
	left:6.94444%;
	width:19.07407%;
}

.main_catch_font_13{
	top:50.10204%;
	left:6.94444%;
	width:19.07407%;
}

}--*/


/*-- SLIDER --*/

.top_page_main_slider{
	position:relative;
	width:100%;
	height:100%;
}

.top_page_main_slider .swiper-wrapper{
	transition-timing-function:linear;
}

.top_page_main_slider .swiper_slide_main{
	position:relative;
	width:max-content;
	width:-webkit-max-content;
	width:-moz-max-content;
}

.swiper_slide_main .main img{
	width:696px;
}

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

.swiper_slide_main .main img{
	width:660px;
}

}

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

.swiper_slide_main .main img{
	width:625px;
}

}

@media screen and (max-height:1080px){ /*-- height --*/

.swiper_slide_main .main img{
	width:625px;
}

}

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

.swiper_slide_main .main img{
	width:590px;
}

}

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

.swiper_slide_main .main img{
	width:554px;
}

}

@media screen and (max-height:1000px){ /*-- height --*/

.swiper_slide_main .main img{
	width:554px;
}

}

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

.swiper_slide_main .main img{
	width:518px;
}

}

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

.swiper_slide_main .main img{
	width:484px;
}

}

@media screen and (max-height:920px){ /*-- height --*/

.swiper_slide_main .main img{
	width:484px;
}

}

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

.swiper_slide_main .main img{
	width:448px;
}

}

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

.swiper_slide_main .main img{
	width:412px;
}

}

@media screen and (max-height:840px){ /*-- height --*/

.swiper_slide_main .main img{
	width:412px;
}

}

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

.swiper_slide_main .main img{
	width:376px;
}

}

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

.swiper_slide_main .main img{
	width:340px;
}

}

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

.swiper_slide_main .main img{
	width:340px;
}

}

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

.swiper_slide_main .main img{
	width:426px;
}

}

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

.swiper_slide_main .main img{
	width:390px;
}

}

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

.swiper_slide_main .main img{
	width:512px;
}

}

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

.swiper_slide_main .main img{
	width:454px;
}

}

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

.swiper_slide_main .main img{
	width:398px;
}

}


/*=========================================*/
/* NEWS */
/*=========================================*/


/*-- FRAME --*/

#top_page_news_area{
	position:relative;
	width:100%;
	border-top:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	overflow:hidden;
}

#top_page_news_area::before{
	position:absolute;
	top:0px;
	right:0px;
	width:100%;
	height:100px;
	background-image:url(../images/top_page/bg_text_news.svg);
	background-repeat:no-repeat;
	background-position:right top;
	background-size:auto 100px;
	content:'';
}

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

#top_page_news_area::before{
	height:90px;
	background-size:auto 90px;
}

}

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

#top_page_news_area::before{
	height:80px;
	background-size:auto 80px;
}

}

@media all and (max-width:960px), print{

#top_page_news_area::before{
	height:70px;
	background-size:auto 70px;
}

}

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

#top_page_news_area::before{
	height:60px;
	background-size:auto 60px;
}

}

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

#top_page_news_area::before{
	height:50px;
	background-size:auto 50px;
}

}

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

#top_page_news_area::before{
	height:40px;
	background-size:auto 40px;
}

}


/*-- LIST --*/

.top_page_news_list_area{
	position:relative;
	padding:0px 0px 25px 0px;
	width:100%;
}

.top_page_news_list_frame{
	position:relative;
	margin:0px 10px 10px 0px;
	width:calc(100% - 10px);
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.top_page_news_list{
	position:relative;
	padding:30px 50px 30px 50px;
	border-bottom:1px solid rgba(25,25,25,0.75);
	box-sizing:border-box;
	display:flex;
}

.top_page_news_list:last-child{
	border-bottom:none;
}

.top_page_news_list .date{
	position:relative;
	padding:3px 0px 3px 0px;
	width:150px;
	font-size:125%;
	line-height:175%;
	letter-spacing:0.01em;
	color:rgba(105,140,5,1.0);
	font-weight:400;
}

.top_page_news_list .news_list_text{
	position:relative;
	flex:1;
}

.news_list_text p{
	position:relative;
	padding:3px 0px 3px 15px;
	font-size:125%;
	line-height:175%;
	letter-spacing:0.01em;
	color:rgba(25,25,25,1.0);
	font-weight:400;
}

.news_list_text p::after{
	position:absolute;
	top:18px;
	left:0px;
	width:6px;
	height:6px;
	background-color:rgba(25,25,25,1.0);
	content:'';
	/* radius */
	border-radius:100px;
}

.news_list_text a:link{ color:rgba(0,125,175,1.0); text-decoration:underline; }
.news_list_text a:visited{ color:rgba(0,125,175,1.0); text-decoration:underline; }
.news_list_text a:hover{ color:rgba(0,110,160,1.0); text-decoration:none; }
.news_list_text a:active{ color:rgba(0,110,160,1.0); text-decoration:none; }

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

.top_page_news_list_area{
	padding:0px 0px 20px 0px;
}

.top_page_news_list{
	padding:27px 45px 27px 45px;
}

.top_page_news_list .date{
	width:135px;
	font-size:118.75%;
}

.news_list_text p{
	font-size:118.75%;
}

}

@media all and (max-width:960px), print{

.top_page_news_list_area{
	padding:0px 0px 15px 0px;
}

.top_page_news_list_frame{
	margin:0px 8px 8px 0px;
	width:calc(100% - 8px);
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
}

.top_page_news_list{
	padding:24px 35px 24px 35px;
}

.top_page_news_list .date{
	width:120px;
	font-size:112.5%;
}

.news_list_text p{
	font-size:112.5%;
}

.news_list_text p::after{
	top:16px;
}

.news_list_text a:hover{ color:rgba(0,125,175,1.0); text-decoration:underline; }
.news_list_text a:active{ color:rgba(0,125,175,1.0); text-decoration:underline; }

}

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

.top_page_news_list{
	padding:21px 30px 21px 30px;
	display:block;
}

.top_page_news_list .date{
	width:100%;
}

.top_page_news_list .news_list_text{
	width:100%;
}

}

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

.top_page_news_list_area{
	padding:0px 0px 10px 0px;
}

.top_page_news_list_frame{
	margin:0px 6px 6px 0px;
	width:calc(100% - 6px);
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

.top_page_news_list{
	padding:18px 25px 18px 25px;
}

.top_page_news_list .date{
	width:105px;
	font-size:106.25%;
}

.news_list_text p{
	font-size:106.25%;
}

.news_list_text p::after{
	top:15px;
}

}

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

.top_page_news_list_area{
	padding:0px 0px 5px 0px;
}

.top_page_news_list{
	padding:15px 15px 15px 15px;
}

.top_page_news_list .date{
	font-size:100%;
}

.news_list_text p{
	font-size:100%;
}

}


/*=========================================*/
/* WORKS */
/*=========================================*/


/*-- FRAME --*/

#top_page_works_area{
	position:relative;
	width:100%;
	background-color:rgba(175,200,75,1.0);
	border-top:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	overflow:hidden;
}

#top_page_works_area::before{
	position:absolute;
	top:0px;
	right:0px;
	width:100%;
	height:100px;
	background-image:url(../images/top_page/bg_text_works.svg);
	background-repeat:no-repeat;
	background-position:right top;
	background-size:auto 100px;
	content:'';
}

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

#top_page_works_area::before{
	height:90px;
	background-size:auto 90px;
}

}

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

#top_page_works_area::before{
	height:80px;
	background-size:auto 80px;
}

}

@media all and (max-width:960px), print{

#top_page_works_area::before{
	height:70px;
	background-size:auto 70px;
}

}

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

#top_page_works_area::before{
	height:60px;
	background-size:auto 60px;
}

}

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

#top_page_works_area::before{
	height:50px;
	background-size:auto 50px;
}

}

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

#top_page_works_area::before{
	height:40px;
	background-size:auto 40px;
}

}


/*-- SUB TITLE SPACE --*/

.top_page_sub_title_area.works_bottom_space{
	padding:0px 0px 60px 0px;
}

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

.top_page_sub_title_area.works_bottom_space{
	padding:0px 0px 55px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_sub_title_area.works_bottom_space{
	padding:0px 0px 50px 0px;
}

}

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

.top_page_sub_title_area.works_bottom_space{
	padding:0px 0px 45px 0px;
}

}

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

.top_page_sub_title_area.works_bottom_space{
	padding:0px 0px 40px 0px;
}

}

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

.top_page_sub_title_area.works_bottom_space{
	padding:0px 0px 35px 0px;
}

}


/*-- NAV FRAME --*/

.top_page_works_nav_area{
	position:relative;
	padding:0px 0px 35px 0px;
}

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

.top_page_works_nav_area{
	padding:0px 0px 30px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_works_nav_area{
	padding:0px 0px 25px 0px;
}

}

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

.top_page_works_nav_area{
	padding:0px 0px 20px 0px;
}

}

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

.top_page_works_nav_area{
	padding:0px 0px 15px 0px;
}

}


/*-- SWIPER SET --*/

.top_page_department_swiper_area{
	padding:0px 0px 75px 0px;
	overflow:visible;
}

.top_page_department_swiper_inner{
	position:relative;
	margin:0px auto 0px auto;
	max-width:1280px;
}

.top_page_department_swiper_area .swiper{
	overflow:visible;
	padding:0px 0px 55px 0px;
}

.top_page_department_swiper_area .top_page_department_swiper_list{
	position:relative;
	width:max-content;
	width:-webkit-max-content;
	width:-moz-max-content;
}

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

.top_page_department_swiper_area{
	padding:0px 0px 70px 0px;
}

.top_page_department_swiper_area .swiper{
	padding:0px 0px 50px 0px;
}

}

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

.top_page_department_swiper_area{
	padding:0px 0px 65px 0px;
}

.top_page_department_swiper_area .swiper{
	padding:0px 0px 45px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_department_swiper_area{
	padding:0px 0px 55px 0px;
}

.top_page_department_swiper_area .swiper{
	padding:0px 0px 40px 0px;
}

}

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

.top_page_department_swiper_area{
	padding:0px 0px 50px 0px;
}

.top_page_department_swiper_area .swiper{
	padding:0px 0px 35px 0px;
}

}

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

.top_page_department_swiper_area{
	padding:0px 0px 45px 0px;
}

}


/*-- SWIPER LIST --*/

.swiper .swiper-slide{
	height:auto;
}

.swiper .list_box{ 
	height:100%;
}

.top_page_department_swiper_list .list_box{
	position:relative;
	margin:0px 25px 0px 0px;
	width:360px;
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:block;
	text-decoration:none;
	transition:0.25s ease-out;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.swiper-wrapper .top_page_department_swiper_list:last-child .list_box{
	margin:0px 10px 0px 10px;
}

.top_page_department_swiper_list .list_box .img_box{
	position:relative;
	overflow:hidden;
	border-bottom:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
}

.top_page_department_swiper_list .list_box .img_box::before{
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	margin:auto;
	width:100%;
	height:1px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_department_swiper_list .list_box .img_box .img{
	position:relative;
	width:100%;
	height:100%;
	aspect-ratio:3/2;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100% 100%;
	transition:0.25s ease-out;
}

.top_page_department_swiper_list .list_box:hover .img_box .img{
	background-size:102.5% 102.5%;
}

.top_page_department_swiper_list .list_box .text_box{
	position:relative;
	padding:15px 20px 15px 20px;
	background-image:url(../images/svg/icon_side_nav_black.svg);
	background-repeat:no-repeat;
	background-position:right 20px center;
	background-size:22px auto;
}

.top_page_department_swiper_list .list_box .text_box .title{
	position:relative;
	font-size:125%;
	line-height:150%;
	letter-spacing:-0.01em;
	color:rgba(25,25,25,1.0);
	font-weight:500;
	text-align:left;
}

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

.top_page_department_swiper_list .list_box{
	margin:0px 23px 0px 0px;
	width:340px;
}

.top_page_department_swiper_list .list_box .text_box .title{
	font-size:118.75%;
}

}

@media all and (max-width:960px), print{

.top_page_department_swiper_list .list_box{
	margin:0px 21px 0px 0px;
	width:320px;
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
	transition:0s ease-out;
}

.swiper-wrapper .top_page_department_swiper_list:last-child .list_box{
	margin:0px 8px 0px 0px;
}

.top_page_department_swiper_list .list_box .img_box .img{
	transition:0s ease-out;
}

.top_page_department_swiper_list .list_box:hover .img_box .img{
	background-size:100% 100%;
}

.top_page_department_swiper_list .list_box .text_box{
	padding:14px 18px 14px 18px;
	background-position:right 18px center;
	background-size:20px auto;
}

.top_page_department_swiper_list .list_box .text_box .title{
	font-size:112.5%;
}

}

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

.top_page_department_swiper_list .list_box{
	margin:0px 19px 0px 0px;
	width:300px;
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

.swiper-wrapper .top_page_department_swiper_list:last-child .list_box{
	margin:0px 6px 0px 0px;
}

.top_page_department_swiper_list .list_box .text_box .title{
	font-size:106.25%;
}

}


/*-- SWIPER SCROLL BAR --*/

.top_page_department_swiper_area .swiper-scrollbar{
	background:var(--swiper-scrollbar-bg-color, rgba(0,0,0,0.25));
}

.top_page_department_swiper_area .swiper-scrollbar-drag{
	background:var(--swiper-scrollbar-drag-bg-color, rgba(25,25,25,1.0));
}


/*-- SWIPER BG COLOR --*/

.top_page_department_swiper_list .list_box .text_box.bg_green{
	background-color:rgba(150,180,15,1.0);
}

.top_page_department_swiper_list .list_box .text_box.bg_orange{
	background-color:rgba(250,165,35,1.0);
}

.top_page_department_swiper_list .list_box .text_box.bg_blue{
	background-color:rgba(115,190,225,1.0);
}

.top_page_department_swiper_list .list_box .text_box.bg_pink{
	background-color:rgba(245,150,180,1.0);
}


/*-- PROJECT STORY FRAME --*/

.top_page_project_story_area{
	position:relative;
	padding:0px 0px 80px 0px;
	width:100%;
}

.top_page_project_story_area:last-child{
	padding:0px 0px 25px 0px;
}

.top_page_project_story_left_frame{
	position:relative;
	width:100%;
	display:flex;
	justify-content:flex-start;
	text-decoration:none;
	transition:0.25s ease-out;
}

.top_page_project_story_right_frame{
	position:relative;
	width:100%;
	display:flex;
	justify-content:flex-end;
	text-decoration:none;
	transition:0.25s ease-out;
}

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

.top_page_project_story_area{
	padding:0px 0px 70px 0px;
}

.top_page_project_story_area:last-child{
	padding:0px 0px 20px 0px;
}

}

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

.top_page_project_story_area{
	padding:0px 0px 60px 0px;
}

.top_page_project_story_area:last-child{
	padding:0px 0px 15px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_project_story_area{
	padding:0px 0px 50px 0px;
}

.top_page_project_story_area:last-child{
	padding:0px 0px 10px 0px;
}

.top_page_project_story_left_frame{
	margin:0px auto 0px auto;
	max-width:720px;
	flex-wrap:wrap;
	transition:0s ease-out;
}

.top_page_project_story_right_frame{
	margin:0px auto 0px auto;
	max-width:720px;
	flex-wrap:wrap;
	transition:0s ease-out;
}

}

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

.top_page_project_story_area{
	padding:0px 0px 40px 0px;
}

.top_page_project_story_area:last-child{
	padding:0px 0px 5px 0px;
}

}

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

.top_page_project_story_area{
	padding:0px 0px 30px 0px;
}

.top_page_project_story_area:last-child{
	padding:0px 0px 0px 0px;
}

}


/*-- PROJECT STORY IMAGE --*/

.top_page_project_story_img{
	position:relative;
	margin:0px 10px 10px 0px;
	width:61%;
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:block;
	text-decoration:none;
	transition:0.25s ease-out;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.top_page_project_story_img .img{
	position:relative;
	width:100%;
	height:100%;
	aspect-ratio:3/2;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100% 100%;
	transition:0.25s ease-out;
	overflow:hidden;
}

.top_page_project_story_left_frame:hover .top_page_project_story_img .img{
	background-size:102.5% 102.5%;
}

.top_page_project_story_right_frame:hover .top_page_project_story_img .img{
	background-size:102.5% 102.5%;
}

@media all and (max-width:960px), print{

.top_page_project_story_img{
	margin:0px 8px 0px 0px;
	width:calc(100% - 8px);
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
}

.top_page_project_story_img .img{
	transition:0s ease-out;
}

.top_page_project_story_left_frame:hover .top_page_project_story_img .img{
	background-size:100% 100%;
}

.top_page_project_story_right_frame:hover .top_page_project_story_img .img{
	background-size:100% 100%;
}

}

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

.top_page_project_story_img{
	margin:0px 6px 0px 0px;
	width:calc(100% - 6px);
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

}


/*-- PROJECT STORY TEXT FRAME --*/

.top_page_project_story_text_left{
	position:absolute;
	top:-3.75%;
	left:0px;
	margin:0px 10px 10px 0px;
	width:39.84375%;
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:block;
	text-decoration:none;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.top_page_project_story_text_right{
	position:absolute;
	top:-3.75%;
	right:0px;
	margin:0px 10px 10px 0px;
	width:39.84375%;
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:block;
	text-decoration:none;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.top_page_project_story_text_frame{
	position:relative;
	width:100%;
	height:100%;
	aspect-ratio:51/52;
	container-type:inline-size;
}

@media all and (max-width:960px), print{

.top_page_project_story_text_left{
	position:relative;
	top:auto;
	margin:0px 8px 8px 0px;
	width:calc(100% - 8px);
	border-top:none;
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
}

.top_page_project_story_text_right{
	position:relative;
	top:auto;
	margin:0px 8px 8px 0px;
	width:calc(100% - 8px);
	border-top:none;
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
}

.top_page_project_story_text_frame{
	height:auto;
	aspect-ratio:auto;
}

}

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

.top_page_project_story_text_left{
	margin:0px 6px 6px 0px;
	width:calc(100% - 6px);
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

.top_page_project_story_text_right{
	margin:0px 6px 6px 0px;
	width:calc(100% - 6px);
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

}


/*-- PROJECT STORY NUMBER --*/

.top_page_project_story_numb_left{
	position:absolute;
	top:-7.5%;
	left:35.9375%;
	width:7.8125%;
	height:auto;
	aspect-ratio:1/1;
	background-color:rgba(150,180,15,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:flex;
	justify-content:center;
	align-items:center;
	container-type:inline-size;
	z-index:2;
}

.top_page_project_story_numb_right{
	position:absolute;
	top:-7.5%;
	left:55.46875%;
	width:7.8125%;
	height:auto;
	aspect-ratio:1/1;
	background-color:rgba(150,180,15,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:flex;
	justify-content:center;
	align-items:center;
	container-type:inline-size;
	z-index:2;
}

.top_page_project_story_numb{
	font-size:55.0cqw;
	line-height:105%;
	letter-spacing:-0.01em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(0,0,0,1.0);
	font-weight:normal;
	text-align:center;
}

@media all and (max-width:960px), print{

.top_page_project_story_numb_left{
	top:-10px;
	left:-10px;
	width:12.5%;
}

.top_page_project_story_numb_right{
	top:-10px;
	left:-10px;
	width:12.5%;
}

}

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

.top_page_project_story_numb_left{
	top:-5px;
	left:-5px;
	width:15.0%;
}

.top_page_project_story_numb_right{
	top:-5px;
	left:-5px;
	width:15.0%;
}

}


/*-- PROJECT STORY TEXT --*/

.top_page_project_story_text_frame .name_eng{
	position:absolute;
	top:15.0%;
	left:0%;
	right:0%;
	margin:auto;
	font-size:3.5cqw;
	line-height:105%;
	letter-spacing:-0.01em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(105,140,5,1.0);
	font-weight:normal;
	text-align:center;
}

.top_page_project_story_text_frame .name_jpn{
	position:absolute;
	top:21%;
	left:0%;
	right:0%;
	margin:auto;
	font-size:5.0cqw;
	line-height:105%;
	letter-spacing:-0.01em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(0,0,0,1.0);
	font-weight:normal;
	text-align:center;
}

.top_page_project_story_catch{
	position:absolute;
	top:37.5%;
	left:0%;
	right:0%;
	margin:auto;
	display:block;
}

.top_page_project_story_catch .pc_catch{
	position:relative;
	margin:0% auto 3.5% auto;
	font-size:6.75cqw;
	line-height:105%;
	letter-spacing:-0.01em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(0,0,0,1.0);
	font-weight:normal;
	text-align:center;
	display:flex;
	justify-content:center;
	flex-direction:column;
	width:fit-content;
	z-index:1;
}

.top_page_project_story_catch .pc_catch.font_small{
	padding:3.5% 0% 0% 0%;
	font-size:5.75cqw;
}

.top_page_project_story_catch .pc_catch::before{
	position:absolute;
	bottom:0px;
	left:0px;
	width:100%;
	height:17.5%;
	content:"";
	background-image:linear-gradient(transparent 0%, rgba(255,225,0,1.0) 0%);
	z-index:-1;
}

.top_page_project_story_catch .sp_catch{
	display:none;
}

@media all and (max-width:960px), print{

.top_page_project_story_text_frame .name_eng{
	display:none;
}

.top_page_project_story_text_frame .name_jpn{
	display:none;
}

.top_page_project_story_catch{
	position:relative;
	padding:10px 15px 10px 15px;
}

.top_page_project_story_catch .pc_catch{
	display:none;
}

.top_page_project_story_catch .sp_catch{
	position:relative;
	margin:2.0% 0% 2.0% 0%;
	font-size:3.75cqw;
	line-height:105%;
	letter-spacing:-0.01em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(0,0,0,1.0);
	font-weight:normal;
	display:flex;
	width:fit-content;
	z-index:1;
}

.top_page_project_story_catch .sp_catch::before{
	position:absolute;
	bottom:0px;
	left:0px;
	width:100%;
	height:17.5%;
	content:"";
	background-image:linear-gradient(transparent 0%, rgba(255,225,0,1.0) 0%);
	z-index:-1;
}

.top_page_project_story_catch .sp_catch.sp_on{
	display:none;
}

}

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

.top_page_project_story_catch .sp_catch{
	font-size:5.0cqw;
}

.top_page_project_story_catch .sp_catch .sp_off{
	display:none;
}

.top_page_project_story_catch .sp_catch.sp_on{
	display:block;
}

}


/*=========================================*/
/* FRESHERS */
/*=========================================*/


/*-- FRAME --*/

#top_page_freshers_area{
	position:relative;
	width:100%;
	border-top:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	overflow:hidden;
}

#top_page_freshers_area::before{
	position:absolute;
	top:0px;
	right:0px;
	width:100%;
	height:100px;
	background-image:url(../images/top_page/bg_text_freshers.svg);
	background-repeat:no-repeat;
	background-position:right top;
	background-size:auto 100px;
	content:'';
}

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

#top_page_freshers_area::before{
	height:90px;
	background-size:auto 90px;
}

}

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

#top_page_freshers_area::before{
	height:80px;
	background-size:auto 80px;
}

}

@media all and (max-width:960px), print{

#top_page_freshers_area::before{
	height:70px;
	background-size:auto 70px;
}

}

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

#top_page_freshers_area::before{
	height:60px;
	background-size:auto 60px;
}

}

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

#top_page_freshers_area::before{
	height:50px;
	background-size:auto 50px;
}

}

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

#top_page_freshers_area::before{
	height:40px;
	background-size:auto 40px;
}

}


/*-- NAV FRAME --*/

.top_page_freshers_nav_area{
	position:relative;
	padding:0px 0px 75px 0px;
}

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

.top_page_freshers_nav_area{
	padding:0px 0px 65px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_freshers_nav_area{
	padding:0px 0px 55px 0px;
}

}

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

.top_page_freshers_nav_area{
	padding:0px 0px 45px 0px;
}

}

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

.top_page_freshers_nav_area{
	padding:0px 0px 35px 0px;
}

}


/*-- SUB TITLE SPACE --*/

.top_page_sub_title_area.freshers_bottom_space{
	padding:0px 0px 60px 0px;
}

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

.top_page_sub_title_area.freshers_bottom_space{
	padding:0px 0px 55px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_sub_title_area.freshers_bottom_space{
	padding:0px 0px 50px 0px;
}

}

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

.top_page_sub_title_area.freshers_bottom_space{
	padding:0px 0px 45px 0px;
}

}

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

.top_page_sub_title_area.freshers_bottom_space{
	padding:0px 0px 40px 0px;
}

}

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

.top_page_sub_title_area.freshers_bottom_space{
	padding:0px 0px 35px 0px;
}

}


/*-- SWIPER SET --*/

.top_page_diary_swiper_area{
	padding:0px 0px 0px 0px;
	overflow:visible;
}

.top_page_diary_swiper_inner{
	position:relative;
	margin:0px auto 0px auto;
	max-width:1280px;
}

.top_page_diary_swiper_area .swiper{
	overflow:visible;
	padding:0px 0px 65px 0px;
}

.top_page_diary_swiper_area .top_page_diary_swiper_list{
	position:relative;
	width:max-content;
	width:-webkit-max-content;
	width:-moz-max-content;
}

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

.top_page_diary_swiper_area .swiper{
	padding:0px 0px 60px 0px;
}

}

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

.top_page_diary_swiper_area .swiper{
	padding:0px 0px 55px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_diary_swiper_area .swiper{
	padding:0px 0px 50px 0px;
}

}

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

.top_page_diary_swiper_area .swiper{
	padding:0px 0px 45px 0px;
}

}


/*-- SWIPER LIST --*/

.swiper .swiper-slide{
	height:auto;
}

.swiper .list_box{ 
	height:100%;
}

.top_page_diary_swiper_list .list_box{
	position:relative;
	margin:0px 30px 0px 10px;
	width:285px;
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:block;
	text-decoration:none;
	transition:0.25s ease-out;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.swiper-wrapper .top_page_diary_swiper_list:last-child .list_box{
	margin:0px 10px 0px 10px;
}

.top_page_diary_swiper_list .list_box .img_box{
	position:relative;
	overflow:hidden;
	border-bottom:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
}

.top_page_diary_swiper_list .list_box .img_box::before{
	position:absolute;
	bottom:0px;
	left:0px;
	right:0px;
	margin:auto;
	width:100%;
	height:1px;
	background-color:rgba(25,25,25,1.0);
	content:'';
}

.top_page_diary_swiper_list .list_box .img_box .img{
	position:relative;
	width:100%;
	height:100%;
	aspect-ratio:3/3.95;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100% 100%;
	transition:0.25s ease-out;
}

.top_page_diary_swiper_list .list_box:hover .img_box .img{
	background-size:102.5% 102.5%;
}

.top_page_diary_swiper_list .list_box .text_box{
	position:relative;
	padding:35px 25px 20px 25px;
}

.top_page_diary_swiper_list .list_box .text_box .title{
	position:relative;
	font-size:125%;
	line-height:150%;
	letter-spacing:-0.01em;
	color:rgba(25,25,25,1.0);
	font-weight:500;
	text-align:left;
}

.top_page_diary_swiper_list .list_box .text_box .text{
	position:relative;
	padding:5px 0px 0px 0px;
	font-size:93.75%;
	line-height:150%;
	letter-spacing:0.01em;
	color:rgba(25,25,25,1.0);
	font-weight:500;
	text-align:left;
}

.top_page_diary_swiper_list .list_box .text_box .name{
	position:absolute;
	top:-18px;
	left:-10px;
	padding:6px 25px 5px 25px;
	background-color:rgba(150,180,15,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	font-size:125%;
	line-height:125%;
	letter-spacing:-0.05em;
	font-family:"Yu Mincho", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pr6 W6", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	color:rgba(0,0,0,1.0);
	font-weight:normal;
	z-index:1;
}

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

.top_page_diary_swiper_list .list_box{
	margin:0px 25px 0px 10px;
	width:270px;
}

}

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

.top_page_diary_swiper_list .list_box{
	margin:0px 20px 0px 10px;
	width:255px;
}

.top_page_diary_swiper_list .list_box .text_box{
	padding:33px 22px 18px 22px;
}

.top_page_diary_swiper_list .list_box .text_box .title{
	font-size:118.75%;
}

.top_page_diary_swiper_list .list_box .text_box .text{
	font-size:87.5%;
}

.top_page_diary_swiper_list .list_box .text_box .name{
	padding:6px 23px 5px 23px;
	font-size:118.25%;
}

}

@media all and (max-width:960px), print{

.top_page_diary_swiper_list .list_box{
	margin:0px 17px 0px 8px;
	width:240px;
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
	transition:0s ease-out;
}

.swiper-wrapper .top_page_diary_swiper_list:last-child .list_box{
	margin:0px 8px 0px 0px;
}

.top_page_diary_swiper_list .list_box .img_box .img{
	transition:0s ease-out;
}

.top_page_diary_swiper_list .list_box:hover .img_box .img{
	background-size:100% 100%;
}

.top_page_diary_swiper_list .list_box .text_box{
	padding:31px 19px 16px 19px;
}

.top_page_diary_swiper_list .list_box .text_box .title{
	font-size:112.5%;
}

.top_page_diary_swiper_list .list_box .text_box .text{
	font-size:81.25%;
}

.top_page_diary_swiper_list .list_box .text_box .name{
	left:-8px;
	padding:5px 21px 4px 21px;
	font-size:112.5%;
}

}

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

.top_page_diary_swiper_list .list_box{
	margin:0px 14px 0px 6px;
	width:225px;
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

.swiper-wrapper .top_page_diary_swiper_list:last-child .list_box{
	margin:0px 6px 0px 0px;
}

.top_page_diary_swiper_list .list_box .text_box{
	padding:29px 16px 14px 16px;
}

.top_page_diary_swiper_list .list_box .text_box .title{
	font-size:106.25%;
}

.top_page_diary_swiper_list .list_box .text_box .text{
	font-size:75%;
}

.top_page_diary_swiper_list .list_box .text_box .name{
	left:-6px;
	padding:5px 19px 4px 19px;
	font-size:106.25%;
}

}


/*-- SWIPER SCROLL BAR --*/

.top_page_diary_swiper_area .swiper-scrollbar{
	background:var(--swiper-scrollbar-bg-color, rgba(0,0,0,0.25));
}

.top_page_diary_swiper_area .swiper-scrollbar-drag{
	background:var(--swiper-scrollbar-drag-bg-color, rgba(25,25,25,1.0));
}


/*=========================================*/
/* COMPANY */
/*=========================================*/


/*-- FRAME --*/

#top_page_company_area{
	position:relative;
	width:100%;
	background-color:rgba(175,200,75,1.0);
	border-top:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	overflow:hidden;
}

#top_page_company_area::before{
	position:absolute;
	top:0px;
	right:0px;
	width:100%;
	height:100px;
	background-image:url(../images/top_page/bg_text_company.svg);
	background-repeat:no-repeat;
	background-position:right top;
	background-size:auto 100px;
	content:'';
}

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

#top_page_company_area::before{
	height:90px;
	background-size:auto 90px;
}

}

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

#top_page_company_area::before{
	height:80px;
	background-size:auto 80px;
}

}

@media all and (max-width:960px), print{

#top_page_company_area::before{
	height:70px;
	background-size:auto 70px;
}

}

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

#top_page_company_area::before{
	height:60px;
	background-size:auto 60px;
}

}

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

#top_page_company_area::before{
	height:50px;
	background-size:auto 50px;
}

}

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

#top_page_company_area::before{
	height:40px;
	background-size:auto 40px;
}

}


/*-- SUB TITLE SPACE --*/

.top_page_sub_title_area.company_bottom_space{
	padding:0px 0px 45px 0px;
}

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

.top_page_sub_title_area.company_bottom_space{
	padding:0px 0px 40px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_sub_title_area.company_bottom_space{
	padding:0px 0px 35px 0px;
}

}

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

.top_page_sub_title_area.company_bottom_space{
	padding:0px 0px 30px 0px;
}

}

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

.top_page_sub_title_area.company_bottom_space{
	padding:0px 0px 25px 0px;
}

}

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

.top_page_sub_title_area.company_bottom_space{
	padding:0px 0px 20px 0px;
}

}


/*-- BANNER --*/

.top_page_company_bnr_area{
	position:relative;
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

.top_page_company_bnr_frame{
	position:relative;
	width:48.5%;
}

.top_page_company_bnr_img{
	position:relative;
	margin:0px 10px 10px 0px;
	width:calc(100% - 10px);
	aspect-ratio:16/9;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100% 100%;
	background-color:rgba(255,255,255,1.0);
	border:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	display:block;
	transition:0.25s ease-out;
	/* shadow */
	box-shadow:10px 10px rgba(25,25,25,0.15);
}

.top_page_company_bnr_img:hover{
	background-size:102.5% 102.5%;
}

.top_page_company_bnr_catch{
	position:relative;
	padding:12px 15px 5px 5px;
	font-size:125%;
	line-height:175%;
	letter-spacing:0.01em;
	color:rgba(0,0,0,1.0);
	font-weight:400;
}

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

.top_page_company_bnr_frame{
	width:48.75%;
}

.top_page_company_bnr_catch{
	padding:10px 15px 5px 5px;
	font-size:118.75%;
	line-height:168.75%;
}

}

@media all and (max-width:960px), print{

.top_page_company_bnr_frame{
	width:49%;
}

.top_page_company_bnr_img{
	margin:0px 8px 8px 0px;
	width:calc(100% - 8px);
	transition:0s ease-out;
	/* shadow */
	box-shadow:8px 8px rgba(25,25,25,0.15);
}

.top_page_company_bnr_img:hover{
	background-size:100% 100%;
}

.top_page_company_bnr_catch{
	padding:10px 12px 4px 4px;
	font-size:112.5%;
	line-height:168.75%;
}

}

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

.top_page_company_bnr_frame{
	margin:0px auto 30px auto;
	max-width:540px;
	width:100%;
}

.top_page_company_bnr_frame:last-child{
	margin:0px auto 0px auto;
}

}

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

.top_page_company_bnr_frame{
	margin:0px auto 25px auto;
}

.top_page_company_bnr_img{
	margin:0px 6px 6px 0px;
	width:calc(100% - 6px);
	/* shadow */
	box-shadow:6px 6px rgba(25,25,25,0.15);
}

.top_page_company_bnr_catch{
	padding:8px 9px 3px 3px;
	font-size:106.25%;
	line-height:162.5%;
}

}

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

.top_page_company_bnr_catch{
	font-size:100%;
}

}


/*=========================================*/
/* RECRUIT */
/*=========================================*/


/*-- FRAME --*/

#top_page_recruit_area{
	position:relative;
	width:100%;
	border-top:1px solid rgba(25,25,25,1.0);
	box-sizing:border-box;
	overflow:hidden;
}

#top_page_recruit_area::before{
	position:absolute;
	top:0px;
	right:0px;
	width:100%;
	height:100px;
	background-image:url(../images/top_page/bg_text_recruit.svg);
	background-repeat:no-repeat;
	background-position:right top;
	background-size:auto 100px;
	content:'';
}

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

#top_page_recruit_area::before{
	height:90px;
	background-size:auto 90px;
}

}

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

#top_page_recruit_area::before{
	height:80px;
	background-size:auto 80px;
}

}

@media all and (max-width:960px), print{

#top_page_recruit_area::before{
	height:70px;
	background-size:auto 70px;
}

}

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

#top_page_recruit_area::before{
	height:60px;
	background-size:auto 60px;
}

}

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

#top_page_recruit_area::before{
	height:50px;
	background-size:auto 50px;
}

}

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

#top_page_recruit_area::before{
	height:40px;
	background-size:auto 40px;
}

}


/*-- NAV FRAME --*/

.top_page_recruit_nav_area{
	position:relative;
	padding:0px 0px 45px 0px;
}

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

.top_page_recruit_nav_area{
	padding:0px 0px 40px 0px;
}

}

@media all and (max-width:960px), print{

.top_page_recruit_nav_area{
	padding:0px 0px 35px 0px;
}

}

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

.top_page_recruit_nav_area{
	padding:0px 0px 30px 0px;
}

}

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

.top_page_recruit_nav_area{
	padding:0px 0px 25px 0px;
}

}

