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

/** --------------------------------------------------
circle飾り　ブロックごとの指定
-------------------------------------------------- **/
#block01 .block01-circle,
#block02 .block02-circle,
#block02 .block02-circle2,
#block03 .block03-circle,
#block03 .block03-circle2{
position: absolute;
background-color: #fbddd0;
border-radius: 1000px;
z-index: -1;
opacity: 0.7;
}/*共通指定*/

#block01 .block01-circle{
width: 150px;
height: 150px;
top:-30px;
right: 50px;
}

#block02 .block02-circle{
width: 480px;
height: 480px;
top:-60px;
left: -200px;
}

#block02 .block02-circle2{
width: 230px;
height: 230px;
bottom:-40px;
right: 100px;
}

#block03 .block03-circle{
width: 450px;
height: 450px;
top:-200px;
right: -250px;
mix-blend-mode:multiply;
}

#block03 .block03-circle2{
width: 250px;
height: 250px;
bottom:-50px;
left: 20px;
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block01 .block01-circle{
width: 150px;
height: 150px;
top:-15px;
right: 30px;
}

#block02 .block02-circle{
width: 380px;
height: 380px;
top:-60px;
left: -200px;
}

#block02 .block02-circle2{
width: 180px;
height: 180px;
bottom:-40px;
right: -30px;
}

#block03 .block03-circle{
width: 230px;
height: 230px;
top:-60px;
right: -100px;
}

#block03 .block03-circle2{
width: 200px;
height: 200px;
bottom:-50px;
left: -20px;
}

 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block01 .block01-circle{
width: 100px;
height: 100px;
right: 20px;
}

#block02 .block02-circle{
width: 250px;
height: 250px;
left: -100px;
}

#block03 .block03-circle{
width: 280px;
height: 280px;
top:-80px;
right: -180px;
}

#block03 .block03-circle2{
bottom:-20px;
left: -20px;
}

 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block02 .block02-circle2{
width: 130px;
height: 130px;
bottom:-40px;
right: -30px;
}
 /* ---------------------------------- */
}

/** --------------------------------------------------
h1+triangle,これを覆うdiv（block01～03）
-------------------------------------------------- **/
#block01 article>div,
#block02 article>div,
#block03 article>div{
margin: 0 auto 5%;
}

#block01 article>div h1,
#block02 article>div h1,
#block03 article>div h1{
margin: 0 auto;
padding: 2%;
width: 60%;
color: #ffff00;
background: #ea5413;
letter-spacing: 0.05em;
font-size: 22px;
font-weight: 700;
}

#block01 article>div .triangle-box,
#block02 article>div .triangle-box,
#block03 article>div .triangle-box{
margin: 0 auto;
width: 100%;
position: relative;
}

#block01 article>div .triangle-box .triangle,
#block02 article>div .triangle-box .triangle,
#block03 article>div .triangle-box .triangle{
width: 0;
height: 100px;
border-style: solid;
border-width: 30px 30px 0 30px;
border-color: #ea5413 transparent transparent transparent;
position: absolute;
left: 50%;
transform: translateX(-50%);
top: 0;
}

/**メディアクエリ**/
/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block01 article>div,
#block02 article>div,
#block03 article>div{
margin: 0 auto 7%;
}
#block01 article>div h1,
#block02 article>div h1,
#block03 article>div h1{
font-size: 19px;
}
#block01 article>div .triangle-box .triangle,
#block02 article>div .triangle-box .triangle,
#block03 article>div .triangle-box .triangle{
border-width: 25px 25px 0 25px;
top: 0;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block01 article>div h1,
#block02 article>div h1,
#block03 article>div h1{
width: 80%;
font-size: 17px;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block01 article>div h1,
#block02 article>div h1,
#block03 article>div h1{
font-size: 17px;
}

#block01 article>div .triangle-box .triangle,
#block02 article>div .triangle-box .triangle,
#block03 article>div .triangle-box .triangle{
border-width: 20px 20px 0 20px;
top: 0;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block01 article>div h1,
#block02 article>div h1,
#block03 article>div h1{
font-size: 4vw;
}

#block01 article>div .triangle-box .triangle,
#block02 article>div .triangle-box .triangle,
#block03 article>div .triangle-box .triangle{
border-width: 15px 15px 0 15px;
top: 0;
}
 /* ---------------------------------- */
}

/** ----共通部分終了----*/



/** --------------------------------------------------
block01
-------------------------------------------------- **/
#block01{
position: relative;
margin: 10% auto;
width: 100%;
}

#block01 article{
margin: 0 auto;
width: 100%;
max-width: 1200px;
}

