:root {
--color1: rgba(68,198,221,1);
--color2: rgba(68,198,221,.5);
--color3: rgba(68,198,221,.3);
--color4: rgba(68,198,221,.25);
--color5: rgba(18,154,192,1);
}
element {
color: var(--color1);
}


body {
font-family: "Helvetica Neue",
Arial,
"Hiragino Kaku Gothic ProN",
"Hiragino Sans",
Meiryo,
sans-serif;
background-color: #fcfbf6;
}
a{
text-decoration: none;
}
img{
max-width: 100%;
height: auto;
}
@media (min-width: 769px) {
.row-0			{margin-left:0px;	margin-right:0px;}
.row-0>div		{padding-right:0px;	padding-left:0px;}
.row-60			{margin-left:-30px;	margin-right:-30px;}
.row-60>div		{padding-right:30px;padding-left:30px;}
}
.mb-5, .my-5 {margin-bottom:2rem}
.mb-6, .my-6 {margin-bottom:2.5rem}
.mb-7, .my-7 {margin-bottom:3rem}
.mb-8, .my-8 {margin-bottom:3.5rem}
.mb-9, .my-9 {margin-bottom:4rem}

.center-center {
display: grid;
place-content: center;
gap: 1ch;
}

.town_01{
max-width: 720px;
}
.section{
position: relative;
padding: 4rem 0;
}
.mv{
position: relative;
}
.keyvisual{
width: 100%;
height: auto;
}
.mv ul{
margin: 0;
padding: 15px 15px 15px 0;
position: absolute;
left: 0;
top: 50px;
list-style: none;
background-color: #fff;
border-radius: 0 10px 10px 0;
}
.mv ul li:not(:last-child) {
margin-bottom: 10px;
}

.section_news{
margin: 0;
padding: 0 0 4rem;
}
.section_news .inner{
padding: 1rem;
background-color: #fff;
border: 5px solid var(--color1);
border-radius: 10px;
}

.section_commit{
background-color: var(--color1);
}
.section_compass{
/*background-color: var(--color2);*/
}
.section_plan{
background-image: url(images/bg_plan.svg);
background-position: center bottom;
background-repeat: no-repeat;
background-size: 100% auto;
background-color: #f9f9f9;
}

.section_activities1{
background-color: var(--color1);
}
.section_activities2{
background-color: var(--color3);
}

ul.sns{
margin: 0;
padding: 0;
list-style: none;
display: flex;
justify-content: center;
}
ul.sns li{
margin: 0 1rem;
padding: 0;
}
.color-red{
color: #dc0000;
}
.link_akaiwa ul{
margin: 0 0 .75rem;
padding: 0;
list-style: none;
}
.link_akaiwa p{
margin: 0;
padding: 0;
font-weight: 600;
}

.link_sns-sp ul{
display: flex;
margin: 0;
padding: 0;
list-style: none;
justify-content: center;
gap: 30px;
}


.section_greeting p{
font-size: 1rem;
line-height: 1.75;
text-align: justify;
text-indent: 1em;
letter-spacing: .025em;
}

.br-sp{
display: none;
}
.campaign-pledge{
margin: 0 0 2rem;
padding: 1rem;
display:grid;
grid-template-rows:auto auto;
grid-template-columns:80px auto;
gap: 0 30px;
background-color: #fff;
border-radius: 10px;
box-shadow: 10px 10px 0px rgb(0 0 0 /.05);
}
.campaign-pledge img{
grid-column:1 / 2;
grid-row:1 / 3;
}
.campaign-pledge h3{
grid-column:2 / 3;
grid-row:1 / 2;
}
.campaign-pledge p{
grid-column:2 / 3;
grid-row:2 / 3;
}

.family_running{
margin: -200px 60px 0 auto;
}

.section_compass{
background-image: url(images/bg_compass.svg);
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}
.compass-row{
margin-bottom: 6rem;
}

