@charset "utf-8";

/*===cariier===cariier===cariier===
...................................

-------------------------- SP ONLY

...................................
===cariier===cariier===cariier===*/

@media screen and (max-width: 599px) {
	.pc_only,
	.pctb_only,
	.sp_none,
	.tb_only {
		display: none !important;
	}
	html {
		font-size: 2vw;
	}
	.inner {
		width: 90vw;
		margin-left: 5vw;
		margin-right: 5vw;
	}
	.mtll {
		margin-top: 15vw !important;
	}
	.mbll {
		margin-bottom: 15vw !important;
	}
	.ptll {
		padding-top: 15vw !important;
	}
	.pbll {
		padding-bottom: 15vw !important;
	}
	.mtl {
		margin-top: 13vw !important;
	}
	.mbl {
		margin-bottom: 13vw !important;
	}
	.ptl {
		padding-top: 13vw !important;
	}
	.pbl {
		padding-bottom: 13vw !important;
	}
	.mtml {
		margin-top: 10vw !important;
	}
	.mbml {
		margin-bottom: 10vw !important;
	}
	.ptml {
		padding-top: 10vw !important;
	}
	.pbml {
		padding-bottom: 10vw !important;
	}
	.mtm {
		margin-top: 8vw !important;
	}
	.mbm {
		margin-bottom: 8vw !important;
	}
	.ptm {
		padding-top: 8vw !important;
	}
	.pbm {
		padding-bottom: 8vw !important;
	}
	.mtms {
		margin-top: 5vw !important;
	}
	.mbms {
		margin-bottom: 5vw !important;
	}
	.ptms {
		padding-top: 5vw !important;
	}
	.pbms {
		padding-bottom: 5vw !important;
	}
	.mts {
		margin-top: 3vw !important;
	}
	.mbs {
		margin-bottom: 3vw !important;
	}
	.pts {
		padding-top: 3vw !important;
	}
	.pbs {
		padding-bottom: 3vw !important;
	}
	.mtss {
		margin-top: 1vw !important;
	}
	.mbss {
		margin-bottom: 1vw !important;
	}
	.ptss {
		padding-top: 1vw !important;
	}
	.pbss {
		padding-bottom: 1vw !important;
	}

	
	.m_under_ttl .m_under_ttl_mini {
		letter-spacing: 0;
	}

	.l_header_logo {
		margin: 0 auto;
	}
}

@media screen and (max-width: 599px) and (max-height: 375px) {
	.l_mv_item .js_oft {
		height: 150vw;
	}
}

/*===cariier===cariier===cariier===
...................................

-------------------------- PC ONLY

...................................
===cariier===cariier===cariier===*/

@media screen and (min-width: 1240px), print {
	.pc_none,
	.pctb_none,
	.sp_only,
	.tb_only {
		display: none !important;
	}
	.inner {
		max-width: 1280px;
		padding: 0 40px;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
	}
	a:hover {
		text-decoration: none;
		opacity: 0.7;
		transition: 0.5s ease;
		-webkit-transition: 0.5s ease;
	}

}

@media screen and (min-width: 600px) and (max-width: 1329px) {
	.l_about_bg02 {
		background-position-x: -80px;
	}
}

/*===cariier===cariier===cariier===
...................................

-------------------------- TB ONLY

...................................
===cariier===cariier===cariier===*/

@media screen and (min-width: 600px) and (max-width: 1239px) {
	.pc_only,
	.pctb_none,
	.sp_only,
	.tb_none {
		display: none !important;
	}
	.inner {
		padding: 0 30px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.m_news {
		width: calc(100% + 30px);
		margin: 0 -30px -30px 0;
	}

	.m_news_item {
		width: calc(33.333333% - 30px);
		margin: 0 30px 30px 0;
	}

	.l_footer_rsc {
		width: 160px;
		margin: 0 30px 0 0;
	}

	.l_footer_sns_item {
		width: 30px;
		margin: 0 20px 0 0;
	}

	.l_footer_list a {
		font-size: 1.4rem;
	}

	#underpage .l_header,
	.l_header {
		padding: 20px 30px;
	}

	.l_header_list a {
		font-size: 3rem;
	}

	.l_header_logo {
		width: 250px;
	}

	.l_loading p,
	.l_mv_logo {
		width: 330px;
	}

	.l_about_bg02 {
		background-position-x: -100px;
	}
}

@media screen and (min-width: 600px) and (max-width: 1039px) {
	.inner {
		padding: 0 20px;
	}
	.m_ttl {
		margin-bottom: 25px;
		font-size: 6rem;
	}

	.l_mv:before,
	.l_section_inner:before,
	.l_section_inner:after {
		height: 50px;
	}

	.l_section_inner {
		padding: 65px 0 100px;
	}

	.m_ttl_lv02 {
		margin-bottom: 40px;
		font-size: 3.2rem;
	}

	.m_profile_name em {
		font-size: 2.4rem;
		margin-top: 13px;
	}

	.m_profile_head {
		margin-bottom: 24px;
	}

	.m_profile_table th,
	.m_profile_table td {
		font-size: 1.2rem;
	}

	.m_profile_table th {
		width: 8.3em;
	}

	.l_section_lv02 + .l_section_lv02 {
		margin-top: 35px;
	}

	.l_about_movie {
		margin: 50px auto 0;
	}

	.l_team_ttl {
		margin-bottom: 185px;
	}

	.m_team_head span {
		font-size: 4.6rem;
	}

	.m_team_head em {
		font-size: 3rem;
	}

	.m_team_catch {
		font-size: 2.1rem;
	}

	.l_support .l_section_inner {
		min-height: 710px;
	}
	.m_team_fants {
		width: 240px;
	}

	.m_btn {
		min-width: 250px;
		font-size: 3rem;
		padding: 4px 20px 3px;
	}
	#underpage input.btn.m_btn_ja,
	#underpage .m_btn_ja,
	.m_btn_ja {
		font-size: 2.3rem;
		padding: 5px 20px 7px;
	}

	.m_news {
		width: calc(100% + 15px);
		margin: 0 -15px -15px 0;
	}

	.m_news_item {
		width: calc(33.333333% - 15px);
		margin: 0 15px 15px 0;
	}

	.l_footer_block {
		flex-wrap: wrap;
		justify-content: center;
	}

	.l_footer_list {
		width: 100%;
		justify-content: center;
		margin-top: 30px;
	}

	small {
		text-align: center;
		margin-top: 30px;
	}

	#underpage .l_header,
	.l_header {
		padding: 15px 20px;
	}

	.l_header_list a {
		font-size: 2.1rem;
	}

	.l_header_list li {
		margin-left: 10px;
	}

	.l_header_logo {
		width: 200px;
	}

	.m_under_ttl {
		font-size: 9.4rem;
	}

	.m_under_head {
		margin-bottom: 60px;
	}

	.l_team {
		background-position: right -390px top;
	}

	.m_profile_head {
		display: block;
	}

	.m_profile_sns {
		margin-top: 15px;
		margin-left: 0;
	}
}

@media screen and (min-width: 600px) and (max-width: 900px) {
	.l_about_bg02 {
		background-position-x: -170px;
	}
}

@media screen and (min-width: 600px) and (max-width: 799px) {
	.l_about_bg02 {
		width: 100%;
		background-image: url(../images/about_bg_sp.jpg);
		background-position-x: 0;
	}

	.m_profile {
		width: 100%;
	}
}
