@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(110%, -20%);
	margin: 0;
}
#s_policy .policy_header div.image img{
	height: 205px;
}




#s_policy .policy_header div.logo {
	position: absolute;
	top: 80%;
	left: 50%;
	transform: translate(-50%, -80%);
	margin: 0;

    text-align: center; /* 子要素を中央揃え */
}
#s_policy .policy_header div.logo img{
    height: 110px;
    display: block; /* ブロック要素にして中央揃え */
    margin: 0 auto; /* 中央に配置 */
    position: relative; /* 下げるために relative を使用 */
    top: 45px; /* 下に移動 */
}

#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: 36px;
	color: black; /* 文字色を設定 */
    position: relative; /* 下げるために relative を使用 */
    top: 0px; /* 下に移動 */

    font-family: 'Arial Black', 'MS Gothic', sans-serif; /* ゴシックフォントを指定 */
    font-weight: bold; /* 太めに設定 */
}
#s_policy .policy_header div.logo .title p.jp{
	/*display: block;*/ /* pタグをブロック要素に設定 */
	margin: 0 0 0 0;
	/*height: 30px;*/
	font-size: 15px;
	color: black; /* 文字色を設定 */
    position: relative; /* 下げるために relative を使用 */
    top: -5px; /* 下に移動 */

    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 .image {
    /*position: absolute;*/
	/*top: 97%;*/
	/*right: 60%;*/
	/*transform: translate(-40%, 6%);*/
	/*margin: 0;*/

    /*z-index: 31;*/

    /*border-top-right-radius: 20px;*/
    /*border-top-left-radius: 20px;*/
    /*border-bottom-left-radius: 20px;*/
    /*border-bottom-right-radius: 20px;*/
    /*background: #F59C00;*/

}


#s_policy .policy_main1 .group {
	/*width: calc(70%);*/

	display: grid;
	/*grid-template-columns: 1fr;*/ /* 縦に並べる */

    background-color: white;

	/*border: 3px solid white;*/ /* 枠線の幅、スタイル、色を設定 *//*デバッグ用*/

    /*border-top-right-radius: 30px;*/
    border-top-left-radius: 100px;
    /*border-bottom-left-radius: 30px;*/
    /*border-bottom-right-radius: 30px;*/

    height: 500px;


    position: absolute;
    /*top: 84%;*/
    right: 0%;
    /*transform: translate(35%, 0%);*/
    margin: 0;
    width: 800px;

    z-index: 30;

}

#s_policy .policy_main1 .group img{
    /*display: flex;*/
    /*justify-content: center;*/
    /*align-items: center;*/

    /*position: relative;*/

    position: absolute;
	
    border-top-right-radius: 50px;
    /*border-top-left-radius: 50px;*/
    border-bottom-left-radius: 50px;
    /*border-bottom-right-radius: 50px;*/
    padding: 8px 6px 6px 8px;

    height: 380px;
    top: 15%;
    right: 75%;
    z-index: 21;

}

#s_policy .policy_main1 .group .msg {

    z-index: 22;

}

#s_policy .policy_main1 .group .msg p.No{
    display: block;
    /*margin: 0;*/
    height: 60px;
    font-size: 90px;
    color: black;
    line-height: 2;
    letter-spacing: 1.2px;
    /* width: calc(65%); */
    /*margin: -175px 0 0 75px;*/
    font-weight: bold;
    color: #E3D1BD;


    /* fontは調整が必要 */
    font-family: 'DM Sans', sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;


    margin: 0 0 0 140px;
    padding: 0 0 0 0;




}

