@charset "utf-8";
/* CSS Document */
    body {display: block !important;}
    @media screen and (min-width:768px) {
      .sp-only {display: none !important;}
    }
    @media screen and (max-width:767px) {
      .pc-only {display: none !important;}
      .pane-main {padding-top: 143px;}
    }
h1 {
margin: 0;
padding: 0;
line-height: 0;
}

.mainArea {
    font-size: 16px;
    color: #222;
    font-weight: 500;
}

.mainArea p {
    line-height: 160%;
    margin: 0;
    
}

p.small {
    font-size: 12px;
}


.page_inner {
    width: 1200px;
    margin: 0 auto;
    position: relative;
}


.bold {
    font-weight: bold;
}



h2 {
color: #2652A5;
font-size: 40px;
font-weight: 500;
text-align: center;
margin: 0;
padding: 40px 0;
border-bottom: none;
}


h2 img {
width: 96px;
height: auto;
}

.mainArea ul,.mainArea li {
margin: 0;
padding: 0;
list-style: none;
}


.detail_txt {
padding-bottom: 40px;
text-align: center;
}


.detailbox {
  background-image: linear-gradient(90deg, #f0efff, #ffffff 50%, #ecf3fe);
  padding: 50px 0 130px 0;
}

.whiteroundbox li {
border-radius: 10px;
background: #FFF;
padding: 30px;
display: flex;
justify-content: flex-start;
align-items: center;
margin-bottom: 40px;
}

.whiteroundbox h3 {
font-size: 26px;
color: #E59D28;
border-bottom: #E59D28 solid 1px;
margin: 0 0 10px 0;
padding: 0 0 10px 0;
}

.whiteroundbox li div:nth-child(2) {
width: 1300px;
}
.whiteroundbox li img {
width: 62px;
height: auto;
margin-right: 40px;
}


.graylinebox {
border: #CCCCCC solid 1px;
padding: 20px;
background: #FFF;
}



.career h3 {
font-size: 26px;
color: #2652A5;
margin: 0;
padding: 50px 0 10px 0;
}




.career_box {
border-radius: 10px;
padding: 20px;
background: #FFF;
margin-top: 20px;
}

.career_box strong {
font-size: 20px;
color: #2652A5;
margin: 0;
padding: 0px 0 10px 0;
display: block;
}


.career_box img {
float: right;
width: 184px;
height: auto;
}

.partner h3 {
font-size: 26px;
color: #1F396C;
margin: 0;
padding: 40px 0 20px 0;
}


.partner_companies {
border: #CCCCCC solid 1px;
padding: 30px;
background: #FFF;
font-size: 12px;
display: flex;
justify-content: flex-start;
align-items: center;
margin-top: 50px;
}

.partner_companies img {
width: 203px;
height: auto;
margin:0 30px 0 60px;
}


.contactbox {
background: #2653A7;
padding: 50px 0;
text-align: center;
}
.contactbox p {
color: #FFF;
font-size: 30px;
font-weight: 700;
}
.contactbox strong {
color: #E99E25;
font-weight: 700;
}

.contactbox a {
display: inline-block;
background: #E99E25;
color: #FFF;
text-decoration: none;
padding: 20px 80px;
border-radius: 100px;
margin-top: 30px;
 box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.1);
 line-height: 0;

}

.contactbox a::after {
content: "";
display: inline-block;
width: 49px;
height: 49px;
background: url("../img/arrow01.png");
background-repeat: no-repeat;
background-size: 100%;
vertical-align: middle;
margin-left: 15px;
}




.works {
background: url("../img/bg-works.png"),url("../img/works03.png");
background-repeat: no-repeat,no-repeat;
background-size: 100%,100%;
background-position: top center,bottom center;
}


.worksimg {
display: flex;
justify-content:space-around;
align-items: center;
flex: 1;
}
.worksimg img {
width: 50%;
}

figure.worksimg {
margin: 0;
padding: 50px 0;
}


.works_03 {
text-align: center;
padding-bottom: 100px;
}


.works_03 p {
color: #2653A7;
font-size: 20px;
}