#block01 article p{
margin: 0 auto;
text-align: center;
font-size: 15px;
font-weight: 500;
line-height: 1.5;
}

/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block01 article p{font-size: 14px;}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block01 article p{font-size: 13px;}
 /* ---------------------------------- */
}


/** --------------------------------------------------
block02
-------------------------------------------------- **/
#block02{
position: relative;
margin: 10% auto;
width: 100%;
}

#block02 article{
margin: 0 auto;
width: 100%;
max-width: 1200px;
}

#block02 article p:nth-of-type(1){
margin: 0 auto;
text-align: center;
color: #ff0000;
font-size: 20px;
font-weight: 700;
line-height: 1.5;
}

#block02 article p:nth-of-type(2){
margin: 5% auto;
width: 60%;
}

#block02 article p:nth-of-type(3){
text-align: left;
margin: 5% auto;
width: 60%;
font-size: 13px;
line-height: 1.5;
border-left: solid 4px #ea5413;
padding: 0 0 0 2%;
}


/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block02 article p:nth-of-type(1){font-size: 18px;}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
 #block02 article p:nth-of-type(2){
margin: 10% auto;
width: 80%;
}
#block02 article p:nth-of-type(3){
width: 80%;
font-size: 12px;
padding: 0 0 0 4%;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block02{margin: 15% auto;}
#block02 article p:nth-of-type(1){font-size: 16px;}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block02 article p:nth-of-type(3){font-size: 10px;}
 /* ---------------------------------- */
}
/* ******************************************* */
@media screen and (max-width: 380px) {
 /* ---------------------------------- */ 
#block02 article p:nth-of-type(1){font-size: 14px;}
 /* ---------------------------------- */
}

/** --------------------------------------------------
block03
-------------------------------------------------- **/
#block03{
position: relative;
margin: 10% auto;
width: 100%;
}

#block03 article{
margin: 0 auto;
width: 100%;
max-width: 1200px;
}

#block03 article .illust-box{
margin: 0 auto;
width: 60%;

display: flex;
justify-content: space-between;
align-items: flex-start;
flex-flow: row nowrap;
}

#block03 article .illust-box dl{
margin: 5% auto;
width: 30%;
}

#block03 article .illust-box dt{
margin: 0 auto;
width: 80%;
padding: 0 0 10% 0;
}

#block03 article .illust-box dd{
font-size: 13px;
line-height: 1.2;
}

#block03 article .illust-box dd span{font-size: 10px;}

#block03 article>p{
margin: 5% auto;
width: 60%;
font-size: 20px;
font-weight: 700;
line-height: 1.5;
position: relative;
}

#block03 article>p::before{
content: "";
display:block;
width:100%;
height:2px;
background:#ea5413;
position:absolute;
top:-40px;
left:50%;
transform: translateX(-50%);
}

#block03 article .text-box{
margin: 0 auto;
width: 60%;

display: flex;
justify-content: space-between;
align-items: center;
flex-flow: row nowrap;
}

#block03 article .text-box p:nth-of-type(1){
text-align: left;
width: 75%;
font-size: 13px;
line-height: 1.5;
}

#block03 article .text-box p:nth-of-type(2){
width: 22%;
padding:0 3% 0 0;
}

/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block03 article .illust-box dl{
margin: 2% auto;
width: 33%;
}

#block03 article .illust-box dt{width: 75%;}
#block03 article .illust-box dd{font-size: 12px;}
#block03 article>p{
margin: 10% auto 5%;
font-size:18px;}

#block03 article>p::before{top:-40px;}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block03 article .illust-box{width: 80%;}
#block03 article .illust-box dt{width: 65%;}

#block03 article>p{
margin: 10% auto 7%;
width: 80%;
font-size: 18px;
}

#block03 article .text-box{width: 80%;}
#block03 article .text-box p:nth-of-type(1){width: 70%;}

#block03 article .text-box p:nth-of-type(2){
width: 23%;
padding:0 5% 0 0;
}

 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block03 article .illust-box{
width: 80%;
flex-flow: column nowrap;
}

#block03 article .illust-box dl{
margin: 5% auto;
width: 60%;
}

#block03 article .illust-box dt{
width: 70%;
padding: 0 0 10% 0;
}

#block03 article .illust-box dd{
font-size: 16px;
line-height: 1.2;
}
#block03 article .illust-box dd span{font-size: 12px;}

#block03 article>p{
margin: 15% auto 10%;
font-size: 16px;
}

#block03 article>p::before{top:-40px;}