.section_compass h3 {
margin: 0 0 1rem;
padding: 0 0 0 30px;
display: flex;
align-items: center;
}
.section_compass h3 span{
display: inline-block;
margin: 0 0 0 1rem;
padding: .25rem .375rem;
font-size: 1rem;
color: #dc0000;
background-color: #fff;
border-radius: 4px;
}
.section_compass ul{
margin: 0;
padding: 0;
list-style: none;
}
.section_compass ul li{
position: relative;
padding: .5rem 0 .5rem 30px;
letter-spacing: .025em;
text-align: justify;
}
.section_compass ul li:not(:last-child) {
border-bottom: 1px dotted #0074c1;
}
.section_compass ul li::before{
content: "";
position: absolute;
left: 2px;
top: 6px;
display: block;
width: 24px;
height: 24px;
background-image: url(images/check.svg);
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}
.compass{
position: relative;
z-index: 2;
}
.compass::before{
content: "";
position: absolute;
left: -40px;
top: -25px;
display: block;
width: 80px;
height: 80px;
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}
.compass-row .inner{
background-color: #fff;
border-radius: 10px;
}
.compass_01::before{background-image: url(images/c01.svg);}
.compass_02::before{background-image: url(images/c02.svg);}
.compass_03::before{background-image: url(images/c03.svg);}
.compass_04::before{background-image: url(images/c04.svg);}
.compass_05::before{background-image: url(images/c05.svg);}
.compass_06::before{background-image: url(images/c06.svg);}


.section_plan ul{
list-style: none;
}
.section_plan ul li{
position: relative;
margin: 0;
padding: .5rem;
font-size: 1.125rem;
font-weight: 500;
color: #000;
background-color: #fff;
border: 5px solid var(--color1);
border-radius: 8px;
}
.section_plan ul li:not(:last-child) {
margin-bottom: 1rem;
}
.section_plan ul li::before{
content: "";
position: absolute;
left: -12px;
top: 10px;
display: block;
width: 15px;
height: 16px;
background-image: url(images/arrow_red.svg);
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
}

.section_plan ul li::marker{
color: #dc0000;
}
.section_plan figure{
margin: 0 0 3.5rem;
padding: .75rem;
background-color: #fff;
border: 1px solid rgb(0 0 0 /.1);
}
.section_plan figure img{
margin: 0 0 .75rem;
}
.section_plan figcaption a{
display: block;
padding: .25rem;
text-align: center;
color: #fff;
background-color: #3c3c3c;
border-radius: 60px;
}
.airplane {
animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}
@keyframes floating-y {
0% { transform: translateY(-10%) scale(1);}
100% { transform: translateY(10%) scale(1.1);}
}

.section_activities{}
.section_activities figure{}
.section_activities figure img{
position: relative;
display: block;
margin: 0 auto 1.5rem;
border-radius: 10px;
box-shadow: 7px 7px 0px 0px #fff;
}
.section_activities1 h2{
margin: 0 0 1rem;
padding: 0;
font-size: 1.75rem;
font-weight: 600;
color: #fff;
}
.section_activities1 h3{
margin: 0 0 1rem;
padding: 0;
font-size: 1.375rem;
font-weight: 600;
color: #fff;
}
.section_activities1 ul{
}
.section_activities1 ul li{
padding: .75rem 0;
text-align: justify;
}
.section_activities1 ul li::marker{
color: #fff;
}
.section_activities1 ul li:not(:last-child) {
border-bottom: 1px dotted rgb(255 255 255 /.75);
}
.section_activities2{
}
.section_activities2 h2 span{
display: block;
margin: 0;
padding: 0;
font-size: 1.25rem;
}
summary {
display: block;
list-style: none;
}
summary::-webkit-details-marker {
display:none;
}
summary span{
display: inline-block;
margin: 0 0 2rem;
padding: 1rem 2rem;
font-size: 1.25rem;
background-color: #fff;
border: 5px solid var(--color1);
border-radius: 100px;
}