.works2 {
background: url("../img/works04.png");
background-repeat: no-repeat;
background-size: 30%;
background-position: bottom right;
padding-bottom: 20px;
}


.works2 h2 strong {
font-weight: 500;
box-shadow: inset 0 -0.15em 0 #fff, inset 0 calc(-0.15em - 10px) 0 #FFBF00; 
}


.works_threebox {
display: flex;
justify-content: space-around;
align-items: center;
}


.works_threebox li {
background: #FFEFDF;
border-radius: 10px;
box-shadow: 5px 5px 0px 0px rgba(0, 0, 0, 0.1);
width: 31%;
padding: 40px 10px;
box-sizing: border-box;
text-align: center;
font-size: 24px;
font-weight: 700;
}


.works_threebox li strong {
color: #FF4000;
font-size: 70px;
display: block;
font-weight: 700;
}


.works_threebox li span {
color: #FF4000;
font-size: 30px;
font-weight: 700;
}

.notes {
font-size: 12px;
padding: 10px 0;
display: inline-block;
}

.catch {
color: #2653A7;
font-size: 20px;
font-weight: 700;
text-align: center;
padding: 40px 0;
}
.catch::after {
content: "";
display: block;
margin: 0 auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 120px solid transparent;
  border-left: 120px solid transparent;
  border-top: 60px solid #B7CCE4;
  border-bottom: 0;
  margin-top: 40px;
}

.catch2 {
color: #E18D02;
font-size: 20px;
font-weight: 700;
text-align: center;
padding: 100px 0 0px 0;
}
.catch2::after {
content: "";
display: block;
margin: 0 auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 120px solid transparent;
  border-left: 120px solid transparent;
  border-top: 60px solid #FFBD59;
  border-bottom: 0;
  margin-top: 40px;
}


ul.merit_list {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding-top: 100px;
}

ul.merit_list li {
width: 590px;
border: #CBD1F4 solid 1px;
background: #FFF;
border-radius: 10px;
box-sizing: border-box;
padding: 20px;
position: relative;
margin-bottom: 50px;
min-height: 210px;
}

ul.merit_list li strong {
display: block;
color: #1F396E;
font-size: 26px;
font-weight: 700;
line-height: 160%;
padding-bottom: 10px;

}

ul.merit_list li img {
position: absolute;
top: -15px;
right: 20px;
width: 140px;
height: auto;
}

ul.merit_list li:nth-of-type(2) img {
position: absolute;
top: -15px;
right: 20px;
width: 119px;
height: auto;
}


.merit_list_number {
position: absolute;
top: -55px;
left: 20px;
color: #3A81F3;
font-size: 60px;
font-style: italic;
}



.voice {
background: #FFF8E5 url("../img/voice-foot.png") no-repeat bottom right;
background-size: 30%;
padding-bottom: 60px;
}

.voice h2 {
color: #E99E25;
}

ul.voice_list li {
display: flex;
justify-content: center;
align-items: center;
gap: 50px;
padding: 30px 0;
}
ul.voice_list li:nth-of-type(even) {
flex-flow: row-reverse;
background: #FFF;
}

ul.voice_list li:nth-of-type(even) p.voice_whiteraund {
background: #FFF8E5;
border-radius: 0 100px 0 100px;
padding: 40px 20px;
width: 620px;
box-sizing: border-box;
}

ul.voice_list li img {
width: 420px;
}
ul.voice_list li p.voice_whiteraund {
background: #FFF;
border-radius: 0 100px 0 100px;
padding: 40px 20px;
width: 620px;
box-sizing: border-box;
}

ul.voice_list li p.voice_whiteraund strong {
color: #E18D02;
font-weight: 700;
font-size: 26px;
display: inline-block;
padding-bottom: 20px;
line-height: 120%;
}

ul.voice_list li .voice_orangeraund {
display: block;
text-align: right;
}
ul.voice_list li .voice_orangeraund p {
background: #E99E25;
border-radius: 0 20px 0 20px;
padding: 5px 20px;
box-sizing: border-box;
display: inline-block;
font-size: 16px;
color: #FFF;
font-weight: 400;
transform: translate(10px,-20px);
}