#block03 article .text-box p:nth-of-type(1){font-size: 13px;}

 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block03 article .illust-box dt{
width: 55%;
padding: 0 0 10% 0;
}

#block03 article .illust-box dl{
margin: 5% auto 7%;
width: 80%;}

#block03 article .text-box{
width: 80%;
flex-flow: column nowrap;
}

#block03 article .text-box p:nth-of-type(1){
margin: 0 auto 10%;
width: 100%;
font-size: 10px;
}

#block03 article .text-box p:nth-of-type(2){
width: 40%;
padding:0;
}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 380px) {
 /* ---------------------------------- */ 
#block03 article>p{font-size: 14px;}
 /* ---------------------------------- */
}


/** --------------------------------------------------
block04
-------------------------------------------------- **/
#block04{
margin: 0 auto;
padding: 10%;
width: 100%;
background: #ea5413;
border-top: solid 10px #ffff00;
}

#block04 article{
margin: 0 auto;
padding: 10% 10% 5%;
width: 100%;
background: #fff;
border-radius: 30px;
position: relative;
}

#block04 article>p{
margin: 0 auto;
padding: 1.5%;
width: 40%;
font-size: 25px;
font-weight: 900;
color: #ea5413;
background: #ffff00;
border: solid 4px #ea5413; 
border-radius: 100px;
position: absolute;
top:-25px;
left: 50%;
transform: translateX(-50%);
}

#block04 article .version01{
position: relative;
margin: 0 auto 10%;
width: 100%;
}

#block04 article .version01 p{
margin: 0 auto 10%;
text-align: center;
width: 70%;
font-size: 20px;
line-height: 1.5;
font-weight: 700;
}

#block04 article .version01 .triangle-box .triangle{
margin: 10% auto 0;
width: 0;
height: 100px;
border-style: solid;
border-width: 25px 25px 0 25px;
border-color: #ea5413 transparent transparent transparent;
}

#block04 article .version01 .illust01{
position: absolute;
top:-30px;
left: 50px;
width: 200px;
}

#block04 article .version01 .illust02{
position: absolute;
top:0px;
right: 0px;
width: 200px;
}

#block04 article .version01 .illust03{
position: absolute;
bottom:-30px;
left: 40px;
width: 180px;
}

#block04 article .version02,
#block04 article .version03{
margin: 5% auto;
width: 90%;
padding: 5%;
border:  solid 2px #ea5413;
}

#block04 article .version02 h2,
#block04 article .version03 h2{
position: relative;
margin: 0 auto 10%;
color: #ea5413;
font-size: 22px;
font-weight: 700;
letter-spacing: 0.05em;
}

#block04 article .version02 h2{width: 25%;}/*幅指定*/
#block04 article .version03 h2{width: 40%;}/*幅指定*/

#block04 article .version02 h2 span::after,
#block04 article .version03 h2 span::after{
content: "";
position: absolute;
bottom: -10px;
left: 50%;
transform: translateX(-50%);
border-bottom: solid 1.5px #ea5413;
}

#block04 article .version02 h2 span::after,
#block04 article .version03 h2 span::after{width: 100%;}/*線幅指定*/

#block04 article .version02 div{
margin: 5% auto;
width: 100%;

display: flex;
justify-content: space-between;
align-items: flex-start;
flex-flow: row nowrap;
}

#block04 article .version02 div p:nth-of-type(1){
margin: 0 auto;
width: 20%;
max-width: 80px;
}/*丸キャプション*/

#block04 article .version02 div p:nth-of-type(2){
margin: 0 0 0 5%;
text-align: left;
width: 75%;
font-size: 13px;
font-weight: 500;
line-height: 1.5;
letter-spacing: 0.05;
}/*テキスト*/

#block04 article .version02 div p:nth-of-type(2) span{
margin: 2% auto 0;
font-size: 10px;
font-weight: 400;
}

#block04 article .version03 div p:nth-of-type(odd){
margin: 0 auto;
text-align: center;
width: 100%;
font-size: 13px;
font-weight: 500;
line-height: 1.5;
letter-spacing: 0.05;
}/*テキスト*/

#block04 article .version03 div p:nth-of-type(2){
margin: 3% auto;
font-size: 16px;
padding: 1.5%;
font-weight: 700;
line-height: 1.5;
color: #ff0000;
border: solid 2px #ff0000;
border-radius: 100px;
}

#block04 article .version03>p{
margin: 5% auto 0;
width: 40%;
}

