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

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

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

#block01 .block01-circle2{
width: 150px;
height: 150px;
top:-30px;
left: 30px;
}

#block02 .block02-circle{
width: 100px;
height: 100px;
top:-30px;
right: 80px;
}

#block02 .block02-circle2{
width: 500px;
height: 500px;
top:-30px;
left: -150px;
}

#block02 .block02-circle3{
width: 220px;
height: 220px;
bottom:-30px;
right: 80px;
}


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

#block01 .block01-circle2{
width: 100px;
height: 100px;
top:-15px;
left: 20px;
}

#block02 .block02-circle{right: 50px;}

#block02 .block02-circle2{
width: 400px;
height: 400px;
top:-30px;
left: -170px;
}

#block02 .block02-circle3{
width: 180px;
height: 180px;
bottom:-30px;
right: -20px;
}
 /* ---------------------------------- */
}

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

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 

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

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

#block01 article{
margin: 0 auto;
width: 100%;
}

#block01 article h1{
position: relative;
margin: 5% auto;
width: 35%;
font-size:2.8vw;
font-weight: 700;
line-height: 1.5;
letter-spacing: 0.05em;
color: #ea5413;
}

#block01 article h1::after{
content:"";
display:block;
width:100%;
height:3px;
background-color: #ea5413;
position: absolute;
bottom: -10px;
left: 50%;
transform: translateX(-50%);
}

#block01 article div{
margin: 0 auto;
width: 50%;
padding: 0 8%;

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

#block01 article div p:nth-of-type(1){
margin: 0 auto;
width: 80%;

text-align: left;
font-size: 1vw;
line-height: 1.5;
letter-spacing: 0.05em;
}

#block01 article div p:nth-of-type(2){
margin: 0 auto;
width: 20%;
max-width: 130px;
padding: 0 0 0 5%;
}

/* ******************************************* */
@media screen and (max-width: 1200px) {
 /* ---------------------------------- */ 
#block01 article div{width: 60%;}

#block01 article div p:nth-of-type(1){
width: 60%;
font-size: 14px;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block01 article h1{width: 40%;}
#block01 article h1::after{height:2px;}

#block01 article div{
margin: 5% auto;
width: 50%;
padding: 0;
}

#block01 article div p:nth-of-type(1){
width: 70%;
font-size: 14px;
}

#block01 article div p:nth-of-type(2){
width: 30%;
max-width: 100px;
padding: 3%;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block01 article h1{
width: 50%;
font-size:25px;
}

#block01 article h1::after{height:2px;}

#block01 article div{
margin: 5% auto;
width: 60%;
}

#block01 article div p:nth-of-type(1){
width: 70%;
font-size: 13px;
}

#block01 article div p:nth-of-type(2){
width: 30%;
max-width: 90px;
padding: 4%;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block01 article h1{margin: 8% auto;}
#block01 article h1::after{height:2px;}

#block01 article div{
margin: 5% auto;
width: 100%;
flex-flow: column nowrap;
}

#block01 article div p:nth-of-type(1){
margin: 0 auto 5%;
width: 100%;
text-align: center;
font-size: 13px;
}

#block01 article div p:nth-of-type(2){
width: 25%;
max-width: none;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block01 article h1{width: 70%;}
#block01 article h1::after{height:2px;}
#block01 article div p:nth-of-type(2){width: 30%;}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 380px) {
 /* ---------------------------------- */ 
#block01 article h1{
font-size:23px;
width: 85%;
}
#block01 article h1::after{height:2px;}
 /* ---------------------------------- */
}


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

#block02 article{
margin: 0 auto;
width: 60%;
}

#block02 article h2{
margin: 0 auto;
width: 100%;
padding: 3%;
font-size: 25px;
font-weight: 700;
color: #ffff00;
background: #ea5413;
border-radius: 100px;
}

#block02 article .triangle-box{
margin: 0 auto 10%;
width: 100%;
position: relative;
}

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

