@charset "UTF-8";
/* CSS Document */

.serviceMain>div{
display: flex;
justify-content: space-between;
}
.serviceMain>div+div{
margin-top: 150px;
}
.serviceMain .txt{
width: calc(100% - 570px);
}
.serviceMain .txt p{
margin-top: 2em;
}
.serviceMain .txt ul{
margin-top: 2em;
}
.serviceMain .txt ul li{
list-style-type: disc;
margin-left: 20px;
}
.serviceMain figure{
width: 500px;
}





@media screen and (max-width: 999px){
.serviceMain>div{
display: block;
}
.serviceMain>div+div{
margin-top: 80px;
}
.serviceMain .txt{
width: auto;
}
.serviceMain figure{
width: auto;
margin-top: 30px;
}
}/*999*/





.serviceFlow{
margin-top: 80px;
padding-top: 70px;
}
.serviceFlow ol{
margin-top: 40px;
}
.serviceFlow ol li{
counter-increment: flow;
background-color: #ffffff;
display: flex;
justify-content: space-between;
position: relative;
}
.serviceFlow ol li+li{
margin-top: 40px;
}
.serviceFlow ol li+li::before{
content: '';
display: block;
position: absolute;
left: 50%;
top: -40px;
width: 1px;
height: 40px;
background-color: #3fa8f2;
}
.serviceFlow ol li .txt{
display: flex;
flex-direction: column;
justify-content: center;
padding: 50px;
width: calc(100% - 400px);
}
.serviceFlow ol li .txt::before{
content: counter(flow, decimal-leading-zero);
display: block;
font-family: 'Oswald', sans-serif;
color: #3fa8f2;
font-size: 150%;
line-height: 100%;
font-weight: 400;
}
.serviceFlow ol li .txt p.title{
font-size: 150%;
font-weight: 700;
line-height: 1.5;
margin-top: 0.5em;
}
.serviceFlow ol li .txt p.excerpt{
margin-top: 1em;
}
.serviceFlow ol li figure{
/*display: flex;
flex-direction: column;
justify-content: center;*/
width: 400px;
padding: 20px;
}





@media screen and (max-width: 999px){
.serviceFlow{
margin-top: -20px;
}
.serviceFlow ol{
margin-top: 30px;
}
.serviceFlow ol li{
display: block;
}
.serviceFlow ol li+li{
margin-top: 30px;
}
.serviceFlow ol li+li::before{
top: -30px;
height: 30px;
}
.serviceFlow ol li .txt{
display: block;
padding: 20px;
width: auto;
}
.serviceFlow ol li .txt::before{
text-align: center;
}
.serviceFlow ol li figure{
display: block;
width: auto;
padding: 0 20px 20px 20px;
}
}/*999*/





.serviceHandling{
margin-top: 80px;
padding-top: 70px;
}
.serviceHandling ul li{
margin-top: 30px;
}
.serviceHandling ul li h3{
font-size: 112.5%;
font-weight: 700;
}
.serviceHandling ul li p{
font-size: 87.5%;
}
.serviceHandling ul li p+p{
margin-top: 2em;
}
.serviceHandling p.btn{
margin-top: 30px;
display: inline-block;
}
.serviceHandling p.btn a{
padding: 15px 40px;
}
.serviceHandling ul.logoList{
display: flex;
flex-wrap: wrap;
align-items: center;
margin-left: -50px;
margin-top: 10px;
}
.serviceHandling ul.logoList li{
margin: 0 0 40px 50px;
}





@media screen and (max-width: 999px){
.serviceHandling{
margin-top: -20px;
}
.serviceHandling p.btn{
margin: 20px auto 0;
display: block;
max-width: 300px;
}
.serviceHandling p.btn a{
padding: 15px 20px;
}
}/*999*/





#savingsSecurities.serviceHandling ul{
display: flex;
margin-left: -50px;
}
#savingsSecurities.serviceHandling ul li{
width: 50%;
padding-left: 50px;
margin-top: 40px;
}
#savingsSecurities.serviceHandling p.btn{
margin-top: 20px;
display: inline-block;
font-size: 100%;
}

@media screen and (max-width: 999px){
#savingsSecurities.serviceHandling ul{
display: block;
margin-left: 0;
}
#savingsSecurities.serviceHandling ul li{
width: auto;
padding-left: 0;
}
}/*999*/





.serviceBtn{
margin-top: 80px;
padding-top: 70px;
}
.serviceBtn p{
max-width: 600px;
margin: 0 auto;
}
.serviceBtn p a{
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
background-color: #1d2086;
color: #ffffff;
text-decoration: none;
height: 100px;
line-height: 1.4;
padding: 0 10px;
font-size: 150%;
font-weight: 400;
border-radius: 50em;
transition: background-color 100ms ease;
}
.serviceBtn p a:hover{
background-color: #6fd1e3;
}





@media screen and (max-width: 999px){
.serviceBtn{
margin-top: -20px;
}
}/*999*/





#lifeplanAbout{

}
#lifeplanAbout p.lead{
margin-top: 2em;
}
#lifeplanAbout ul{
display: flex;
flex-wrap: wrap;
margin-left: -50px;
}
#lifeplanAbout ul li{
width: 33.33%;
padding-left: 50px;
margin-top: 50px;
}
#lifeplanAbout ul li h3{
margin-top: 1em;
font-size: 125%;
line-height: 1.5;
}
#lifeplanAbout ul li p{
margin-top: 1em;
}
#lifeplanMain{
margin-top: 80px;
padding-top: 70px;
}
@media screen and (max-width: 999px){
#lifeplanAbout ul{
display: block;
margin-left: 0;
}
#lifeplanAbout ul li{
width: auto;
padding-left: 0;
margin-top: 50px;
}
#lifeplanMain{
margin-top: -20px;
}
}/*999*/





#savingsSecurities ul li figure{
margin-bottom: 10px;
}
#savingsSecurities ul li figure img{
margin-left: 0;
}





#houseBanner{
margin-top: 80px;
padding-top: 70px;
}
#houseBanner ul{
display: flex;
flex-wrap: wrap;
align-items: center;
margin-top: 20px;
margin-left: -20px;
}
#houseBanner ul li{
padding-left: 20px;
margin-top: 20px;
}
#houseBanner ul li a{
display: block;
transition: opacity 100ms ease;
}
#houseBanner ul li a:hover{
opacity: 0.5;
}





@media screen and (max-width: 999px){
#houseBanner{
margin-top: -20px;
}
#houseBanner ul{
margin-top: 10px;
}
}/*999*/