.detailbox.rwcontent {
padding-bottom: 0;
}

ul.rwcontent_threebox {
display: flex;
justify-content: space-around;
align-items: center;
margin-bottom: 80px;
}

ul.rwcontent_threebox li {
width: 32%;
border: #2652A6 solid 3px;
background: #FFF;
padding: 50px 20px;
box-sizing: border-box;
}

ul.rwcontent_threebox li strong {
color: #2652A5;
font-size: 26px;
display: inline-block;
margin-bottom: 20px;
line-height: 120%;
font-weight: 500;
}


.rwcontent_twobox {
background: #ECF3FE;
position: relative;
}

.rwcontent_twobox::before {
content: "";
background: url(../img/content-icon.png) no-repeat;
background-size: 100%;
width: 100px;
height: 100px;
display: block;
position: absolute;
top: -50px;
right: calc(50% - 50px);


}


.rwcontent_twobox ul {
display: flex;
justify-content: center;
align-items: center;
}
.rwcontent_twobox ul li {
display: flex;
justify-content: center;
align-items: center;
width: 50%;
margin: 80px 0;
padding: 10px 50px;
}
.rwcontent_twobox ul li + li {
border-left: #1F396D dashed 1px;
}
.rwcontent_twobox ul li img {
width: 165px;
height: auto;
margin-right: 20px;
}

.rwcontent_twobox ul li strong {
color: #1F396D;
font-size: 26px;
display: inline-block;
margin-bottom: 10px;
font-weight: 500;
}


.rwcontent_onebox {
background: #FFF2EE;
position: relative;
padding-bottom: 90px;
}


.rwcontent_onebox::before {
content: "";
background: url(../img/content-icon.png) no-repeat;
background-size: 100%;
width: 100px;
height: 100px;
display: block;
position: absolute;
top: -50px;
right: calc(50% - 50px);


}


.rwcontent_onebox ul {
display: flex;
justify-content: center;
align-items: center;
}
.rwcontent_onebox ul li {
display: flex;
justify-content: center;
align-items: center;
width: 100%;
margin: 80px 0;
padding: 10px 50px;
}
.rwcontent_onebox ul li + li {
border-left: #1F396D dashed 1px;
}
.rwcontent_onebox ul li img {
width: 250px;
height: auto;
margin-right: 20px;
}

.rwcontent_onebox ul li strong {
color: #953F2D;
font-size: 26px;
display: inline-block;
margin-bottom: 10px;
font-weight: 500;
}


.rwplan {
background: #CBE6FE;
border-radius: 10px;
padding: 50px;
}


.rwplan ul {
display: flex;
justify-content: space-between;

}

.rwplan li {
background: #FFF;
border-radius: 10px;
 box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.1);
 padding: 0;
 width: 48%;
 box-sizing: border-box;
}


.rwplan li:nth-of-type(1) h3 {
color: #FFF;
font-size: 40px;
 text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.1);
 font-weight: 500;
 margin: 0;
 padding: 15px;
 line-height: 1;
 background: #1A71D9;
 width: 100%;
 border-radius: 10px 10px 0 0;
 box-sizing: border-box;
 text-align: center;
}

.rwplan li:nth-of-type(2) h3 {
color: #FFF;
font-size: 40px;
 text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.1);
 font-weight: 500;
 margin: 0;
 padding: 15px;
 line-height: 1;
 background: #46AB29;
 width: 100%;
 border-radius: 10px 10px 0 0;
 box-sizing: border-box;
 text-align: center;
}


.rwplan_inner {
padding: 20px 40px;
}

.rwplan_inner div {
padding: 10px 0;
}


.rwplan_item {
color: #1A3863;
font-size: 20px;
border: #244272 solid 1px;
border-radius: 5px;
padding: 2px 10px;
line-height: 1;
margin-right: 10px;
}

.rwplan_price {
color: #FF4D4D;
font-size: 40px;
font-weight: 900;
line-height: 1;
transform: translateY(4px);
display: inline-block;
}

.rwplan_yen {
font-size: 20px;
}

.rwplan_tax {
font-size: 16px;
}