#block02 article div h3{
margin: 5% auto;
padding: 2%;
width: 50%;
font-size: 20px;
font-weight: 500;
color: #ea5413;
border: solid 2px #ea5413;
}

#block02 article div p{
margin: 0 auto 10%;
width: 100%;
font-size: 14px;
line-height: 1.7;
letter-spacing: 0.05em;
}


/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block02 article{width: 80%;}

#block02 article h2{font-size: 22px;}
#block02 article .triangle-box .triangle{border-width: 20px 20px 0 20px;}

#block02 article div h3{
margin: 3% auto;
padding: 2%;
width: 60%;
font-size: 18px;
}

#block02 article div p{font-size: 12px;}

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

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block02 article .triangle-box .triangle{border-width: 15px 15px 0 15px;}

#block02 article div h3{
margin: 3% auto;
padding: 2%;
width: 60%;
font-size: 16px;
border: solid 1.5px #ea5413;
}
 /* ---------------------------------- */
}


/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block02 article h2{
padding: 4%;
font-size: 20px;
}

#block02 article .triangle-box .triangle{top:-20px;}


#block02 article div h3{
padding: 2%;
width: 70%;
}

#block02 article div p{
margin: 5% auto 15%;
line-height: 1.5;
font-size: 11px;
}

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

/** --------------------------------------------------
block03　上部分のみ（テキストなどは下にまとめて）
-------------------------------------------------- **/
#block03{
position: relative;
margin: 10% auto 0;
width: 100%;
}

#block03 h2{
margin: 0 auto;
width: 60%;
padding: 2%;
font-size: 25px;
font-weight: 700;
line-height: 1.5;
color: #ffff00;
background: #ea5413;
border-radius: 100px;
}


#block03 .triangle-box{
margin: 0 auto 10%;
width: 100%;
position: relative;
}

#block03 .triangle-box .triangle{
width: 0;
height: 100px;
border-style: solid;
border-width: 25px 25px 0 25px;
border-color: #ea5413 transparent transparent transparent;
position: absolute;
left: 50%;
transform: translateX(-50%);
top:-5px;
z-index: 2;
}

/*iPhone（プロファイル設定、Android（APN設定）*/
#block03 .select{
margin: 0 auto;
width: 50%;
display: flex;
justify-content: center;
align-items: center;
flex-flow: row nowrap;

position: absolute;
top: 5.5%;
left: 50%;
transform: translateX(-50%);
}

#block03 .select h3{
margin: 0 auto 10%;
width: 45%;
padding: 1% 0;
background: #fff;
border: solid 2px #ea5413;
border-radius: 100px;
}

#block03 .select h3 a{
font-size: 20px;
font-weight: 500;
line-height: 1.2;
color: #ea5413;
}

/*iPhoneのプロファイル設定*/
#block03 .h3{
margin: 0 auto;
width: 60%;
position: absolute;
left: 50%;
transform: translateX(-50%);
top:8.5%;
z-index: 1;
}

#block03 .h3 h3{
width: 100%;
padding: 1.5%;
font-size: 25px;
font-weight: 700;
line-height: 1.3;
color: #fff;
background: #ea5413;
border: solid 2px #fff;
border-radius: 100px;
}

#block03 article{
margin: 0 auto;
padding: 10%;
width: 100%;
background: #ea5413;
}

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

#block03 article .box .flex-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6vw;
}
#block03 article .box .download{
  display: flex;
  flex-wrap: wrap;
  gap: 18px 0;
  justify-content: center;
  margin: 0;
  color: #ea5313;
  font-weight: 700;
  width: 200px;
}

/* ******************************************* */
@media screen and (max-width: 1200px) {
/* ---------------------------------- */ 
#block03 .h3{top:8%;}

#block03 .select{top: 4.5%;}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 1100px) {
/* ---------------------------------- */ 
#block03 .h3{top:7.5%;}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block03 .select{top: 7%;}

#block03 .select{
width: 65%;
top: 5.5%;
}
#block03 .select h3 a{font-size: 17px;}