/* ******************************************* */
@media screen and (max-width: 1200px) {
 /* ---------------------------------- */ 
#block04 article .version02 h2{width: 35%;}/*幅指定*/
#block04 article .version03 h2{width: 65%;}/*幅指定*/
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
 #block04 article>p{
padding: 2%;
width: 50%;
font-size: 22px;
border: solid 3px #ea5413; 
top:-25px;
}

#block04 article .version01{width: 80%;}

#block04 article .version01 p{
margin: 0 auto ;
font-size: 18px;
line-height: 1.2;
}

#block04 article .version01 .triangle-box .triangle{
margin:  10% auto -10%;
width: 0;
height: 100px;
border-style: solid;
border-width: 20px 20px 0 20px;
border-color: #ea5413 transparent transparent transparent;
}
#block04 article .version01 .illust01{
top:-30px;
left: -80px;
width: 150px;
}

#block04 article .version01 .illust02{
top:0px;
right: -90px;
width: 150px;
}

#block04 article .version01 .illust03{
bottom:-10px;
left: -30px;
width: 120px;
}

#block04 article .version02,
#block04 article .version03{width: 100%;}

#block04 article .version02 h2,
#block04 article .version03 h2{font-size: 18px;}

#block04 article .version02 h2{width: 35%;}/*幅指定*/
#block04 article .version03 h2{width: 50%;}/*幅指定*/

#block04 article .version02 div p:nth-of-type(2) br{display: none;}
#block04 article .version02 div p:nth-of-type(2) span br{display: block}/*テキスト*/

#block04 article .version03>p{
margin: 7% auto 3%;
width: 60%;
}

/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block04{padding: 10% 5% 5%;}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 680px) {
 /* ---------------------------------- */ 
 #block04 article>p{
padding: 3%;
width: 55%;
font-size: 20px;
}

#block04 article .version01{width: 80%;}
#block04 article .version01 p{
margin: 10% auto 0;
font-size: 16px;
}

#block04 article .version01 .triangle-box .triangle{margin:  10% auto -25%;}

#block04 article .version01 .illust01{
top:-60px;
left: -70px;
width: 120px;
}

#block04 article .version01 .illust02{
top:-40px;
right: -70px;
width: 120px;
}

#block04 article .version01 .illust03{
bottom:0;
left: -50px;
width: 100px;
}

#block04 article .version02 h2,
#block04 article .version03 h2{font-size: 16px;}

#block04 article .version02 h2{width: 40%;}/*幅指定*/
#block04 article .version03 h2{width: 60%;}/*幅指定*/

 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block04{padding: 10% 5%;}
#block04 article{padding: 15% 5% 2% 5% ;}

#block04 article .version01 .illust01{
top:-60px;
left: -40px;
}

#block04 article .version01 .illust02{
top:-70px;
right: -50px;
}

#block04 article .version01 .illust03{
left: -20px;
}

#block04 article .version02,
#block04 article .version03{ padding: 5% 3%}

#block04 article .version02 div{
margin: 0 auto;
flex-flow: column nowrap;
align-items: center;
}

#block04 article .version02 div p:nth-of-type(1){
margin: 0 auto 5%;
width: 100%;
}/*丸キャプション*/

#block04 article .version02 div p:nth-of-type(2){
margin: 0 auto 5%;
width: 90%;
font-size: 12px;
}/*テキスト*/

#block04 article .version02 div p:nth-of-type(2) span{font-size: 10px;}

#block04 article .version03 div p:nth-of-type(odd){font-size: 12px;}/*テキスト*/

#block04 article .version03 div p:nth-of-type(2){
width: 70%;
font-size: 14px;
padding: 2%;
border-radius: 20px;
}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block04{padding: 15% 5% 5%;}
#block04 article .version01{margin: 60% auto;}

#block04 article .version01 .illust01{
top:-200px;
left: 50%;
transform: translateX(-50%);
width: 160px;
}
#block04 article .version01 .illust02{display: none;}

#block04 article .version01 .illust03{
bottom:-160px;
left: 50%;
transform: translateX(-50%);
width: 150px;
}

#block04 article .version02 h2{width: 70%;}/*幅指定*/
#block04 article .version03 h2{width: 80%;}/*幅指定*/

#block04 article .version03 div p:nth-of-type(2){width: 85%;}

#block04 article .version03>p{
margin: 10% auto 5%;
width: 70%;
}

 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 380px) {
 /* ---------------------------------- */ 
#block04 article>p{
padding: 3%;
width: 65%;
font-size: 18px;
}
#block04 article .version01 .illust01{
top:-170px;
width: 150px;
}
#block04 article .version01 .illust02{display: none;}

#block04 article .version01 .illust03{
bottom:-130px;
width: 120px;
}

 /* ---------------------------------- */
}












