@charset "UTF-8";
a {
	color: #002061;
}
.S_lo04__txt04 {
    line-height: 2;
}
.S_lo04__box03 {
    margin-bottom: 10px;
}
.S_heading01_txt01 {
    font-size: 36px;
}

/*1029*/

body {
	font-size: 14px;
	line-height: 2.2;
}
.S_heading01 {
    font-weight: 100;
}
.S_mediaSet01__txt02 {
	font-weight: 100;
	font-size: 14px;
}
.S_mediaSet01__txt01 {
	font-size: 14px;
}
.S_SPparts01__item01 {
	height: 2px;
}
.S_lo05__txt01 {
	font-size: 15px;
}
.S_mediaSet01 {
	border-width: 1px solid #f3f3f3;
}
.S_lo05__wrap01:before {
	border-width: 1px solid #ececec;
}
.S_nav01__link01 {
	font-weight: 100;
}
.S_lo03 {
	margin-bottom: 120px;
}
.wp-block-embed-youtube .wp-block-embed__wrapper {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}
.wp-block-embed-youtube iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

h2 {
	font-size: 16px;
}
.S_lo03__txt02 {
    line-height: 1.8;
}

.S_MV_top { 
	justify-content: flex-end;
}
.S_MV_top__txt01 {
	margin-left: 0;
	margin-right: 50px;
}
.S_MV_top__txt03 {
    font-size: 18px;
    padding-left: 10px;
}


@media screen and (min-width: 751px){
.S_nav01__link01 {
    font-size: 18px;
}
}


@media screen and (max-width: 750px){
.S_mediaSet01__txt01 {
    margin-bottom: 0;
	line-height: 1.5;
}
	.S_mediaSet01__txt02 {
		    line-height: 1.8;
    margin-top: 5px;
	}
#top .S_MV_top__txt01 {
	bottom: 50px!important;
}

}


#SPONSOR .S_container01__right_ver04 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 40px;
  align-items: center;
  justify-items: center;   /* ← 各セルの中身を必ず中央寄せ */
  text-align: center;      /* テキストが混じっても中央寄せ */
}

#SPONSOR .S_container01__right_ver04 img {
  height: 120px;           /* 高さ揃え */
  width: auto;
  max-width: 100%;
  object-fit: contain;
  display: block;
  margin: 0 auto;          /* 念のための中央寄せ */
}

/* MV: 1280px上限・中央配置・比率可変（16:9） */
#top .S_MV_top,
#top .S_MV_top[style] {                 /* [style] でインライン上書きを確実に無効化 */
  width: min(100vw, 1280px);
  margin: 0 auto;
  background-position: center center !important;
  background-repeat: no-repeat;
  background-size: contain !important;
  height: auto !important;         /* 固定高さを無効化 */
  aspect-ratio: 16 / 9;            /* 1280x720の比率で可変 */
}
#top .S_MV_top {
	padding: 200px 0;
}
#top .S_MV_top__txt01 {
	color: #ccc;
}
#top .S_MV_top__txt01 {
  color: #ccc;
  position: absolute;
  left: 20px;
  bottom: 20px;
  margin: 0;
}
#top .S_MV_top {
  position: relative;   /* ← 追加（子要素のabsoluteの基準にする） */
  padding: 200px 0;
}

#top .S_MV_top__txt01 {
  color: #ccc;
  position: absolute;
  bottom: 20px;
  left: calc(20px - (100vw - min(100vw, 1280px)) / 2); 
  margin: 0;
}

#top .S_lo06 {
  position: absolute;   /* ← 追記 */
  bottom: 0;
  right: calc((100% - 100vw) / 2 + 8px);
}

.S_MV_top__txt01_ver01 {
	margin-left: 30px;
}

.S_footer01__item01 {
	background: #02a595;
	padding: 10px;
}
.S_footer01__item01 a {
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}


