@charset "UTF-8";

/****************
	阿部さとしについてページ
		政策

****************/
/* #region 政策 */
#s_policy .policy {
	display: grid;
	grid-template-columns: 1fr; /* 縦に並べる */
}


#s_policy .policy_header { 
    /*position: absolute;*/
    width: 100%; 
    /*overflow: hidden;*/
    /*line-height: 0; */
    transform: rotate(0deg); 
	background-color: #E3D1BD;


	position: relative;
	/*height: 500px;*/ /* SVGの高さと同じにします */

	display: flex;
	justify-content: center;
	align-items: center;

	margin: 0 0 -1px 0;	/*白がでてしまうため調整*/
    padding: 0 0 0 0;
	
	/*border: 1px solid red;*/ /* 枠線の幅、スタイル、色を設定 *//*デバッグ用*/

} 

#s_policy .policy_header svg { 
	position: relative; 
    display: block; 
    width: calc(112% + 1px);
    /*height: 210px; */
    transform: rotateY(180deg); 


} 
#s_policy .policy_header .shape-fill { 
    fill: #000000; 
}

#s_policy .policy_header div.image {
    position: absolute;
    top: 84%;
    left: 17%;
    transform: translate(-50%, -100%);
    margin: 0;

}
@media screen and (max-width: 430px) {
	#s_policy .policy_header div.image img{
		height: 90px;
	}
}
@media screen and (min-width: 431px) {
	#s_policy .policy_header div.image img{
		height: 90px;
	}
}


@media screen and (max-width: 430px) {
	#s_policy .policy_header div.logo {
		position: absolute;
		top: 30%;
		left: 50%;
		transform: translate(-50%, 0%);
		margin: 0;

		text-align: center; /* 子要素を中央揃え */
	}
	#s_activs_policyityrecords .policy_header div.logo img{
		height: 70px;
		display: block; /* ブロック要素にして中央揃え */
		margin: 0 auto; /* 中央に配置 */
		position: relative; /* 下げるために relative を使用 */
		top: 30px; /* 下に移動 */
	}

	#s_policy .policy_header div.logo .title {
		position: relative; /* 画像の上に重ねるために relative を使用 */
		pointer-events: none;
		text-align: center;
		height: 50px;
		margin-top: 0px; /* 画像との間にスペースを追加 */

	}
	#s_policy .policy_header div.logo .title p.en{
		/*display: block;*/ /* pタグをブロック要素に設定 */
		margin: 0;
		/*height: 32px;*/
		font-size: 19px;
		color: black; /* 文字色を設定 */
		position: relative; /* 下げるために relative を使用 */
		top: 0px; /* 下に移動 */

		font-family: 'Arial Black', 'MS Gothic', sans-serif; /* ゴシックフォントを指定 */
		font-weight: bold; /* 太めに設定 */
		line-height: 1.1;
	}

	#s_policy .policy_header div.logo .title p.jp{
		/*display: block;*/ /* pタグをブロック要素に設定 */
		margin: 0 0 0 0;
		/*height: 30px;*/
		font-size: 10px;
		color: black; /* 文字色を設定 */
		position: relative; /* 下げるために relative を使用 */
		top: 0px; /* 下に移動 */

		font-weight: bold; /* 太めに設定 */
	}
}
@media screen and (min-width: 431px) {
	#s_policy .policy_header div.logo {
		position: absolute;
		top: 30%;
		left: 50%;
		transform: translate(-50%, 0%);
		margin: 0;

		text-align: center; /* 子要素を中央揃え */
	}
	#s_policy .policy_header div.logo img{
		height: 80px;
		display: block; /* ブロック要素にして中央揃え */
		margin: 0 auto; /* 中央に配置 */
		position: relative; /* 下げるために relative を使用 */
		top: 28px; /* 下に移動 */
	}

	#s_policy .policy_header div.logo .title {
		position: relative; /* 画像の上に重ねるために relative を使用 */
		pointer-events: none;
		text-align: center;
		height: 50px;
		margin-top: 0px; /* 画像との間にスペースを追加 */

	}
	#s_policy .policy_header div.logo .title p.en{
		/*display: block;*/ /* pタグをブロック要素に設定 */
		margin: 0;
		/*height: 32px;*/
		font-size: 22px;
		color: black; /* 文字色を設定 */
		position: relative; /* 下げるために relative を使用 */
		top: 0px; /* 下に移動 */

		font-family: 'Arial Black', 'MS Gothic', sans-serif; /* ゴシックフォントを指定 */
		font-weight: bold; /* 太めに設定 */
		line-height: 1.1;
	}
	#s_policy .policy_header div.logo .title p.jp{
		/*display: block;*/ /* pタグをブロック要素に設定 */
		margin: 0 0 0 0;
		/*height: 30px;*/
		font-size: 11px;
		color: black; /* 文字色を設定 */
		position: relative; /* 下げるために relative を使用 */
		top: 0px; /* 下に移動 */

		font-weight: bold; /* 太めに設定 */
	}

}