.section_profile{}
.section_profile dl{
display: flex;
flex-wrap: wrap;
width: 100%;
}
.section_profile dt,
.section_profile dd{
margin: 0;
}
.section_profile dt{
display: inline-block;
padding: .375rem .75rem;
font-size: .937rem;
font-weight: 600;
line-height: 1;
letter-spacing: .05em;
}
.section_profile dd{
padding: .375rem .75rem;
font-size: .937rem;
}
.dl_profile-1 dt{
padding: 0;
width: 8em;
}
.dl_profile-1 dt span{
display: block;
padding: .375rem .75rem;
text-align: center;
background-color: var(--color3);
border-radius: 60px;
}
.dl_profile-1 dd{
width: calc(100% - 8em);
}
.dl_profile-2 dt{
width: 11em;
}
.dl_profile-2 dd{
width: calc(100% - 11em);
}

.supporters-group .inner{
padding: 1rem;
background-color: #fff;
border-radius: 10px;
box-shadow: 7px 7px 0px rgb(0 0 0 / .05);
}
.supporters-group h3{
margin: 0 0 2rem;
font-size: 1.125rem;
font-weight: 600;
}
.supporters-group h3 span{
display: block;
margin: 0 0 .5rem;
font-size: 1rem;
}
.supporters-group p{
line-height: 2;
}

#footer{
padding-bottom: 18rem;
background-image: url(images/bg_footer.svg);
background-position: center bottom;
background-size: 100% auto;
background-repeat: no-repeat;
background-color: var(--color5);
}
#footer h3,
#footer a,
#footer p{
color: #fff;
}
#footer h3{
font-size: 1.375rem;
font-weight: 700;
}
#footer .phone{
font-family: 'Roboto Condensed', sans-serif;
font-size: 2.5rem;
text-shadow: 3px 3px 0px rgb(0 0 0 /.1);
}
#footer form{
padding: 1rem;
background-color: rgb(0 0 0 /.1);
border-radius: 10px;
}
#footer form table{
width: 100%;
border-collapse: collapse;
border-spacing: 0;
}
#footer form th,
#footer form td{
padding: .5rem;
}
#footer form th{
color: #fff;
width: 1%;
white-space: nowrap;
}
#footer form td textarea,
#footer form td input{
padding: .25rem;
width: 100%;
font-size: 16px;
}
#footer form input[type=submit]{
display: block;
padding: 1.125rem;
font-weight: 600;
width: 100%;
background-color: #cfd86c;
border-radius: 4px;
border: none;
transition: .3s;
}
#footer form input[type=submit]:hover{
background-color: #f7f6c8;
}
.link_akaiwa{
margin: 0;
padding: 0;
list-style: none;
}
.link_akaiwa a img{
margin: 0;
padding: .5rem 1.5rem;
background-color: #fff;
border-radius: 10px;
}

@media(max-width:768px){
.town_01 {
max-width: 80%;
}
.rounded-circle{
display: block;
margin: 0 auto;
max-width: 180px;
}
.family_running{
position: relative;
margin: 0 auto;
}
}

@media(max-width:600px){
.section{
padding: 2rem 0;
}
.br-sp{
display: block;
}
.campaign-pledge {
grid-template-columns: 48px auto;
gap: 0 10px;
}
.campaign-pledge h3{
font-size: 1.125rem;
font-weight: 600;
}
.rounded-circle {
max-width: 120px;
}
.compass::before {
position: relative;
left: auto;
right: auto;
margin: 0 auto;
top: -10px;
width: 60px;
height: 60px;
}
.section_compass h3{
display: block;
}
.section_compass h3 span{
display: block;
margin: .5rem 0 0;
}
.compass-row {
margin-bottom: 3.5rem;
}
.portrait{
max-width: 80px;
}
.dl_profile-1 dt,
.dl_profile-1 dd{
display: block;
width: 100%;
}
.dl_profile-1 dt span{
display: inline-block;
text-align: left;
}
.dl_profile-2 dt,
.dl_profile-2 dd{
border-bottom: 1px solid rgb(0 0 0 /.25);
}
.dl_profile-1 dd:not(:last-child) {
margin-bottom: .5rem;
}
.family_running{
max-width: 200px;
}
#footer form th,
#footer form td{
display: block;
}
#footer{
padding-bottom: 8rem;
}

}