#s_policy .policy_main1 .group .msg p.title {
    display: block;
    margin: 0;
    /*height: calc(60%);*/
    font-size: 20px;
    color: black;
    line-height: 1.6;
    /* width: calc(81%); */
    letter-spacing: 7px;
    margin: 80px 0 0 240px;
    padding: 0 0 0 0;
    height: 70px;
    width: 520px;
    font-weight: bold;

    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;

    background-color: white;


}
#s_policy .policy_main1 .group .msg p.honbun{
    display: block;
    margin: 0;
    /*height: calc(40%);*/
    font-size: 14px;
    color: black;
    line-height: 2;
    letter-spacing: 1.2px;
    width: 520px;
    /*margin: -175px 0 0 75px;*/
    font-weight: bold;

    /*margin: 0 0 0 0;*/
    margin: 0 0 0 240px;
    /*padding: 0 0 40px 240px;*/
    padding: 0 0 0 0;



}



/* #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 .image {
    /*position: absolute;*/
	/*top: 97%;*/
	/*right: 60%;*/
	/*transform: translate(-40%, 6%);*/
	/*margin: 0;*/

    /*z-index: 31;*/

    /*border-top-right-radius: 20px;*/
    /*border-top-left-radius: 20px;*/
    /*border-bottom-left-radius: 20px;*/
    /*border-bottom-right-radius: 20px;*/
    /*background: #F59C00;*/

}


#s_policy .policy_main2 .group {
	/*width: calc(70%);*/

	display: grid;
	/*grid-template-columns: 1fr;*/ /* 縦に並べる */

    background-color: white;

	/*border: 3px solid white;*/ /* 枠線の幅、スタイル、色を設定 *//*デバッグ用*/

    border-top-right-radius: 100px;
    /*border-top-left-radius: 100px;*/
    /*border-bottom-left-radius: 30px;*/
    /*border-bottom-right-radius: 30px;*/

    height: 500px;


    position: absolute;
    /*top: 84%;*/
    left: 0%;
    /*transform: translate(35%, 0%);*/
    margin: 0;
    width: 800px;

    z-index: 30;

}

#s_policy .policy_main2 .group img{
    /*display: flex;*/
    /*justify-content: center;*/
    /*align-items: center;*/

    /*position: relative;*/

    position: absolute;
	
    /*border-top-right-radius: 50px;*/
    border-top-left-radius: 50px;
    /*border-bottom-left-radius: 50px;*/
    border-bottom-right-radius: 50px;
    padding: 8px 6px 6px 8px;

    height: 380px;
    top: 15%;
    left: 75%;
    z-index: 21;

}

#s_policy .policy_main2 .group .msg {

    z-index: 22;

}

#s_policy .policy_main2 .group .msg p.No{
    display: block;
    /*margin: 0;*/
    height: 60px;
    font-size: 90px;
    color: black;
    line-height: 2;
    letter-spacing: 1.2px;
    /* width: calc(65%); */
    /*margin: -175px 0 0 75px;*/
    font-weight: bold;
    color: #E3D1BD;


    /* fontは調整が必要 */
    font-family: 'DM Sans', sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;


    margin: 0 0 0 500px;
    padding: 0 0 0 0;


}

#s_policy .policy_main2 .group .msg p.title {
    display: block;
    margin: 0;
    /*height: calc(60%);*/
    font-size: 20px;
    color: black;
    line-height: 1.6;
    /* width: calc(81%); */
    letter-spacing: 7px;
    margin: 80px 0 0 60px;
    padding: 0 0 0 0;
    height: 70px;
    width: 520px;
    font-weight: bold;

    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;

    background-color: white;


}
#s_policy .policy_main2 .group .msg p.honbun{
    display: block;
    margin: 0;
    /*height: calc(40%);*/
    font-size: 14px;
    color: black;
    line-height: 2;
    letter-spacing: 1.2px;
    /* width: calc(65%); */
    width: 520px;
    /*margin: -175px 0 0 75px;*/
    font-weight: bold;

    /*margin: 0 0 0 0;*/
    margin: 0 0 0 60px;
    /*padding: 0 0 40px 240px;*/
    padding: 0 0 0 0;



}
/* #endregion 政策2 */