/* #endregion 政策 */


#s_policy .policy_spacer {
    background-color: #E3D1BD;
    height: 50px;

}

/******************************************
	aboutページ
	政策1
******************************************/
/* #region 政策1 */
#s_policy .policy_main1 { 
	display: flex;
	justify-content: center;
	align-items: center;

	height: 600px;

    width: 100%; 
    overflow: hidden; 
    transform: rotate(0deg); 

	position: relative;
    background-color: #E3D1BD;

	margin: 0 0 0 0; /*白がでてしまうため調整*/
    padding: 0 0 50px 0px;
}

#s_policy .policy_main1 .group {
	display: flex;
	flex-direction: column-reverse; /* 表示順を逆にする */
	align-items: center;
	justify-content: flex-start; /* 上部から配置開始 */

    background-color: white;

    border-top-left-radius: 100px;
    height: 500px;

    position: absolute;
    width: 100%; /* 幅を430pxに制限 */
    margin: 0 0 0 5%;
    z-index: 30;
}

#s_policy .policy_main1 .group img {
    max-width: 90%; /* 画像を縮小 */
    max-height: 200px; /* 画像の高さを制限 */
    margin-bottom: 20px; /* 下にスペースを追加 */
    border-radius: 10px; /* 角を丸める */
}

#s_policy .policy_main1 .group .msg {
    z-index: 22;
    width: 335px; /* メッセージ幅を調整 */
    text-align: center; /* テキストを中央揃え */
    margin-bottom: 20px; /* 下にスペースを追加 */
}

#s_policy .policy_main1 .group .msg p.No {
    display: block;
    height: 60px;
    font-size: 90px;
    color: #E3D1BD;
    line-height: 2;
    font-weight: bold;
    font-family: 'DM Sans', sans-serif;
    margin: 0 0 10px 0; /* マージン調整 */
}

#s_policy .policy_main1 .group .msg p.title {
    display: block;
    margin: 0 0 10px 0; /* マージン調整 */
    font-size: 20px;
    color: black;
    line-height: 1.6;
    letter-spacing: 7px;
    font-weight: bold;
    border-radius: 15px;
    background-color: white;
}

#s_policy .policy_main1 .group .msg p.honbun {
    display: block;
    margin: 0;
    font-size: 14px;
    color: black;
    line-height: 2;
    letter-spacing: 1.2px;
    font-weight: bold;
    text-align: left; /* 左揃え */
    margin-bottom: 20px; /* 下にスペースを追加 */
}

/* #endregion 政策1 */



/******************************************
	aboutページ
	政策2
******************************************/
/* #region 政策2 */
#s_policy .policy_main2 { 
	display: flex;
	justify-content: center;
	align-items: center;

	height: 600px;

    width: 100%; 
    overflow: hidden; 
    transform: rotate(0deg); 

	position: relative;
    background-color: #E3D1BD;

	margin: 0 0 0 0; /*白がでてしまうため調整*/
    padding: 0 0 50px 0px;
}

#s_policy .policy_main2 .group {
	display: flex;
	flex-direction: column-reverse; /* 表示順を逆にする */
	align-items: center;
	justify-content: flex-start; /* 上部から配置開始 */

    background-color: white;

    border-top-right-radius: 100px;
    height: 500px;

    position: absolute;
    margin: 0;
    width: 100%; /* 幅を430pxに制限 */
    margin: 0 5% 0 0;

    z-index: 30;
}

#s_policy .policy_main2 .group img {
    max-width: 90%; /* 画像を縮小 */
    max-height: 200px; /* 画像の高さを制限 */
    margin-bottom: 20px; /* 下にスペースを追加 */
    border-radius: 10px; /* 角を丸める */
}

#s_policy .policy_main2 .group .msg {
    z-index: 22;
    width: 335px; /* メッセージ幅を調整 */
    text-align: center; /* テキストを中央揃え */
    margin-bottom: 20px; /* 下にスペースを追加 */
}

#s_policy .policy_main2 .group .msg p.No {
    display: block;
    height: 60px;
    font-size: 90px;
    color: #E3D1BD;
    line-height: 2;
    font-weight: bold;
    font-family: 'DM Sans', sans-serif;
    margin: 0 0 10px 0; /* マージン調整 */
}

#s_policy .policy_main2 .group .msg p.title {
    display: block;
    margin: 0 0 10px 0; /* マージン調整 */
    font-size: 20px;
    color: black;
    line-height: 1.6;
    letter-spacing: 7px;
    font-weight: bold;
    border-radius: 15px;
    background-color: white;
}

#s_policy .policy_main2 .group .msg p.honbun {
    display: block;
    margin: 0;
    font-size: 14px;
    color: black;
    line-height: 2;
    letter-spacing: 1.2px;
    font-weight: bold;
    text-align: left; /* 左揃え */
    margin-bottom: 20px; /* 下にスペースを追加 */
}
/* #endregion 政策2 */