.rwplan_txtblue {
color: #2653A7;
font-size: 16px;
}

.rwplan_txtblue2 {
color: #244272;
font-size: 20px;
}

.rwplan_btn {
position: relative;
display: block;
text-align: center;
}
.rwplan_btn a {
position: relative;
font-size: 20px;
display: inline-block;
    background: #1A71D9;
    color: #FFF;
    text-decoration: none;
    padding: 20px 58px;
    border-radius: 100px;
    margin-top: 30px;
    box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.1);
    line-height: 1;
    width: 300px;
    box-sizing: border-box;
    margin-bottom: 20px;
}

.rwplan_btn a::after {
    content: "";
    display: inline-block;
    width: 36px;
    height: 36px;
    background: url(../img/arrow02.png);
    background-repeat: no-repeat;
    background-size: 100%;
    vertical-align: middle;
    position: absolute;
    right: 10px;
    top: calc(50% - 18px);
}



.rwplan_btn2 {
position: relative;
display: block;
text-align: center;
}
.rwplan_btn2 a {
position: relative;
font-size: 20px;
display: inline-block;
    background: #46AB29;
    color: #FFF;
    text-decoration: none;
    padding: 20px 80px;
    border-radius: 100px;
    margin-top: 30px;
    box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.1);
    line-height: 1;
    width: 300px;
    box-sizing: border-box;
    margin-bottom: 20px;
}

.rwplan_btn2 a::after {
    content: "";
    display: inline-block;
    width: 36px;
    height: 36px;
    background: url(../img/arrow03.png);
    background-repeat: no-repeat;
    background-size: 100%;
    vertical-align: middle;
    position: absolute;
    right: 10px;
    top: calc(50% - 18px);
}



.rwplan_txtblue2 {
font-weight: 700;
}

.rwfooter {
background: #ECF3FE;

}
.rwfooter .page_inner {
position: relative;
}

.rwfooter .page_inner img {
width: 548px;
height: auto;
position: absolute;
top: -90px;
right: -40px;
/*transform: translate(60px,-100px);*/
}

p.rwfooter_txt {
color: #1F396E;
font-size: 20px;
line-height: 200%;
padding-top: 100px;
}



.rwfooter .graylinebox {
width: 1000px;
margin: 0 auto;
box-sizing: border-box;
}

.rwfooter .graylinebox strong {
color: #8C0000;
text-align: center;
display: block;
margin-bottom: 20px;
}


.graylinebox ul li {
	list-style-type: disc;/* リストの左側に黒丸 */
	margin-left: 24px;/* リストの左側に余白 */
	text-align: left;
    margin-bottom: 5px;
}


.detailbox.voice .page_inner {
width: 100%;
}



@media screen and (max-width:767px) {

#wrapper {
margin-top: 40vw;
}


.detail_title .page_inner2 {
width: 100%;
}

.page_inner {
        width: 100%;
        margin: 0 auto;
        position: relative;
    }


 
  .rwfooter .graylinebox {
    width: 100%;
} 
    
ul.voice_list li,
.partner_companies,
.works_threebox{
display: block;
}

ul.voice_list li:nth-of-type(even) p.voice_whiteraund,
ul.voice_list li p.voice_whiteraund,
.rwplan_btn a,
.rwplan_btn2 a{
    width: 100%;
}

.partner_companies img {
width: 40%;
margin: 10px auto;

}

.works_threebox li {
    width: 100%;
    margin-bottom: 20px;
    padding: 20px 10px;

}

h2 img {
    width: 48px;
    height: auto;
}

h2 {
    font-size: 26px;
}
.whiteroundbox li {
    display: block;
}

.whiteroundbox li div:first-child {
text-align: center;
}

.whiteroundbox li div:nth-child(2) {
    width: 100%;
}

.whiteroundbox li img {
    margin-right: 0px;
}

.career li:nth-child(1) h3 {
padding-top: 0;
}

.career_box img {
    float: none;
    width: 100%;
    height: auto;
    margin-bottom: 10px;
}


.detailbox {
    padding: 50px 0 50px 0;
}

.contactbox p {
    color: #FFF;
    font-size: 20px;
    font-weight: 700;
}

