@media only screen and (max-width: 768px) {
	.home_page .key {
		--height: calc(100vh - 60px);
		--max-height: 156vw;
		--min-height: 320px;
		font-size: min(8px, 1.3vmin);
		background-image: url(../images/idx_key_bg_sp.jpg);
	}
	.home_page .key .key_text .item {
		text-align: center;
		padding-bottom: 23em;
	}
	.home_page .key .idx_key_list {
		display: flex;
		margin-left: auto;
		margin-right: auto;
		font-size: 0.8em;
	}
	.home_page .key h2,
	.home_page .key .jp {
		letter-spacing: 0;
		margin-left: 0;
		margin-right: 0;
	}
	.home_page .key h2 {
		margin-bottom: 10px;
	}
	.home_page .key .idx_key_list_inner {
		bottom: 40px;
	}
	.home_page .key .idx_key_banner {
		display: none !important;
		position: fixed;
		bottom: 20px;
		right: 20px;
	}
	.home_page .key .idx_key_banner.active {
		bottom: 65px;
		right: 65px;
	}
}
@media only screen and (max-width: 480px) {
	.home_page .key {
		font-size: 1.6vmin;
		background-image: url(../images/idx_key_bg_sp425.jpg);
	}
	.home_page .key h2 {
		font-size: 3.9em;
	}
	.home_page .key .key_text .item {
		text-align: center;
		padding-bottom: 28em;
	}
	.home_page .key .idx_key_list {
		display: flex;
		margin-left: auto;
		margin-right: auto;
		font-size: 1.05em;
	}
	.home_page .key .idx_key_list .key_item {
		width: calc(33.3333333333% - 5px);
	}
	.home_page .key .inner {
		padding: 0;
	}
	.home_page .key .jp {
		font-size: 2.7em;
	}
	.home_page .key .idx_key_list_inner {
		bottom: 20px;
	}
	.home_page .key .idx_key_list_inner .inner {
		padding: 0 10px;
	}
}
@media only screen and (max-width: 768px) {
	.home_page .h_en {
		font-size: 20px;
	}
	.home_page h3 {
		font-size: min(7vw, var(--ttl_size));
		letter-spacing: 0;
	}
	.home_page .inner,
	.home_page .inner_big,
	.home_page .inner_max {
		max-width: 610px;
	}
}
@media only screen and (max-width: 768px) {
	.idx1 {
		padding: 40px 0;
	}
	.idx1 .idx1_tab {
		padding: 40px 0;
	}
	.idx1 .inner_big {
		width: 100%;
	}
	.idx1 .TabContainer .TabPager > div::after,
	.idx1 .TabContainer .TabPager > div::before {
		width: 20px;
	}
	.idx1 .TabContainer .TabPager > div p {
		font-size: 22px;
		letter-spacing: 0;
	}
	.idx1 .TabContainer .TabPager > div p .en {
		font-size: 14px;
	}
	.idx1 .idx1_btn {
		margin: 25px auto 0;
	}
	.idx1 .idx1_btn a {
		letter-spacing: 0;
		font-size: 16px;
	}
	.idx1 ul li a {
		padding: 1.2em 0;
		--date: 100px;
		--cat: 100px;
	}
	.idx1 ul li a::after {
		right: 10px;
	}
	.idx1 ul li a .date {
		padding: 0;
	}
	.idx1 ul li a .title {
		padding-left: 1em;
		padding-right: 2em;
	}
}
@media only screen and (max-width: 480px) {
	.idx1 .TabContainer .TabPager > div p {
		font-size: min(5.5vw, 22px);
		display: block;
		padding: 1em 0;
	}
	.idx1 .TabContainer .TabPager > div p .en {
		margin-top: 5px;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.idx1 .TabContainer .TabPager > div p .en::before {
		position: static;
		margin: 3px auto;
	}
	.idx1 .TabContainer .TabPager > div::before,
	.idx1 .TabContainer .TabPager > div::after {
		right: 10px;
		width: 10px;
	}
	.idx1 ul li a {
		--date: 100px;
		--cat: 100px;
	}
	.idx1 ul li a .title {
		width: 100%;
		padding-left: 10px;
		padding-top: 10px;
	}
}
@media only screen and (max-width: 768px) {
	.idx2 {
		padding: 40px 0;
	}
	.idx2 .wrap_h3::after {
		font-size: 0.7vw;
	}
	.idx2 .idx2_bg,
	.idx2 .idx2_box {
		padding: 40px 0;
	}
	.idx2 .idx2_box {
		margin-top: -20px;
	}
	.idx2 .idx2_list {
		display: flex;
		gap: 10px;
		justify-content: space-between;
	}
	.idx2 .idx2_list .item {
		width: calc(50% - 5px);
		align-items: center;
		justify-content: center;
		flex-direction: column;
		padding: 20px 10px;
	}
	.idx2 .idx2_list .item .img {
		max-width: 60px;
		margin-bottom: 5px;
	}
	.idx2 .idx2_list .item .ttl {
		font-size: 18px;
		letter-spacing: 0;
		margin-left: 0;
		text-align: center;
	}
	.idx2 .idx2_list .item::before,
	.idx2 .idx2_list .item::after {
		width: 20px;
		height: 20px;
	}
}
@media only screen and (max-width: 480px) {
	.idx2 .idx2_bg {
		background-image: url(../images/idx2_bg_sp.jpg);
	}
	.idx2 .wrap_h3::after {
		font-size: 0.7vw;
		margin-top: -5em;
	}
	.idx2 .idx2_box {
		margin-top: -12px;
	}
	.idx2 .idx2_list .item {
		padding: 15px 0;
	}
	.idx2 .idx2_list .item .img {
		max-width: 50px;
	}
	.idx2 .idx2_list .item .ttl {
		font-size: min(4.8vw, 16px);
	}
	.idx2 .idx2_list .item .ttl .jp {
		display: block;
	}
}
@media only screen and (max-width: 345px) {
	.idx2 .idx2_list .item .ttl {
		font-size: min(3.6vw, 16px);
	}
}
@media only screen and (max-width: 768px) {
	.idx3 {
		padding: 40px 0;
	}
	.idx3 .txt p {
		font-size: 16px;
		letter-spacing: 0;
	}
	.idx3 .sp_only {
		margin: 25px auto;
	}
	.idx3 .txt {
		margin: 25px 0 40px;
		max-width: 100%;
	}
	.idx3 .txt p {
		font-size: 16px;
		letter-spacing: 0;
	}
}
@media only screen and (max-width: 768px) {
	.idx4 {
		padding: 40px 0;
	}
	.idx4 .inner {
		max-width: 610px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.idx4 .txt {
		margin: 0 auto;
		max-width: 100%;
	}
	.idx4 .txt p {
		font-size: 16px;
	}
	.idx4 .idx4_txt {
		width: 100%;
		max-width: 100%;
		border-radius: 100px;
		padding: 40px;
		border-left: 3px solid var(--main-color);
	}
	.idx4 .idx4_txt::after {
		inset: 6px;
		border-radius: 100px;
	}
	.idx4 .idx4_img {
		max-width: 100%;
		width: 100%;
		margin: 25px auto;
	}
}
@media only screen and (max-width: 480px) {
	.idx4 .idx4_txt {
		border-radius: 80px;
		padding: 30px 20px;
	}
	.idx4 .idx4_txt::after {
		border-radius: 75px;
	}
	.idx4 .txt p {
		font-size: min(4.8vw, 16px);
		letter-spacing: 0;
	}
}
@media only screen and (max-width: 345px) {
	.idx4 .txt p {
		font-size: 14px;
	}
}
@media only screen and (max-width: 768px) {
	.idx5 .idx5_bg {
		padding: 0 0 40px;
	}
	.idx5 .inner {
		max-width: calc(100% - 40px);
		width: 100%;
	}
	.idx5 .idx5_tab {
		padding: 0;
	}
	.idx5 .TabContainer .TabContent {
		margin-top: 25px;
	}
	.idx5 .TabContainer .TabPager {
		width: 100%;
	}
	.idx5 .TabContainer .TabPager > div {
		width: calc(50% - 5px);
		margin-bottom: 10px;
	}
	.idx5 .TabContainer .TabPager > div p {
		letter-spacing: 0;
		font-size: 18px;
	}
	.idx5 .TabContainer .TabPager > div::after {
		font-size: 7px;
		bottom: -1.3em;
	}
	.idx5 .btn-group {
		margin-top: 40px;
	}
	.idx5 .idx5_box {
		display: block;
		padding: 40px;
	}
	.idx5 .idx5_box .idx5_img {
		margin-left: 0;
		margin: 25px auto;
	}
	.idx5 .idx5_box .ttl01,
	.idx5 .idx5_box .txt {
		margin-left: 0px;
	}
	.idx5 .idx5_box .ttl01 {
		font-size: 22px;
		letter-spacing: 0;
		margin-bottom: 15px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding: 0;
		text-align: center;
	}
	.idx5 .idx5_box .ttl01::before {
		position: static;
		margin-bottom: 5px;
	}
	.idx5 .idx5_box .ttl01 .en {
		margin-bottom: 5px;
		line-height: 1.4;
	}
	.idx5 .idx5_box .txt {
		width: 100%;
	}
	.idx5 .idx5_box .txt p {
		font-size: 15px;
		letter-spacing: 0;
	}
}
@media only screen and (max-width: 480px) {
	.idx5 .inner {
		max-width: 100%;
	}
	.idx5 .TabContainer .TabPager > div p {
		font-size: 16px;
	}
	.idx5 .idx5_box {
		padding: 20px;
	}
	.idx5 .idx5_box .ttl01 {
		font-size: 20px;
	}
	.idx5 .idx5_box .txt p {
		font-size: 16px;
	}
	.idx5 .idx5_box .btn-group {
		margin-top: 20px;
	}
}
@media only screen and (max-width: 345px) {
	.idx5 .TabContainer .TabPager > div p {
		font-size: 4vw;
	}
	.idx5 .idx5_box .ttl01 .en {
		font-size: 12px;
	}
	.idx5 .btn-group .btn a {
		font-size: 16px;
		padding-left: 0;
	}
}
@media only screen and (max-width: 768px) {
	.idx6 {
		padding: 40px 0;
	}
	.idx6 .idx6_bg {
		background-size: 100%;
		background-color: #fff;
		padding: 40px 20px;
	}
	.idx6 .idx6_txt {
		padding: 30px;
		margin: 40px auto 62px;
	}
	.idx6 .idx6_txt p {
		font-size: 16px;
		letter-spacing: 0;
	}
	.idx6 .idx6_txt::after {
		font-size: 8px;
	}
	.idx6 .idx6_list {
		display: flex;
	}
	.idx6 .idx6_list .item::after {
		font-size: 8px;
	}
	.idx6 .idx6_list .item .ttl {
		font-size: 20px;
		letter-spacing: 0;
	}
	.idx6 .idx6_list .item .img {
		max-width: 80px;
	}
	.idx6 .btn-group {
		margin-top: 40px;
	}
}
@media only screen and (max-width: 480px) {
	.idx6 .idx6_bg {
		padding: 20px 0;
	}
	.idx6 .idx6_txt {
		padding: 20px;
	}
	.idx6 .idx6_list {
		display: flex;
	}
	.idx6 .idx6_list .item {
		width: 50%;
	}
	.idx6 .idx6_list .item::after {
		font-size: 6px;
	}
	.idx6 .idx6_list .item .ttl {
		font-size: 18px;
		letter-spacing: 0;
	}
	.idx6 .idx6_list .item .img {
		max-width: 60px;
	}
	.idx6 .idx6_list .item1 {
		border-radius: 10px 0 0 0;
	}
	.idx6 .idx6_list .item2 {
		border-radius: 0 10px 0 0;
	}
	.idx6 .idx6_list .item2::after {
		display: none !important;
	}
	.idx6 .idx6_list .item3 {
		border-radius: 0 0 0 10px;
	}
	.idx6 .idx6_list .item4 {
		border-radius: 0 0 10px 0;
	}
	.idx6 .btn-group {
		margin-top: 20px;
	}
}
@media only screen and (max-width: 768px) {
	.idx7 {
		padding: 0 0 40px;
	}
	.idx7 .inner {
		max-width: 610px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.idx7 .txt {
		margin: 0 auto;
		max-width: 100%;
	}
	.idx7 .txt p {
		font-size: 16px;
		letter-spacing: 0;
	}
	.idx7 .idx4_txt {
		width: 100%;
		max-width: 100%;
		border-radius: 100px;
		padding: 40px;
		border-left: 3px solid #009b77;
		border-right: 3px solid #009b77;
	}
	.idx7 .idx4_txt::after {
		inset: 6px;
		border-radius: 100px;
	}
	.idx7 .idx4_img {
		max-width: 100%;
		width: 100%;
		margin: 25px auto;
		display: flex;
	}
	.idx7 .idx4_img .img2 {
		margin-top: 40px;
	}
	.idx7 .idx4_img .img1 {
		width: calc(53% - 5px);
	}
	.idx7 .idx4_img .img2 {
		width: calc(45% - 5px);
	}
	.idx7 .btn-group {
		margin-top: 30px;
	}
}
@media only screen and (max-width: 480px) {
	.idx7 .idx4_txt {
		border-radius: 80px;
		padding: 30px 20px;
	}
	.idx7 .idx4_txt::after {
		border-radius: 75px;
	}
	.idx7 .txt p {
		font-size: min(4.8vw, 16px);
	}
	.idx7 .idx4_img .img2 {
		margin-top: 20px;
	}
	.idx7 .btn-group .btn {
		max-width: 220px;
	}
}
@media only screen and (max-width: 345px) {
	.idx7 .txt p {
		font-size: 14px;
	}
}
@media only screen and (max-width: 768px) {
	.idx8 {
		padding: 0 0 40px;
	}
	.idx8 .inner {
		max-width: 100%;
		width: 100%;
	}
	.idx8 .item {
		width: 100%;
		max-width: 100%;
		padding-top: 39vw;
	}
	.idx8 .item::after {
		height: 46vw;
	}
	.idx8 .item:not(:last-child) {
		margin-bottom: 40px;
	}
	.idx8 .idx8_txt {
		padding: 40px;
	}
	.idx8 h3 {
		font-size: 22px;
		letter-spacing: 0;
		text-align: center;
	}
	.idx8 .h_en {
		text-align: center;
		letter-spacing: 0;
		font-size: 14px;
	}
	.idx8 .txt {
		padding-top: 10px;
	}
	.idx8 .txt p {
		letter-spacing: 0;
		font-size: 16px;
	}
	.idx8 .en {
		font-size: 6vw;
		letter-spacing: 0;
	}
}
@media only screen and (max-width: 480px) {
	.idx8 .idx8_txt {
		padding: 20px 20px 40px;
	}
	.idx8 .idx8_txt::after {
		bottom: 10px;
		right: 10px;
	}
	.idx8 h3 {
		font-size: min(6vw, 22px);
	}
	.idx8 .h_en {
		line-height: 1.3;
	}
	.idx8 .en {
		font-size: 12vw;
		bottom: -0.1em;
		letter-spacing: 0;
	}
}
@media only screen and (max-width: 768px) {
	.idx9 {
		padding: 40px 0;
	}
	.idx9 .img {
		margin: 40px auto 80px;
	}
	.idx9 .img::after {
		bottom: -40px;
	}
	.idx9 .idx9_inner {
		display: block;
	}
	.idx9 .wrap_h3 {
		padding-top: 0;
		text-align: center;
	}
	.idx9 .txt {
		width: 100%;
		margin-top: 25px;
		font-size: 16px;
	}
	.idx9 .txt p {
		letter-spacing: 0;
	}
	.idx9 .idx9_tab {
		padding: 90px 0 40px;
	}
	.idx9 .idx9_tab .inner {
		display: block;
	}
	.idx9 .idx9_tab .ttl01 {
		font-size: min(7vw, 24px);
		letter-spacing: 0;
		text-align: center;
	}
	.idx9 .idx9_tab .ttl01::after {
		margin-left: auto;
		margin-right: auto;
	}
	.idx9 .idx9_tab .ttl01 {
		margin-bottom: 0;
	}
	.idx9 .idx9_tab .idx9_tab_img {
		margin: 30px auto;
	}
	.idx9 .idx9_tab .idx9_tab_img img {
		width: 100%;
	}
	.idx9 .idx9_tab .idx9_txt {
		font-size: 16px;
	}
	.idx9 .idx9_tab .idx9_txt p {
		letter-spacing: 0;
	}
	.idx9 .idx9_tab .btn-group {
		margin-top: 40px;
		justify-content: center;
	}
	.idx9 .TabContainer {
		margin-top: 40px;
	}
	.idx9 .TabContainer .TabPager {
		max-width: 90%;
		width: 100%;
	}
	.idx9 .TabContainer .TabPager > div {
		width: calc(50% - 5px);
	}
	.idx9 .TabContainer .TabPager > div p {
		letter-spacing: 0;
		font-size: 22px;
	}
	.idx9 .TabContainer .TabPager > div::after {
		font-size: 7px;
	}
	.idx9 .TabContainer .TabContent {
		margin-top: -42px;
	}
}
@media only screen and (max-width: 480px) {
	.idx9 .img {
		margin: 40px auto 40px;
	}
	.idx9 .img::after {
		bottom: -20px;
	}
	.idx9 .idx9_inner {
		display: block;
	}
	.idx9 .wrap_h3 {
		padding-top: 0;
		text-align: center;
	}
	.idx9 .txt {
		margin-top: 25px;
		font-size: 16px;
	}
	.idx9 .txt p {
		letter-spacing: 0;
	}
	.idx9 .idx9_tab {
		padding: 90px 0 40px;
	}
	.idx9 .idx9_tab .inner {
		display: block;
	}
	.idx9 .idx9_tab .ttl01 {
		font-size: min(6.7vw, 22px);
		letter-spacing: 0;
		text-align: center;
	}
	.idx9 .idx9_tab .ttl01::after {
		margin-left: auto;
		margin-right: auto;
	}
	.idx9 .idx9_tab .ttl01 {
		margin-bottom: 0;
	}
	.idx9 .idx9_tab .idx9_tab_img {
		margin: 30px auto;
	}
	.idx9 .idx9_tab .idx9_tab_img img {
		width: 100%;
	}
	.idx9 .idx9_tab .idx9_txt {
		font-size: 16px;
	}
	.idx9 .idx9_tab .idx9_txt p {
		letter-spacing: 0;
	}
	.idx9 .idx9_tab .btn-group {
		margin-top: 30px;
		justify-content: center;
	}
	.idx9 .TabContainer {
		margin-top: 25px;
	}
	.idx9 .TabContainer .TabPager {
		max-width: 90%;
		width: 100%;
	}
	.idx9 .TabContainer .TabPager > div {
		width: calc(50% - 5px);
		border-radius: 35px;
	}
	.idx9 .TabContainer .TabPager > div p {
		letter-spacing: 0;
		font-size: min(4.8vw, 18px);
	}
	.idx9 .TabContainer .TabPager > div::after {
		font-size: 7px;
	}
	.idx9 .TabContainer .TabContent {
		margin-top: -42px;
	}
}
@media only screen and (max-width: 768px) {
	.idx10 {
		padding: 0 0 40px;
	}
	.idx10 .inner {
		max-width: 100%;
		width: 100%;
	}
	.idx10 .idx10_slider {
		padding-top: 0;
	}
	.idx10 .idx10_slider .item {
		width: 60vw;
	}
	.idx10 .idx10_slider .idx10_item {
		padding: 40px 20px;
	}
	.idx10 .idx10_slider .idx10_item .txt {
		padding: 20px 0 0;
		position: relative;
	}
	.idx10 .idx10_slider .idx10_item .ttl_en {
		position: static;
		height: auto;
		border-radius: 10px;
		align-items: center;
		justify-content: center;
		padding: 0;
		width: 80px;
		aspect-ratio: 1/1;
		margin: 0 auto 10px;
		font-size: 50px;
		background: linear-gradient(0deg, rgb(128, 205, 187) 65%, rgb(0, 155, 119) 100%);
	}
	.idx10 .idx10_slider .idx10_item .ttl_en .en {
		font-size: 16px;
	}
	.idx10 .idx10_slider .idx10_item .ttl1 {
		font-size: 24px;
		text-align: center;
		letter-spacing: 0;
		margin-bottom: 10px;
	}
	.idx10 .idx10_slider .idx10_item .ttl1::after {
		margin: 10px auto 0;
	}
	.idx10 .idx10_slider .idx10_item .ttl2 {
		width: 100%;
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 0;
	}
	.idx10 .slick-arrow {
		font-size: 8px;
	}
	.idx10 .idx10_prev {
		left: 16vw;
	}
	.idx10 .idx10_next {
		right: 16vw;
	}
	.idx10 .slick-dots li button {
		width: 14px;
		height: 14px;
	}
}
@media only screen and (max-width: 480px) {
	.idx10 {
		background-image: url(../images/idx10_bg_sp.jpg);
	}
	.idx10 .idx10_slider .item {
		width: 75vw;
	}
	.idx10 .idx10_slider .idx10_item {
		padding: 20px;
	}
	.idx10 .idx10_slider .idx10_item .ttl_en {
		position: static;
		height: auto;
		border-radius: 10px;
		align-items: center;
		justify-content: center;
		padding: 0;
		width: 70px;
		aspect-ratio: 1/1;
		margin: 0 auto 10px;
		font-size: 40px;
		background: linear-gradient(0deg, rgb(128, 205, 187) 65%, rgb(0, 155, 119) 100%);
	}
	.idx10 .idx10_slider .idx10_item .ttl_en .en {
		font-size: 16px;
	}
	.idx10 .idx10_slider .idx10_item .ttl1 {
		font-size: min(5.9vw, 22px);
		text-align: center;
		letter-spacing: 0;
		margin-bottom: 10px;
	}
	.idx10 .idx10_slider .idx10_item .ttl1::after {
		margin: 10px auto 0;
	}
	.idx10 .idx10_slider .idx10_item .ttl2 {
		width: 100%;
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 0;
	}
	.idx10 .slick-arrow {
		font-size: 6px;
	}
	.idx10 .idx10_prev {
		left: 6vw;
	}
	.idx10 .idx10_next {
		right: 6vw;
	}
	.idx10 .slick-dots li button {
		width: 14px;
		height: 14px;
	}
}
@media only screen and (max-width: 768px) {
	.idx_banner {
		padding: 40px 0;
	}
}
@media only screen and (max-width: 768px) {
	.idx11 .idx11_bg {
		padding: 40px 0 0;
	}
	.idx11 .idx11_txt {
		animation-duration: 10s;
	}
	.idx11 .idx11_txt p {
		font-size: 12vw;
	}
	.idx11 .idx11_box {
		padding: 40px 0;
	}
	.idx11 .idx11_box .fblock {
		display: flex;
	}
	.idx11 .idx11_box .right {
		order: -1;
	}
	.idx11 .idx11_box .left {
		margin-top: 25px;
	}
	.idx11 .left,
	.idx11 .right {
		max-width: 100%;
		width: 100%;
	}
	.idx11 .map {
		height: 299px;
	}
	.idx11 .idx11_access {
		margin-top: 40px;
		padding: 40px;
	}
	.idx11 .idx11_access .ttl {
		font-size: 24px;
		justify-content: center;
	}
	.idx11 .idx11_access .ttl .en {
		font-size: 16px;
	}
}
@media only screen and (max-width: 480px) {
	.idx11 .idx11_txt p {
		font-size: 15vw;
	}
	.idx11 .idx11_access {
		margin-top: 40px;
		padding: 20px;
	}
	.idx11 .idx11_access .ttl {
		justify-content: center;
		letter-spacing: 0;
	}
	.idx11 .idx11_access .ttl .en {
		letter-spacing: 0;
		font-size: 16px;
	}
}
@media only screen and (max-width: 768px) {
	.idx12 {
		padding: 40px 0;
	}
	.idx12::after {
		font-size: 1vw;
		aspect-ratio: 120/80;
		max-width: calc(100% - 40px);
		background-position: top left;
	}
	.idx12 .inner_max {
		display: block;
	}
	.idx12 .inner_max::after {
		left: 0;
		font-size: 0.7vw;
	}
	.idx12 .idx12_img {
		margin: 40px auto;
	}
	.idx12 .wrap_h3 {
		display: block;
		text-align: center;
	}
	.idx12 .wrap_h3 h3 {
		font-size: 30px;
	}
	.idx12 .wrap_h3 .h_en {
		font-size: 20px;
	}
	.idx12 .txt {
		margin-top: 0;
		font-size: 16px;
	}
	.idx12 .idx12_jp {
		top: -20px;
		right: 20px;
		min-width: 11em;
	}
	.idx12 .idx12_jp .jp {
		font-size: 2em;
		letter-spacing: 0;
		padding-left: 0.7em;
		padding-right: 0.7em;
		display: flex;
		align-items: center;
		line-height: 1;
	}
	.idx12 .idx12_name {
		font-size: 8px;
		bottom: 20px;
		left: 20px;
	}
	.idx12 .idx12_name .jp1 {
		font-size: 16px;
	}
	.idx12 .idx12_name .en {
		letter-spacing: 0;
		font-size: 14px;
	}
	.idx12 .wrap_h3,
	.idx12 .txt {
		padding-left: 0;
		padding-right: 0;
	}
	.idx12 .btn-group {
		margin: 40px auto 0;
	}
}
@media only screen and (max-width: 480px) {
	.idx12 .idx12_jp {
		top: -20px;
		right: 20px;
		min-width: 11em;
		font-size: 2vw;
	}
	.idx12 .idx12_name {
		font-size: 1.9vw;
		bottom: 10px;
		left: 10px;
	}
}
@media only screen and (max-width: 390px) {
	.idx12 .btn a .br375 {
		display: block !important;
	}
}
@media only screen and (max-width: 345px) {
	.idx12 .idx12_name .en {
		font-size: 12px;
	}
}
@media only screen and (max-width: 768px) {
	.idx13 {
		padding: 20px 0 40px;
		background-position: top center;
		background-size: 100%;
	}
	.idx13 .h_en {
		font-size: 15vw;
		letter-spacing: 0;
	}
	.idx13 .idx_feature_wrap {
		display: block;
		padding-top: 0;
	}
	.idx13 h3 {
		justify-content: center;
		margin: 0 auto 30px;
		font-size: min(8.5vw, var(--ttl_size) + 3px);
	}
	.idx13 .idx_feature_left {
		padding: 0 20px;
	}
	.idx13 .idx_feature_img img {
		width: 100%;
	}
	.idx13 .idx_feature_img .num {
		top: -60px;
		font-size: 100px;
		left: 40px;
	}
	.idx13 .idx_feature_img .ttl1 {
		left: -20px;
		bottom: 20px;
		letter-spacing: 0;
	}
	.idx13 .idx_feature_img .ttl1 .jp {
		letter-spacing: 0;
		font-size: 24px;
	}
	.idx13 .txt {
		max-width: 100%;
		padding: 35px 0 40px;
		letter-spacing: 0;
		font-size: 16px;
	}
	.idx13 .btn-group {
		margin: 0 auto;
		width: 100%;
	}
	.idx13 .idx_feature_nav {
		position: relative;
		margin: 0 auto 50px;
		height: 50px;
		width: 200px;
		top: unset;
		right: unset;
	}
	.idx13 .idx_feature_nav .prev {
		left: 0;
		top: calc(50% - 1em);
		transform: rotate(-90deg);
	}
	.idx13 .idx_feature_nav .next {
		right: 0;
		top: calc(50% - 1em);
		left: unset;
		transform: rotate(-90deg);
	}
}
@media only screen and (max-width: 480px) {
	.idx13 .idx_feature_img img {
		width: 100%;
	}
	.idx13 .idx_feature_img .num {
		top: -40px;
		font-size: 80px;
		left: 20px;
	}
	.idx13 .idx_feature_img .ttl1 .jp {
		letter-spacing: 0;
		font-size: min(4.8vw, 18px);
	}
	.idx13 .idx_feature_img .ttl1 .pc_jp {
		background-color: transparent;
		border-radius: 0px;
		display: table;
		padding: 0;
	}
	.idx13 .idx_feature_img .ttl1 .sp_jp {
		background-color: #7db84b;
		border-radius: 4px;
		display: table;
		padding: 0.3333em 0.8333em 0.4em 0.7em;
	}
	.idx13 .idx_feature_img .ttl1 .sp_jp:not(:last-child) {
		margin-bottom: 0.2333em;
	}
	.idx13 .txt {
		max-width: 100%;
		padding: 35px 0 10px;
		letter-spacing: 0;
		font-size: 16px;
	}
	.idx13 .btn-group {
		margin: 0 auto;
		width: 100%;
	}
}

@media only screen and (max-width: 768px) {
	.idx14 .TabContainer .TabPager {
		flex-wrap: wrap;
	}
	.idx14 .TabContainer .TabPager > div {
		width: calc(50% - 5px);
		margin-bottom: 20px;
	}
	.idx14 .TabContainer .TabContent {
		margin-top: -70px;
	}

	.idx14 .TabContainer .TabPager > div p small {
		letter-spacing: 0;
		margin-top: 0.3em;
	}
}

@media only screen and (max-width: 480px) {
	.idx14 .TabContainer .TabPager > div p small {
		font-size: 0.7em;
	}
}

@media only screen and (max-width: 768px) {
	.idx15 {
		padding: 0;
	}
	.idx15 .idx9_tab {
		margin-top: 40px;
	}
	.idx15 .idx9_tab {
		padding: 40px 0 40px;
	}
	.idx15 .h_en {
		line-height: 1.4;
	}
}