#block03 .h3{
width: 60%;
top:8.5%;
}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block03 h2{
width: 80%;
font-size: 22px;
}

#block03 .select{
width: 70%;
top: 4.5%;
}

#block03 .h3{
width: 55%;
top:8%;
}

#block03 .h3 h3{
padding: 2%;
font-size: 22px;
}

#block03 article{padding: 12% 5% 10%;}
#block03 article .box{border-radius: 20px;}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 680px) {
 /* ---------------------------------- */ 
 #block03 .h3{
width: 55%;
top:7.5%;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block03 .triangle-box .triangle{border-width: 15px 15px 0 15px;}

#block03 .select{
margin: 13% auto;
width: 60%;
flex-flow: column nowrap;
top:50px;
}
#block03 .select h3{
margin: 2% auto;
padding: 2% 0;
width: 100%;
}
#block03 .select h3 a{font-size: 18px;}
#block03 .select br{display: none;}

#block03 .h3{
width: 60%;
top:4.5%;
}
#block03 .h3 h3{font-size: 18px;}

#block03 article{
margin: 30% auto 0;
padding: 10% 5%;
}

#block03 article .box{padding: 10% 5%;}

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

/* ******************************************* */
@media screen and (max-width: 500px) {
 /* ---------------------------------- */ 
#block03 .h3{
width: 60%;
top:4%;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 480px) {
 /* ---------------------------------- */ 
#block03 h2{
padding: 4%;
font-size: 20px;
}

#block03 .select{
margin: 15% auto;
width: 70%;
top:50px;
}
#block03 .select h3 a{font-size: 16px;}

#block03 .h3{
width: 75%;
top:4%;
}
#block03 .h3 h3{font-size: 16px;}

#block03 article{
margin: 30% auto 0;
padding: 12% 5% 10%;
}

#block03 article .box .flex-wrap { margin: 35px auto; gap: 10vw; }
#block03 article .box .download { gap: 10px 0;}
#block03 article .box .download a { width: 170px; margin: 0 auto; }
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 380px) {
 /* ---------------------------------- */ 
#block03 .select h3{border: solid 1.5px #ea5413;}
#block03 .select h3 a{font-size: 14px;}
#block03 .h3{top:3.8%;}
 /* ---------------------------------- */
}

/** --------------------------------------------------
block04　上部分のみ（テキストなどは下にまとめて）
-------------------------------------------------- **/
#block04{
position: relative;
margin: 0 auto;
width: 100%;
}

/*AndroidのAPN設定*/
#block04 .h3{
margin: 0 auto;
width: 60%;
position: absolute;
left: 50%;
transform: translateX(-50%);
top:1%;
z-index: 1;
}

#block04 .h3 h3{
width: 100%;
padding: 1.5%;
font-size: 25px;
font-weight: 700;
line-height: 1.3;
color: #fff;
background: #ea5413;
border: solid 2px #fff;
border-radius: 100px;
}


#block04 article{
margin: 0 auto;
padding: 5% 10% 10%;
width: 100%;
background: #ea5413;
}

#block04 .triangle-box{
margin: 0 auto 10%;
width: 100%;
position: relative;
}

#block04 .triangle-box .triangle{
width: 0;
height: 100px;
border-style: solid;
border-width: 25px 25px 0 25px;
border-color: #ea5413 transparent transparent transparent;
position: absolute;
left: 50%;
transform: translateX(-50%);
top:-5px;
z-index: 2;
}

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


/* ******************************************* */
@media screen and (max-width: 1200px) {
/* ---------------------------------- */ 

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

/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block04 .h3{width: 60%;}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block04 .h3{
width: 55%;
padding: 2%;
top:-0.3%;
}

#block04 .h3 h3{font-size: 22px;}

#block04 article{padding: 5% 5% 5%;}
#block04 article .box{border-radius: 20px;}
/* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 680px) {
 /* ---------------------------------- */ 
#block04 .h3{
width: 55%;
}
 /* ---------------------------------- */
}

