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

#contents{
padding: 0;
font-family: serif;
}
/* 基本-モバイルファースト ======================================================================================================== */

#introduction{
text-align: center;
}
#introduction .alpha{
margin-bottom: 40px;
}
#introduction .alpha h3{
font-size: 6.5vw;
}
#introduction .alpha h3 + p{
margin-bottom: 20px;
}

#introduction .beta h4{
font-size: 5.5vw;
}
#introduction .beta ul{
display: flex;
flex-wrap: wrap;
}
#introduction .beta li{
width: 50%;
aspect-ratio: 1/1;
background-color: #c0d3de;
display: flex;
align-items: center;
justify-content: center;
font-size: 2.8vw;
}
#introduction .beta li:nth-child(3){
margin-left: auto;
}


#point{
background-color: #dae0e3;
padding: 60px 0;
}
#point h3{
text-align: center;
font-size: 5.5vw;
position: relative;
z-index: 10;
}
#point h3::after{
content: "POINT";
font-size: 20vw;
color: #c0d3de;
white-space: nowrap;
position: absolute;
top: -15vw;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
margin: 0 auto;
z-index: -1;
}
#point h3 span{
display: block;
}

#point .article{
margin-top: 20px;
}
#point .article .title{
display: grid;
grid-template-columns: 70px auto;
align-items: center;
}
#point .article .title .num { grid-area: 1 / 1 / 3 / 2; }
#point .article .title h4 { grid-area: 1 / 2 / 2 / 3; }
#point .article .title p { grid-area: 2 / 2 / 3 / 3; }
#point .article .title .num{
width: 60px;
height: 60px;
border-radius: 50%;
background-color: #fff;
color: #c0d3de;
line-height: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
#point .article .title .num span{
font-size: 12px;
}
#point .article .title .num em{
font-size: 30px;
}

#point .article .title h4{
font-size: 5vw;
}
#point .article .title p{
}
#point .article ul{
display: flex;
flex-wrap: wrap;
}
#point .article li{
width: 32%;
margin-right: 2%;
margin-top: 2%;
font-size: 10px;
}
#point .article li:nth-child(3n){
margin-right: 0;
}


#bubble_power h3{
text-align: center;
font-size: 5.5vw;
}
#bubble_power .btn{
margin-top: 20px;
}
#bubble_power .btn a{
display: block;
text-decoration: none;
color: #FFF;
background-color: #c20c22;
text-align: center;
padding: 20px 0;
position: relative;
}
#bubble_power .btn a::before{
content: "";
display: block;
width: 12px;
height: 1px;
background-color: #fff;
position: absolute;
top: 50%;
right: 15px;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
margin: auto 0;
}
#bubble_power .btn a::after{
content: "";
display: block;
width: 12px;
height: 12px;
border-top: solid 1px #fff;
border-right: solid 1px #fff;
position: absolute;
top: 50%;
right: 16px;
transform: translateY(-50%) rotate(45deg);
-webkit-transform: translateY(-50%) rotate(45deg);
margin: auto 0;
}


/* PCのみ======================================================================================================== */
@media print and (min-width: 671px), screen and (min-width: 671px){

#container{
width: 100%;
}
#topic_path{
width: 1000px;
margin: 20px auto;
}
#page_title{
width: 1000px;
margin: 0 auto 20px;
}
#contents {
padding: 40px 0 80px;
font-size: 16px;
}


#mv img{
width: 100%;
}

#introduction .alpha{
margin-bottom: 80px;
}
#introduction .alpha h3{
font-size: 40px;
}
#introduction .alpha h3 + p{
margin-bottom: 40px;
}
#introduction .beta h4{
font-size: 30px;
margin-bottom: 20px;
}
#introduction .beta ul{
justify-content: space-between;
}
#introduction .beta li{
width: 30%;
font-size: 16px;
}
#introduction .beta li:nth-child(3){
margin-left: 0;
}


#point{
padding: 150px 0;
}
#point h3{
font-size: 30px;
}
#point h3::after{
font-size: 100px;
top: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit-transform: translateY(-50%) translateX(-50%);
margin: auto;
}
#point h3 span{
display: inline-block;
margin-left: 1em;
}

#point .article{
margin-top: 60px;
}
#point .article .title{
display: flex;
margin-bottom: 20px;
}
#point .article .title .num{
width: 80px;
height: 80px;
}
#point .article .title .num em{
font-size: 40px;
}
#point .article .title h4{
font-size: 30px;
margin: 0 .5em;
}
#point .article .title p{
font-size: 20px;
}
#point .article ul{
justify-content: space-between;
}
#point .article li{
width: 180px;
margin-right: 0;
margin-top: 0;
font-size: 12px;
}
#point .article figure{
margin-bottom: 5px;
}


#bubble_power h3{
font-size: 30px;
}
#bubble_power .illust{
margin-bottom: 20px;
}
#bubble_power .btn{
margin-top: 40px;
}
#bubble_power .btn a{
width: 300px;
margin: 0 auto;
}




}