.contactbox a {
    padding: 20px 0px;
    width: 100%;
}

.worksimg {
display: block;
}

.worksimg img {
    width: 100%;
    margin-bottom: 20px;
}

figure.worksimg {
    margin: 0;
    padding: 0;
}
.works_03 {
    text-align: center;
    padding-bottom: 0px;
    width: 90%;
    margin: 0 auto;
}



.works2 {

    background-size: 50%;
    background-position: bottom right -10%;

}


.catch::after {
    content: "";
    display: block;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 60px solid transparent;
    border-left: 60px solid transparent;
    border-top: 30px solid #B7CCE4;
    border-bottom: 0;
    margin-top: 40px;
}


.catch {
    padding: 40px 0 0 0;
}

.whiteroundbox h3 {
    font-size: 20px;

}

.career h3 {
    font-size: 20px;

}
.partner h3 {
    font-size: 20px;

}

ul.merit_list {
    display: block;

}

ul.merit_list li {
    width: 100%;

    min-height: auto;
}

ul.merit_list li img {
    position: static;
    width: 60%;
    height: auto;
    margin: 0 auto;
    display: block;
    margin-bottom: 10px;
}

ul.merit_list li:nth-of-type(2) img {
    position: static;
    width: 60%;
    height: auto;
    margin: 0 auto;
    display: block;
    margin-bottom: 10px;
}


.detailbox.voice .page_inner {
width: 100%;
padding: 0;
}


.detailbox.voice .detail_txt {
width: 90%;
margin: 0 auto;
}

ul.voice_list li {
padding: 16px 16px;
}


ul.voice_list li img {
    width: 100%;
    transform: translateY(20px);
}
.catch2 {

    padding: 50px 16px 0px 16px;
}

.catch2::after {
    content: "";
    display: block;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 60px solid transparent;
    border-left: 60px solid transparent;
    border-top: 30px solid #FFBD59;
    border-bottom: 0;
    margin-top: 40px;
}


.voice {
    background-size: 50%;
    background-position: bottom right -30%;
}


ul.rwcontent_threebox {
    display: block;

}

ul.rwcontent_threebox li {
    width: 100%;
padding: 20px 20px;
margin-bottom: 20px;
}


.rwcontent_twobox ul {
    display: block;
}

.rwcontent_twobox ul li {
    display: block;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 20px 0;
    padding: 10px 0px;
}

.rwcontent_twobox ul li + li {
    border-left: none;
    border-top: #1F396D dashed 1px;
}

.rwcontent_twobox {
    background: #ECF3FE;
    position: relative;
    padding: 50px 0;
}

.rwcontent_twobox ul li img {
    width: 60%;
    height: auto;
    margin-right: 0px;
    display: block;
    margin: 0 auto;
    margin-bottom: 10px;
}

.rwcontent_onebox ul li {
    display: block;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 80px 0 20px 0;
    padding: 10px 0px;
}

.rwcontent_onebox ul li img {
    width: 60%;
    display: block;
    height: auto;
    margin-right: 0px;
    margin: 0 auto;
    margin-bottom: 10px;
}
.rwplan {

    padding: 10px;
}

.rwplan ul {
    display: block;
}
.rwplan li {
    width: 100%;
}

.rwplan li + li {
margin-top: 20px;

}

.rwplan li:nth-of-type(1) h3,.rwplan li:nth-of-type(2) h3 {
font-size: 26px;
}

.rwplan_inner {
    padding: 20px 20px;
}

.rwplan_price {
    font-size: 30px;

}

.rwfooter .page_inner img {
    width: 274px;
    height: auto;
    position: static;
    display: block;
    margin: 0 auto;
    margin-top: 20px;
}

p.rwfooter_txt {

    padding-top: 20px;
}

.detailbox.rwfooter {
padding: 50px 0 0 0;
}

.detailbox.rwfooter +.detailbox.rwfooter {
padding: 0 0 20px 0;
}

ul.voice_list li p.voice_whiteraund strong {
    font-size: 20px;
}

p.rwfooter_txt {
    font-size: 18px;
}
}