/* ******************************************* */
@media screen and (max-width: 600px) {
 /* ---------------------------------- */ 
#block04 .triangle-box .triangle{border-width: 15px 15px 0 15px;}
#block04 article{margin: 0 auto;}
#block04 article .box{padding: 10% 5%;}

#block04 .h3{
width: 60%;
top:-0.1%;
}

#block04 .h3 h3{font-size: 18px;}

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

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

#block04 .h3{
width: 75%;
top:0.2%;
}

#block04 .h3 h3{font-size: 16px;}

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

/* ******************************************* */
@media screen and (max-width: 380px) {
 /* ---------------------------------- */ 
 /* ---------------------------------- */
}

/** --------------------------------------------------
block03,04　テキストなどの共通部分
-------------------------------------------------- **/
#block03 article .box div .step,
#block04 article .box div .step{
margin: 3% auto;
width: 80%;
text-align: center;
font-size: 22px;
font-weight: 700;
line-height: 1.5;
letter-spacing: 0.05em;
color: #ea5413;
position: relative;
}/*テキスト上の指定*/

#block03 article .box div .step::after,
#block04 article .box div .step::after{
content:"";
display:block;
width:100%;
height:1.5px;
line-height: 1.2;
letter-spacing: 0.05em;
background-color: #ea5413;
position: absolute;
bottom: -15px;
left: 50%;
transform: translateX(-50%);
}

#block03 article .box div .text,
#block04 article .box div .text{
margin: 5% auto;
width: 80%;
text-align: center;
line-height: 1.6;
font-size: 15px;
}/*テキスト下の指定*/

#block03 article .box div .text span{color: #ff0000;}

#block03 article .box div .image,
#block04 article .box div .image{
margin: 7% auto;
width: 80%;
}/*テキスト下の指定*/


/*トライアングル*/
#block03 article div .triangle-box,
#block04 article div .triangle-box{
margin: 10% auto 20%;
width: 100%;
position: relative;
}

#block03 article div .triangle-box .triangle,
#block04 article div .triangle-box .triangle{
width: 0;
height: 100px;
border-style: solid;
border-width: 15px 15px 0 15px;
border-color: #ea5413 transparent transparent transparent;
position: absolute;
left: 50%;
transform: translateX(-50%);
top:-5px;
z-index: 2;
}

/* ******************************************* */
@media screen and (max-width: 1024px) {
 /* ---------------------------------- */ 
#block03 article .box div .step,
#block04 article .box div .step{
margin: 3% auto;
width: 100%;
font-size: 18px;
}/*テキスト上の指定*/

#block03 article .box div .step::after,
#block04 article .box div .step::after{width: 90%;}

#block03 article .box div .text,
#block04 article .box div .text{
margin: 5% auto;
width: 100%;
font-size: 12px;
}/*テキスト下の指定*/

#block03 article .box div .image,
#block04 article .box div .image{
margin: 7% auto;
width: 100%;
}/*テキスト下の指定*/

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

/* ******************************************* */
@media screen and (max-width: 768px) {
 /* ---------------------------------- */ 
#block03 article .box div .step,
#block04 article .box div .step{
margin: 3% auto;
width: 100%;
font-size: 18px;
}/*テキスト上の指定*/

#block03 article .box div .step::after,
#block04 article .box div .step::after{
width: 90%;
bottom: -12px;
}

#block03 article .box div .text,
#block04 article .box div .text{
margin: 5% auto;
width: 100%;
font-size: 12px;
}/*テキスト下の指定*/

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

/* ******************************************* */
@media screen and (max-width: 680px) {
 /* ---------------------------------- */ 
#block03 article .box div .step,
#block04 article .box div .step{
margin: 3% auto;
width: 100%;
font-size: 18px;
}/*テキスト上の指定*/

#block03 article .box div .step::after,
#block04 article .box div .step::after{bottom: -12px;}

#block03 article .box div .text,
#block04 article .box div .text{
margin: 5% auto;
width: 100%;
font-size: 12px;
}/*テキスト下の指定*/

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