@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500&family=Noto+Serif+JP&display=swap');

html{font-size: 100%;}
/*body{
font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','游ゴシック体',YuGothic,'游ゴシック Medium','Yu Gothic Medium','游ゴシック','Yu Gothic',Meiryo,メイリオ,Osaka,'MS PGothic',arial,helvetica,sans-serif;
background-color: #ffffff;
line-height: 1.0;
font-size: calc(20em / 20);
letter-spacing: 0em;
color: #000;
}*/
/* common打ち消し
----------------------------------------------------------*/
body #wrapper header .inner {
padding: 10px 15px 0 15px;
}
body #wrapper header .inner:after {
width: 100%;
}
@media screen and (max-width: 576px) {
body #wrapper header .inner {
padding: 0px 5px 0 5px;
}
}
body #wrapper header ol,ul {
padding-left: 0rem;
}

body #wrapper header dl,ol,ul {
margin-top: 0;
margin-bottom: 0rem
}
body #wrapper_content{
margin-top: 110px;
}

@media screen and (max-width: 992px) {
body #wrapper_content{
margin-top: 60px;
}
}
@media screen and (max-width: 576px) {
body #wrapper_content{
margin-top: 30px;
}
}
body #wrapper header .inner .btn__area {
display: none
}

@media screen and (max-width: 992px) {
body #wrapper header .inner .btn__area {
display: flex;
margin: 0 32px 0 0;
align-items: center;
font-size: 0;
line-height: 0
}
}

@media screen and (max-width: 992px) {
body #wrapper header .inner .btn__area .btn {
display: block;
width: 28px;
height: 15px
}
}

body #wrapper header .inner .btn__area .btn a {
display: block;
position: relative;
width: 28px;
height: 16px
}

body #wrapper header .inner .btn__area .btn a span {
display: block;
position: absolute;
width: 100%;
height: 1px;
background-color: #231815;
transition: all 0.4s
}

body #wrapper header .inner .btn__area .btn a span.line1 {
top: 0;
left: 0
}

html.fixed body #wrapper header .inner .btn__area .btn a span.line1 {
-webkit-transform: translateY(7px) rotate(-315deg);
transform: translateY(7px) rotate(-315deg)
}

body #wrapper header .inner .btn__area .btn a span.line2 {
top: 50%;
left: 0
}

html.fixed body #wrapper header .inner .btn__area .btn a span.line2 {
opacity: 0
}

body #wrapper header .inner .btn__area .btn a span.line3 {
bottom: 0;
left: 0
}

html.fixed body #wrapper header .inner .btn__area .btn a span.line3 {
-webkit-transform: translateY(-8px) rotate(315deg);
transform: translateY(-8px) rotate(315deg)
}
/* common打ち消しここまで
----------------------------------------------------------*/

p {
margin-top: 0;
margin-bottom: 0;
}

dt{
font-weight:500;
}
.mg0{
padding-right: 0;
padding-left: 0;
}

.vmiddle_al{
vertical-align: middle;
margin-top :auto;
margin-bottom :auto;
}
.vmiddle{
vertical-align: top;
margin-top :0;
}
@media only screen and (max-width: 992px) {
.vmiddle_al,
.vmiddle{
vertical-align: middle;
margin-top :auto;
margin-bottom :auto;
}
}

.min{font-family: 'Noto Serif JP', serif;}
.Inter{font-family: 'Inter', sans-serif;}
.dblue{color: #1c2782;}
.lblue{color: #4376bb;}
.wblue{color: #5ab4c2;}
.bblue{color: #e1edf6;}
.fblue{color: #0d3e80;}
.fred{color: #bc0101;}
.fyellow{color: #fed100;}
.fbig{font-size: 3.85rem;}
.fbigest{font-size: 4.85rem;letter-spacing: -0.1em;}
@media screen and (max-width: 768px) {
.fbig{font-size: 3.25rem;}
.fbigest{font-size: 4.25rem;letter-spacing: -0.1em;}
}
@media screen and (max-width: 576px) {
.fbig{font-size: 2.35rem;}
.fbigest{font-size: 3.35rem;letter-spacing: -0.1em;}
}

.fnotice{color: #bf0000;}
a{
color: #0d3e80;
text-decoration: none !important;
}
a:hover{
text-decoration:underline;
color: #5ab4c2;
}

.link a{
background-image: url("../../img/icon_arrow_dot.png");
background-position: left center;
background-repeat: no-repeat;
background-size: auto 16px ;
padding-left: 20px;
font-size: calc(20em / 20);
}
@media only screen and (max-width: 992px) {
.link a{font-size: 1.0rem;}
}

.link_w {
border-radius: 6px;
border: 1px solid #fff;
display: inline;
padding: 15px 40px 15px 30px;
white-space: nowrap;
}
@media only screen and (max-width: 992px) {
.link_w {
display: block;
font-size: 1.1rem;
}
}
.link_w span{
background-image: url("../../img/icon_arrow_dot_w.png");
background-position: left center;
background-repeat: no-repeat;
background-size: auto 16px ;
padding-left: 30px;
color: #fff;
}

.link_n {
font-size: 1.1rem;
font-weight: 500;
margin: 10px 0;
}
.link_n span{
background-image: url("../../img/icon_arrow_dot.png");
background-position: left center;
background-repeat: no-repeat;
background-size: auto 20px ;
padding-left: 25px;
color: #0d3e80;
}

.link_telM {
height: 100%;
display: flex;
align-items: center;
margin: 0 auto;
}

.link_tel {
font-size: calc(20em / 20);
font-weight: 500;
display: inline;
padding: 20px 55px 20px 45px;
background-color: #1f96e6;
border-radius: 6px;
white-space: nowrap;
}
@media only screen and (max-width: 992px) {
.link_telM {
display: block;
margin: 1rem 0;
}
.link_tel  {
display: block;
width: 90%;
margin: 0 auto;
font-size: 1.0rem;
}
}
.link_tel  span{
background-image: url("../../img/icon_mail.png");
background-position: left center;
background-repeat: no-repeat;
background-size: auto 30px ;
padding-left: 55px;
color: #fff;
}

/* PC・SP
----------------------------------------------------------*/
.pc { display: block !important; }
.sp { display: none !important; }
.xsp { display: none !important; }
.sp_xsp { display: none !important; }
.text-cl {text-align: center !important;}
.text-lf {text-align: left !important;}
.text-rg {text-align: right !important;}

@media only screen and (max-width: 992px) {
.pc { display: none !important; }
.sp { display: block !important; }
.xsp { display: none !important; }
.sp_xsp { display: block !important; }
.text-cl {text-align: center !important;}
.text-lf {text-align: left !important;}
.text-rg {text-align: right !important;}
}

@media screen and (max-width: 576px) {
.pc { display: none !important; }
.sp { display: none !important; }
.xsp { display: block !important; }
.sp_xsp { display: block !important; }
.text-rg {text-align: center !important;}
}


.floating-banner{
width: 50px;/* バナーの横幅 */
padding: 10px 10px;
background: linear-gradient(86.13deg, #1c2782 -3.42%, #4376bb 59.59%);/* バナーの背景色 */
color: #fff;/* バナー内の文字色 */
font-weight: bold;
text-align: center;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
position: fixed;
z-index: 99999;
top: 15rem;
right: 0;
opacity: 0;
-webkit-transition: all 1s;
-moz-transition: all 1s;
-ms-transition: all 1s;
-o-transition: all 1s;
transition: all 1s;
}
.floating-banner_page{
width: 50px;/* バナーの横幅 */
padding: 10px 10px;
background: linear-gradient(86.13deg, #1c2782 -3.42%, #4376bb 59.59%);/* バナーの背景色 */
color: #fff;/* バナー内の文字色 */
font-weight: bold;
text-align: center;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
position: fixed;
z-index: 99999;
top: 15rem;
right: 0;
opacity: 0;
-webkit-transition: all 1s;
-moz-transition: all 1s;
-ms-transition: all 1s;
-o-transition: all 1s;
transition: all 1s;
}
.floating-banner.fixed,
.floating-banner_page.fixed{
opacity: 1;
}
.floating-banner.none,
.floating-banner_page.none{
opacity: 0;
z-index: -1;
}

.contact-banner{
background-image: url(../../img/icon_mail.png);
background-position: top center;
background-repeat: no-repeat;
background-size: auto 25px;
padding: 35px 5px 10px 5px;
}
.floating-banner a {
text-decoration: none;/* リンクに下線が入らないように */
}

.cta {
display: inline-block;
font-size: 15px;
margin: 0
}
/*@media screen and (max-width: 992px) {
.floating-banner {
display: none;
}
}*/
@media screen and (max-width: 576px) {
.floating-banner,
.floating-banner_page{
width: 100vw;
padding: 12px 8px;
-ms-writing-mode: unset;
writing-mode: unset;
text-align: center;
display: inline-block;
bottom: 0rem;
right: 0;
top:auto;
opacity: 0;
}
.floating-banner.fixed,
.floating-banner_page.fixed {
opacity: 1;
}

.contact-banner{
background-image: url(../../img/icon_mail.png);
background-position: left center;
background-repeat: no-repeat;
background-size: auto 30px;
padding: 0 0 0 55px;
width: max-content;
margin: 0 auto;
}

.cta {
height: 28px;
line-height: 28px;
font-size: 15px;
}
}

.AreaTop{
background-image: url("../../img/top_main.jpg");
width: 100%;
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
min-height: 550px;
display:flex;
justify-content: center;
align-items: center;
}
@media screen and (max-width: 576px) {
.AreaTop{
background-image: url("../../img/top_main.jpg");
width: 100%;
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
min-height: 350px;
display:flex;
justify-content: center;
align-items: center;
}
}
.AreaTop .inner{
vertical-align: middle;
text-align: center;
/*font-feature-settings: "palt";*/
color: #fff;
}
.AreaTop h1{
font-family: 'Noto Serif JP', serif;
font-size: 2.65rem;
line-height: 1.0;
margin: 1.5rem 0;
}
@media screen and (max-width: 576px) {
.AreaTop h1{
font-family: 'Noto Serif JP', serif;
font-size: 1.65rem;
line-height: 1.0;
margin: 1.5rem 0;
}
}
.AreaTop p.lead{
font-size: calc(20em / 20);
font-weight: 700;
line-height: 1.0;
}
.AreaTop span{
background:rgba(0,0,0,0.75);
padding: 5px 16px;
line-height: 1.85;
}
@media only screen and (max-width: 992px) {
.AreaTop p.lead{font-size: 1.0rem;}
}
.AreaNews{
width: 100%;
display:flex;
margin: 20px auto;
}

.AreaNews h2{
font-family: 'Noto Serif JP', serif;
font-size: 2.65rem;
font-weight: 700;
line-height: 1.35;
margin: 0 50px 0 0;
color: #0d3e80;
}

@media only screen and (max-width: 992px) {
.AreaNews h2{
font-size: 2.0rem;
}
}

.AreaNews .underline{
padding-bottom: 5px;
font-weight: bold;
font-size: 16px;
position: relative;
border-bottom: 3px solid #d2dae0;
}
.AreaNews .underline::before{
content: '';
position: absolute;
bottom: -3px;
width: 20%;
height: 3px;
background: #0d3e80;
}

.AreaNews .news_mount {
width: 100%;
margin: 20px auto;
padding-top: 5px;
clear: both;
position: relative;
font-size: calc(20em / 20);
}
@media only screen and (max-width: 992px) {
.AreaNews .news_mount {font-size: 1.0rem;}
}
.AreaNews .news_mount dl{
width: 100%;
padding: 0 0 15px 0;
border-bottom: 1px solid #d2dae0;
clear: both;
}

.AreaNews .news_mount dt,
.AreaNews .news_mount dd{
display: inline-block;
}
.AreaNews .news_mount dt{
width: 20%;
font-weight:500;
color: #0d3e80;
vertical-align: top;
}
.AreaNews .news_mount dd{
width: 77%;
background-image: url("../../img/icon_arrow.png");
background-position: left center;
background-repeat: no-repeat;
padding-left: 30px;
}

@media screen and (max-width: 576px) {
.AreaNews .news_mount dt{
width: 100%;
}
.AreaNews .news_mount dd{
width: 100%;
}
}
.AreaLead{
width: 100%;
display:flex;
justify-content: center;
align-items: center;
text-align: center;
/*font-feature-settings: "palt";*/
}

.AreaLead p{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
}
.AreaLead p.lead{
font-size: calc(20em / 20);
line-height: 2.0;
font-weight: 500;
}
@media only screen and (max-width: 992px) {
.AreaLead p{font-size: 1.0rem;}
.AreaLead p.lead{font-size: 1.0rem;}
}
.AreaLead img{
width: 100%;
height: auto;
}

.underline_thin{
border-bottom: 1px solid #000;
margin:  1.0rem 0;
}


.CasCar{
display: block;
background-color: #fff;
text-align: left;
padding: 0;
position: relative;
height: 100%;
/*font-feature-settings: "palt";*/
}
.CasCar_top{
padding: 20px 20px 0 20px;
}
.CasCar_bottom{
display: block;
border-top: 1px dotted #000;
}
.CasCar h3{
display: block;
position: absolute;
top:0;
right: 0;
background-color: #4c81c3;
font-size: calc(20em / 20);
color: #fff;
padding: 5px 10px;
}
@media only screen and (max-width: 992px) {
.CasCar h3{font-size: 1.0rem;}
}
.CasCar h4{
font-size: 1.35rem;
color: #0d3e80;
line-height: 1.55;
font-weight: 600;
margin-top: 1.5rem;
text-decoration: underline;
}

.CasCar p.user,
.CasCar a p.user{
font-size: 0.85rem;
line-height: 1.85;
font-weight: 700;
padding-bottom: 1.0rem;
color: #000;
}
.CasCar p.comp,
.CasCar a p.comp{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
padding: 20px;
color: #000;
}
@media only screen and (max-width: 992px) {
.CasCar p.comp,
.CasCar a p.comp{font-size: 1.0rem;}
}
.CasCar p.comp span.link {
background-image: url(../../img/icon_arrow_dot.png);
background-position: left center;
background-repeat: no-repeat;
background-size: auto 16px;
padding-left: 20px;
color: #0d3e80;
}
/*   h2
------------------------------------*/

h2.MountH2{
display: block;
width: 100%;
background: linear-gradient(90deg, #1c2782 0%, #4376bb 100%);
overflow: hidden;
font-family: 'Noto Serif JP', serif;
font-size: 2.25rem;
line-height: 1.35;
margin: 1.5rem 0 0 0;
text-align: center;
color: #fff;
padding: 1.25rem 0;
}
@media screen and (max-width: 576px) {
h2.MountH2{
font-size: 1.65rem;
}
}
/*   h3
------------------------------------*/
h3.TopH3{
display: block;
width: 100%;
overflow: hidden;
font-family: 'Noto Serif JP', serif;
font-size: 2.65rem;
font-weight: 600;
line-height: 1.65;
margin: 0;
text-align: center;
color: #000;
padding: 1.25rem 0;
}

.uline{
border-bottom: 5px solid;
border-image: linear-gradient(90deg, #1c2782, #4376bb, #4376bb) 1/0 0 3px;
}
@media screen and (max-width: 768px) {
h3.TopH3{
font-size: 2.0rem;
}
}
@media screen and (max-width: 576px) {
h3.TopH3{
font-size: 1.35rem;
}
}

/*   h4
------------------------------------*/
h4{
font-size: 1.45rem;
font-weight: 600;
line-height: 1.45;
color: #000;
}

h4.num{
font-size: 3.25rem;
font-weight: 600;
line-height: 1.65;
border-bottom: 3px solid;
border-image:  linear-gradient(90deg, #1c2782, #4376bb, #4376bb) 1/0 0 3px;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
background: -webkit-linear-gradient(-45deg, #1c2782 0%, #4376bb 30%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-family: 'Inter', sans-serif;
margin-top: -20px;
}


/*   Case Study
------------------------------------*/
.AreaCase{
width: 100%;
justify-content: center;
align-items: center;
text-align: center;
background-color: #5ab4c2;
margin: 2.0rem 0 0 0;
padding: 2.5rem 0;
}

.AreaCase h2{
font-size: 3.45rem;
line-height: 1.0;
color: #fff;
}

.AreaCase p.lead{
font-family: 'Noto Serif JP', serif;
font-size: 1.65rem;
font-weight: 600;
line-height: 1.65;
margin: 1.5rem 0;
text-align: center;
color: #fff;
margin: 0 0 3.0rem 0;
padding: 1.5rem 0 0 0;
}
@media screen and (max-width: 576px) {
.AreaCase h2{font-size: 2.45rem;}
.AreaCase p.lead{font-size: 1.15rem;}
}
/*   Navi
------------------------------------*/
.AreaNav{
width: 100%;
justify-content: center;
align-items: center;
text-align: left;
background-color: #e1edf6;
margin: 0;
padding: 2.5rem 0;
}

.AreaNav img{
width: 100%;
height: auto;
padding: 0.5rem 0;
}

/*   Contact
------------------------------------*/
.AreaContact{
width: 100%;
justify-content: center;
align-items: center;
text-align: center;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
margin: 0;
padding: 2.5rem 0;
}

.AreaContact h2{
font-size: 3.45rem;
line-height: 1.0;
color: #fff;
}

.AreaContact p.lead{
font-family: 'Noto Serif JP', serif;
font-size: 1.65rem;
font-weight: 600;
line-height: 1.65;
margin: 1.5rem 0;
text-align: center;
color: #fff;
margin: 0 0 1.0rem 0;
padding: 1.5rem 0 0 0;
}
@media screen and (max-width: 576px) {
.AreaContact  h2{font-size: 2.45rem;}
.AreaContact  p.lead{font-size: 1.15rem;}
}
.AreaContact .indent{
display: inline;
margin: 0 0.5rem;
line-height: 4.0;
}
@media only screen and (max-width: 992px) {
.AreaContact .indent{
display: inline;
margin: 0 0.5rem;
line-height: 1.5;
}
}
.AreaContact .contact_list{
width: 100%;
padding: 0;
}

.AreaContact .contact_tel{
width: 100%;
background-color: #fff;
margin: 1.5rem 0;
padding: 1.5rem 0;
}
.AreaContact .contact_tel p{
background-image: url("../../img/icon_tel.png");
background-position: left center;
background-repeat: no-repeat;
background-size: 85px 85px;
padding-left: 85px;
display: -webkit-inline-box;
min-height: 85px;
}

.AreaContact .contact_tel p span{
font-size: 2.55rem;
font-weight: 700;
line-height: 1.65;
color: #1f96e6;
font-family: 'Inter', sans-serif;
margin-top: 0;
}

@media screen and (max-width: 576px) {
.AreaContact .contact_tel p{
background-image: url("../../img/icon_tel.png");
background-position: left center;
background-repeat: no-repeat;
background-size: 55px 55px;
padding-left: 85px;
display: -webkit-inline-box;
min-height: 55px;
}
.AreaContact .contact_tel p span{font-size: 1.85rem;}
}

/* Page
----------------------------------------------------------*/
.pankuzu{
font-size: 0.85rem;
line-height: 1.85;
font-weight: 400;
padding: 0;
text-align: left;
}

.Pge01AreaTop{
width: 100%;
background-size: cover;
background-position: bottom center;
background-repeat: no-repeat;
min-height: 340px;
display:flex;
justify-content: center;
align-items: center;
}
.Pge01AreaTop .inner{
vertical-align: middle;
text-align: center;
/*font-feature-settings: "palt";*/
color: #fff;
}

.Pge01AreaTop h1{
display: block;
width: 100%;
background: linear-gradient(90deg,rgba(28,39,130,0.95),rgba(67,118,187,0.95));
overflow: hidden;
font-family: 'Noto Serif JP', serif;
font-size: 2.75rem;
line-height: 1.0;
margin: 1.5rem 0 0 0;
text-align: center;
color: #fff;
padding: 1.55rem 0;
}
@media screen and (max-width: 576px) {
.Pge01AreaTop h1{
font-size: 1.65rem;
}
}
.bgphoto01{
background-image: url("../../img/tl_ph01.jpg");
}
.bgphoto02{
background-image: url("../../img/tl_ph02.jpg");
}
.bgphoto03{
background-image: url("../../img/tl_ph03.jpg");
}
.bgphoto04{
background-image: url("../../img/tl_ph04.jpg");
}
.bgphoto05{
background-image: url("../../img/tl_ph05.jpg");
}
.bgphoto06{
background-image: url("../../img/tl_ph06.jpg");
}
.bgphoto07{
background-image: url("../../img/tl_ph07.jpg");
}
.bgphoto08{
background-image: url("../../img/tl_ph08.jpg");
}
.PgeLead{
width: 100%;
display:flex;
justify-content: center;
align-items: center;
text-align: center;
/*font-feature-settings: "palt";*/
margin-top: 2.0rem;
}

.PgeLead p.lead{
font-size: 1.1rem;
line-height: 2.25;
font-weight: 500;
padding: 1.0rem 0 2.0rem 0;
}

.PgePoint{
width: 100%;
display:flex;
justify-content: center;
align-items: center;
text-align: left;
/*font-feature-settings: "palt";*/
margin-top: 2.0rem;
padding: 0 0 4.0rem 0;
}

.PgePoint p{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
}
.PgePoint p.lead{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
}

.PgePoint p span{
font-size: 0.85rem;
}
.PgePoint img{
width: 100%;
height: auto;
}
.PgePoint img.origin{
width: max-content;
height: auto;
}

@media screen and (max-width: 992px) {
.PgePoint img.origin{
width: max-content;
height: auto;
}
.PgePoint p{font-size:1.0rem;}
.PgePoint p.lead{font-size:1.0rem;}
}
.mount_line{
background-image: url("../../img/mount_line.png");
background-position: left top 40px;
background-repeat: no-repeat;
padding-left: 120px;
padding-right: 2rem;
padding-top: 0rem;
}
@media only screen and (max-width: 992px) {
.mount_line{
padding-top: 2.0rem;
background-position: left top 70px;
}
}
@media screen and (max-width: 576px) {
.mount_line{
padding-left: 35px;
padding-right: 2rem;
background-size: 30px 3px;
padding-top: 2.0rem;
background-position: left top 70px;
}
}

.PgePoint h2{
display: inline-block;
font-size: 1.45rem;
font-weight: 600;
line-height: 1.65;
vertical-align: top;
}
.PgePoint h2.num{
font-size: 3.25rem;
font-weight: 600;
line-height: 1.65;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
background: -webkit-linear-gradient(-45deg, #1c2782 0%, #4376bb 30%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-family: 'Inter', sans-serif;
margin-top: 0;
padding-right: 10px;
}

.PgeStep,
.PgeVoice,
.PgeCase,
.PgeComp,
.PgePolicy,
.PgeNews{
width: 100%;
display:flex;
justify-content: center;
align-items: center;
text-align: left;
/*font-feature-settings: "palt";*/
margin-top: 0rem;
padding: 0 0 4.0rem 0;
}
.PgeContact{
width: 100%;
display:flex;
justify-content: center;
align-items: center;
text-align: left;
/*font-feature-settings: "palt";*/
margin-top: 0rem;
padding: 0 0 4.0rem 0;
}
.PgeStep h2,
.PgeVoice h2{
display: block;
width: 100%;
overflow: hidden;
font-family: 'Noto Serif JP', serif;
font-size: 2.35rem;
line-height: 1.0;
margin: 1.5rem 0 0 0;
text-align: center;
color: #000;
padding: 1.55rem 0;
}

.PgeComp h2,
.PgePolicy h2{
font-size: 2.35rem;
color: #000;
padding: 1.55rem 0 0.55rem 0;
font-weight: 600;
line-height: 1.65;
border-bottom: 8px solid;
border-image: linear-gradient(90deg, #1c2782, #4376bb, #4376bb) 1/0 0 8px;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
background: -webkit-linear-gradient(-45deg, #1c2782 0%, #4376bb 30%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-family: 'Noto Serif JP', serif;
margin-top: 0;
}
@media screen and (max-width: 576px) {
.PgeStep h2,
.PgeVoice h2,
.PgeComp h2,
.PgePolicy h2{
font-size: 1.65rem;
}
}
.PgeContact h2{
font-size: 1.65rem;
color: #000;
padding: 1.55rem 0 0.55rem 0;
font-weight: 600;
line-height: 1.65;
border-bottom: 8px solid;
border-image: linear-gradient(90deg, #1c2782, #4376bb, #4376bb) 1/0 0 8px;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
background: -webkit-linear-gradient(-45deg, #1c2782 0%, #4376bb 30%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
font-family: 'Noto Serif JP', serif;
margin-top: 0;
text-align: center;
letter-spacing: -0.03em;
}
@media screen and (max-width: 576px) {
.PgeContact h2{
font-size: 1.25rem;
}
}
.PgeNews h2{
display: block;
width: 100%;
overflow: hidden;
font-size: 1.65rem;
line-height: 1.0;
margin: 0.5rem 0 0 0;
text-align: left;
color: #000;
padding: 1.55rem 0;
}

.PgeStep .step_waku{
text-align: left;
width: 100%;
border: 4px solid #4376bb;
padding: 20px;
margin-top: 40px;
overflow: hidden;
}

.PgeStep .step_arrow{
position: relative;
width: 100%;
}
.PgeStep .step_arrow::after{
content: '';
position: absolute;
top: 100%;
left: calc(75vw - 50%);
width: 0;
height: 0;
border-top: 35px solid #78a2ce;
border-left: 5vw solid transparent;
border-right: 5vw solid transparent;
}

@media screen and (max-width: 992px) {
.PgeStep .step_arrow::after{
left: 45%;
}
}
.PgeStep h3{
display: inline-block;
font-size: 1.65rem;
font-weight: 600;
line-height: 1.65;
vertical-align: top;
font-family: 'Noto Serif JP', serif;
}
.PgeStep h3.step{
display: inline-block;
font-size: 1.45rem;
font-weight: 600;
line-height: 1.85;
vertical-align: top;
font-family: 'Inter', sans-serif;
color: #fff;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
background: -webkit-linear-gradient(-45deg, #1c2782 0%, #4376bb 30%);
padding: 2px 10px;
margin-right: 1.0rem;
}
.PgeStep p,
.PgeVoice p,
.PgeCase p{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
padding-top: 0.5rem;
}
@media screen and (max-width: 992px) {
.PgeStep p,
.PgeVoice p,
.PgeCase p{font-size:1.0rem;}
}
.PgeStep img{
width: 100%;
height: auto;
}

.PgeVoice .v_mount{
text-align: left;
background-color: #e1edf6;
padding: 40px;
height: 100%;
}

.PgeCase h2{
display: block;
width: 100%;
overflow: hidden;
font-family: 'Noto Serif JP', serif;
font-size: 1.85rem;
font-weight: bold;
line-height: 1.0;
margin: 1.5rem 0 0 0;
text-align: left;
color: #000;
padding: 1.55rem 0 0 0;
}
.PgeVoice h3,
.PgeCase h3{
font-size: 1.55rem;
color: #0d3e80;
line-height: 1.65;
background-color: #e1edf6;
display: inline;
}
.PgeCase h4{
display: inline-block;
font-size: 1.15rem;
font-weight: 400;
line-height: 1.85;
vertical-align: top;
font-family: 'Inter', sans-serif;
color: #fff;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
background: -webkit-linear-gradient(-45deg, #1c2782 0%, #4376bb 30%);
padding: 2px 10px;
margin: 1rem 0 0 0;
}

.PgeVoice p.user{
font-size: 1.15rem;
line-height: 1.85;
font-weight: 600;
padding-top: 0.5rem;
}

.PgeVoice .mount_user01{
background-image: url("../../img/pict_user01.png");
background-position: right 30px top 20px;
background-repeat: no-repeat;
}

.PgeVoice .mount_user02{
background-image: url("../../img/pict_user02.png");
background-position: right 30px top 20px;
background-repeat: no-repeat;
}

.PgeVoice .mount_user03{
background-image: url("../../img/pict_user03.png");
background-position: right 30px top 20px;
background-repeat: no-repeat;
}

.PgeVoice .mount_user04{
background-image: url("../../img/pict_user04.png");
background-position: right 30px top 20px;
background-repeat: no-repeat;
}


@media screen and (max-width: 552px) {
.PgeVoice .v_mount {
text-align: left;
background-color: #e1edf6;
padding: 180px 40px 40px 40px;
height: 100%;
}
.PgeVoice .mount_user01{
background-position: center top 20px;
}

.PgeVoice .mount_user02{
background-position: center top 20px;
}

.PgeVoice .mount_user03{
background-position: center top 20px;
}

.PgeVoice .mount_user04{
background-position: center top 20px;
}

}

.PgeCase .cp_tasc{
padding: 0 1.5rem;
}
.PgeCase .tasc{
float: left;
font-size: 1.55rem;
color: #0d3e80;
line-height: 1.55;
font-weight: 600;
}

.PgeCase .user{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
padding-top: 0.5rem;
float: right;
}
@media screen and (max-width: 992px) {
.PgeCase .user{font-size:1.0rem;}
}
.gaiyou{
border-bottom: 1px solid #ccc;
padding: 1.5rem 0 1.0rem 20px;
/*text-indent: -20px;*/
}

.jigyou{
border-bottom: 1px solid #ccc;
padding: 2.0rem 0 1.0rem 0;
}
.gaiyou h3{
font-size: 1.05rem;
line-height: 1.65;
}
.jigyou h3{
font-size: 1.35rem;
line-height: 1.65;
}

.gaiyou p,
.jigyou p{
line-height: 1.65;
}

.PgePolicy h3{
font-size: 1.15rem;
color: #000;
line-height: 1.65;
text-align: left;
padding: 2.0rem 0 1.0rem 0;
}
.PgePolicy h4{
font-size: calc(20em / 20);
color: #000;
line-height: 1.65;
text-align: left;
}
@media screen and (max-width: 992px) {
.PgePolicy h4{font-size:1.0rem;}
}
.PgePolicy p{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
padding: 0.25rem 1.0rem 2.5rem 1.0rem;
text-align: left;
}
@media screen and (max-width: 992px) {
.PgePolicy p{font-size:1.0rem;}
}
.PgePolicy ol{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
padding: 0rem 1.0rem 2.5rem 2.0rem;
text-align: left;
}
@media screen and (max-width: 992px) {
.PgePolicy ol{font-size:1.0rem;}
}
.PgePolicy ol li{
padding: 0.25rem 1.0rem 1.5rem 1.0rem;
list-style: decimal;
}

.PgePolicy ol li span{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 600;
}
@media screen and (max-width: 992px) {
.PgePolicy ol li span{font-size:1.0rem;}
}
.PgePolicy .contact_waku{
border: 2px solid #ccc;
border-radius: 16px;
padding:1.0rem;
text-align: center;
line-height: 1.65;
}

.PgePolicy .contact_waku p{
/*font-size: 0.9rem;*/
padding: 1.0rem 0 0 0;
text-align: center;
}


.PgePolicy ul.pr_nk li{
text-indent: -3.0em;
padding-left: 2.3em;
padding-bottom: 0;
list-style:none;
}


.PgePolicy .policy_detail{
display: block;
margin-top: 10px
}

.PgePolicy .policy_detail table{
border-collapse: collapse;
width: 100%;
}

.PgePolicy .policy_detail table thead{
background-color: #666666
}

.PgePolicy .policy_detail table thead tr th {
padding: 16px 0;
font-size: 0.9em;
font-weight: bold;
color: #ffffff;
line-height: 1
}

.PgePolicy .policy_detail table thead tr th+th {
border-left: 2px solid #ffffff
}

.PgePolicy .policy_detail table thead tr th.company {
/*width: 414px*/
width: 50%;
}

.PgePolicy .policy_detail table thead tr th.policy {
/*width: 415px*/
width: 50%;
}

.PgePolicy .policy_detail table thead tr th.mark {
width: 121px
}

.PgePolicy .policy_detail table tbody {
border: 2px solid #ebebeb
}

.PgePolicy .policy_detail table tbody tr td {
position: relative;
text-align: center;
vertical-align: middle;
padding: 12px 0;
font-size: 0.9em;
font-weight: normal;
line-height: 1
}
.PgePolicy .policy_detail table tbody tr td:nth-child(2) a {
font-size: 1em;
font-weight: normal;
line-height: 1;
text-decoration: underline
}

.PgePolicy .policy_detail table tbody tr td:nth-child(2) a:hover {
opacity: 1;
text-decoration: none
}

.PgePolicy .policy_detail table tbody tr td:nth-child(3) {
font-size: 0;
line-height: 0
}

.PgePolicy .policy_detail table tbody tr td:nth-child(3)>a {
display: block;
width: 74px;
margin: 0 auto
}

.PgePolicy .policy_detail table tbody tr td:nth-child(3)>a img {
width: 100%;
-webkit-backface-visibility: hidden
}

.PgePolicy .policy_detail table tbody tr:nth-child(odd) {
background-color: #ffffff
}

.PgePolicy .policy_detail table tbody tr:nth-child(odd) td+td {
border-left: 2px solid #ebebeb
}

.PgePolicy .policy_detail table tbody tr:nth-child(even) {
background-color: #ebebeb
}

.PgePolicy .policy_detail table tbody tr:nth-child(even) td+td {
border-left: 2px solid #ffffff
}

@media screen and (max-width: 992px) {
.PgePolicy .policy_detail table {
width: 100%;
border-collapse: collapse
}

.PgePolicy .policy_detail table tbody {
border: 1px solid #f4f4f4
}

.PgePolicy .policy_detail table tbody tr td {
position: relative;
width: 100%;
padding: 10px 0;
font-size: 15px;
font-weight: normal;
color: #000000;
vertical-align: middle;
text-align: center;
line-height: 1;
display: block;
background-color: #ffffff;
border-left: 1px solid #f4f4f4;
border-top: 1px solid #f4f4f4;
}

.PgePolicy .policy_detail table tbody tr td:nth-child(2) {
width: 100%;
display: block;
}

.PgePolicy .policy_detail table tbody tr td:nth-child(2) a {
display: block;
width: 47px;
margin: 0 auto
}

.PgePolicy .policy_detail table tbody tr td:nth-child(2) a img {
-webkit-backface-visibility: hidden
}

.PgePolicy .policy_detail table tbody tr:nth-child(even) td a {
text-decoration: underline
}

.PgePolicy .policy_detail table tbody tr:nth-child(even) td a:hover {
text-decoration: none;
opacity: 1
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+1) {
background-color: #f4f4f4
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+1) td:last-child {
border-left: 1px solid #f4f4f4
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+2) {
background-color: #ffffff
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+2) td {
border-top: 1px solid #f4f4f4
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+3) {
background-color: #ffffff
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+3) td:last-child {
border-left: 1px solid #f4f4f4
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+4) {
background-color: #ffffff
}

.PgePolicy .policy_detail table tbody tr:nth-child(4n+4) td {
border-top: 1px solid #f4f4f4
}
.PgePolicy .policy_detail table tbody tr:nth-child(even) td+td {
border-left: 1px solid #f4f4f4
}
}


.ScHealth{
padding-top: 1.0rem;
padding-bottom: 3.0rem;
}
.ScHealth ol{
  font-size: calc(20em / 20);
  line-height: 1.85;
  font-weight: 400;
  padding: 1.0rem 1.0rem 1.0rem 2.0rem;
  text-align: left;
}
.ScHealth ol li{
  list-style: decimal;
}
.ScHealth h3{
font-size: 1.45rem;
font-weight: 600;
line-height: 1.85;
vertical-align: top;
font-family: 'Inter', sans-serif;
color: #fff;
background: linear-gradient(135deg, #1c2782 0%, #4376bb 30%);
background: -webkit-linear-gradient(-45deg, #1c2782 0%, #4376bb 30%);
padding: 2px 10px;
margin-right: 1.0rem;
}
.ScHealth h4 {
font-size: calc(20em / 20);
color: #1c2782;
line-height: 1.65;
text-align: left;
margin-top: 1.0rem;
}

table.suii{
font-size: 0.9rem;
width: 90%;
border-top: 1px solid #000;
border-left: 1px solid #000;
margin:20px;
border-spacing:0;
border-collapse: 0;
}
table.suii tr{border: none;}
table.suii th{
border-bottom: 1px solid #000;
border-right: 1px solid #000;
padding: 6px;
background-color: #EFFAC9;
text-align: center;
font-weight: normal;
}
table.suii td{
font-size: 0.9rem;
font-weight: normal;
width:60%;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
padding: 6px;
text-align: left;
}
table.suii td.unit{
width:20%;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
padding: 6px;
text-align: right;
}

table.naka{
font-size: 0.9rem;
border-top: 1px solid #000;
border-left: 1px solid #000;
margin:20px 0;
border-spacing:0;
border-collapse: 0;
}

table.naka_group{
font-size: 0.9rem;
border-top: 1px solid #000;
border-left: 1px solid #000;
margin:0 20px 20px 20px;
border-spacing:0;
border-collapse: 0;
width: 100%;
}
table.naka td{
font-size: 0.9rem;
font-weight: normal;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
padding: 6px;
text-align: center;
padding: 6px;
line-height: 1.85;
}
table.naka_group td{
font-size: 0.9rem;
font-weight: normal;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
padding: 6px;
text-align: left;
padding: 6px;
line-height: 1.85;
}

.PgeNews p{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 400;
padding: 0.25rem 0 1.5rem 0;
text-align: left;
}

.PgeNews p.newsday,
.entry-date,
.cat-links a{
font-size: calc(20em / 20);
line-height: 1.85;
font-weight: 700;
padding: 0.25rem 0;
text-align: left;
margin: 1.5rem 0 0 0;
}
.PgeNews .newswaku{
border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 992px) {
.PgeNews p,
.PgeNews p.newsday,
.entry-date,
.cat-links a{font-size:1.0rem;}
}
/* footer
----------------------------------------------------------*/

body #wrapper footer {
margin-top: 0;
}

#footer-pagetop {
position: fixed;
right: 0px;
bottom: 0px;
overflow: hidden;
width: 50px;
background-color: #000;
-webkit-transition: opacity 300ms;
transition: opacity 300ms;
z-index: 100;
}

#footer-pagetop:hover {
opacity: 0.7;
}

@media screen and (max-width: 738px) {
#footer-pagetop {
right: 0;
bottom: 0;
width: 10vw;
}
}

@media screen and (max-width: 576px) {
#footer-pagetop {
bottom: 0;
}
}

.footer-pagetop__link {
position: relative;
display: block;
padding-top: 50px;
height: 0;
}

@media screen and (max-width: 738px) {
.footer-pagetop__link {
padding-top: 10vw;
}
}

.footer-pagetop__link:after {
position: absolute;
top: 50%;
left: 50%;
display: block;
width: 0;
height: 0;
border-width: 0 10px 10px 10px;
border-style: solid;
border-color: transparent transparent #fff transparent;
content: "";
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}

@media screen and (max-width: 738px) {
.footer-pagetop__link:after {
border-width: 0 2.5vw 2.5vw 2.5vw;
}
}

.AreaBody01{
background-color: #fff;
margin: 0;
color: #000;
line-height: 1.75;
font-size: calc(20em / 20);
padding: 0;
overflow:hidden;
}

.AreaBody01  p.lead{
text-align: left;
font-size: 1.15rem;
font-weight: 500;
}
@media screen and (max-width: 992px) {
.AreaBody01{font-size:1.0rem;}
}
@media screen and (max-width: 576px) {
.AreaBody01 h2{
font-size: 1.35rem;
}
.AreaBody01 h3{
font-size: 1.15rem;
}
.AreaBody01 table{
font-size: 0.85rem;
}
}



.AreaBodyCi{
width: 100%;
background: linear-gradient(180deg, #ffffff 0%, #ffffff 40%, #2a5297 40%, #2a5297 100%);
overflow: hidden;

}
.AreaBodyCi .mount{
background-image: url("../../img/bg_circle.png");
background-size: contain;
background-position: top center;
background-repeat: no-repeat;
padding: 60px 0;
text-align: center;
}
@media screen and (max-width: 992px) {
.AreaBodyCi .mount{
background-size: cover;
}
}

.AreaBodyCi .mount_red{
background-image: url("../../img/fukidashi_red.png");
background-size: 100%;
background-position: top center;
background-repeat: no-repeat;
min-height: 200px;
position: relative;
}
.AreaBodyCi .mount_blue{
background-image: url("../../img/fukidashi_blue.png");
background-size: 100%;
background-position: top center;
background-repeat: no-repeat;
min-height: 200px;
position: relative;
}

@media screen and (max-width: 576px) {
.AreaBodyCi .mount_red{
background-image: url("../../img/fukidashi_red_yoko.png");
background-size: cover;
background-position: top right;
background-repeat: no-repeat;
position: relative;
}
.AreaBodyCi .mount_blue{
background-image: url("../../img/fukidashi_blue_yoko.png");
background-size: cover;
background-position: top left;
background-repeat: no-repeat;
position: relative;
}

}

.AreaBodyCi .mount_red .exp{
color: #fff;
padding: 40px 100px 40px 100px ;
}
.AreaBodyCi .mount_blue .exp{
color: #fff;
padding: 40px 100px 40px 100px ;
}


.budge_c1{
position: absolute;
top:-80px;
left: 50px;
}
.budge_c2{
position: absolute;
top:-100px;
right: 50px;
}
@media screen and (max-width: 992px) {
.AreaBodyCi .mount_red .exp{
color: #fff;
padding: 40px 100px 40px 40px ;
}
.AreaBodyCi .mount_blue .exp{
color: #fff;
padding: 40px 40px 40px 100px ;
}
.budge_c1{
top:-40px;
left: 20px;
width: 60px;
}
.budge_c2{
top:-60px;
right: 50px;
width: 80px;
}
}
@media screen and (max-width: 576px) {
.AreaBodyCi .mount_red .exp{
color: #fff;
padding: 40px 10px ;
}
.AreaBodyCi .mount_blue .exp{
color: #fff;
padding: 60px 10px 40px 10px;
}
.budge_c1{
top:-40px;
left: 20px;
}
.budge_c2{
top:-40px;
left: 20px;
}
}

.AreaBodyCi .row_sp{
margin-top: 50px;
}

.AreaBodyCi h2{
font-size: 3.0rem;
line-height: 1.55;
padding: 0;
font-size: 3.0rem;
line-height: 1.45;
color: #2a5297;
font-weight: 700;
}
.AreaBodyCi h2 .d1{
font-size: 2.2rem;
}
.AreaBodyCi h2 .d2{
font-size: 2.4rem;
color: #fed100;
background-color: #2a5297;
padding: 7px 16px;
}
.AreaBodyCi h2 .d3{
font-size: 2.6rem;
color: #000;
padding: 2px 3px;
}

@media screen and (max-width: 576px) {
.AreaBodyCi h2{
font-size: 1.5rem;
line-height: 1.85;
}
.AreaBodyCi h2 .d1{
font-size: 1.2rem;
}
.AreaBodyCi h2 .d2{
font-size: 1.4rem;
}
.AreaBodyCi h2 .d3{
font-size: 1.5rem;
}
}

.AreaBodyCi  p{
text-align: left;
font-size: 0.95rem;
line-height: 1.75;
}

.AreaBodyCi  p.lead{
text-align: left;
font-size: 1.15rem;
text-decoration: underline;
font-weight: 500;
}


.AreaBody02{
background-color: #2a5297;
margin: 0;
color: #fff;
line-height: 1.75;
font-size: 1.25rem;
padding: 0 0 60px 0;
width: 100%;
}

.AreaBody02 h2{
background-image: url("../../img/line_tate_a.png");
background-position: top center;
background-repeat: no-repeat;
font-size: 3.0rem;
line-height: 1.35;
padding: 119px 0 0px 0;
font-size: 3.0rem;
line-height: 1.35;
color: #fff;
font-weight: 700;
}
.AreaBody02 h3{
font-size: 1.3rem;
line-height: 1.35;
padding: 10px 0;
color: #000;
font-weight: 700;
}

.AreaBody02 p.lead {
margin-top: 0;
font-size: 1.15rem;
text-align: left;
font-weight: 500;
padding: 10px 0;
}


@media screen and (max-width: 576px) {
.AreaBody02 h2{
font-size: 1.65rem;
padding: 119px 0 0px 0;
}
}

.AreaBody02 .inner-box{
background-color: #fff;
color: #000;
text-align: center;
margin: 0;
height: 100%;
position: relative;
overflow:hidden;
}
.AreaBody02 .inner-box img{
width: 100%;
transition:1s all;
}
.AreaBody02 .inner-box img:hover{
transform:scale(1.1,1.1);
transition:1s all;
}
.AreaBody02 .inner-box_txt{
padding: 10px;
}
.AreaBody02 .inner-box_txt p{
text-align: left;
font-size: 0.95rem;
line-height: 1.65;
}

.boxnum{
display: block;
position: absolute;
background-color: #fed100;
width: 50px;
height: 50px;
top:0;
left: 0;
color: #000;
font-size: 36px;
line-height: 0;
font-weight: 700;
text-align: center;
padding: 22px 0 0 0;
}


.AreaBody02 .inner-box_7{
color: #fff;
text-align: center;
margin: 0;
height: 100%;
position: relative;
}
.AreaBody02 .inner-box_7 h3{
font-size: 1.45rem;
line-height: 1.85;
padding: 10px 0;
color: #fff;
font-weight: 700;
}
.AreaBody02 .inner-box_7 p{
text-align: left;
font-size: 0.95rem;
line-height: 1.65;
}

.boxnum_7{
display: block;
position: absolute;
background-color: #fed100;
width: 50px;
height: 50px;
top:10px;
left: 0;
color: #000;
font-size: 36px;
line-height: 0;
font-weight: 700;
text-align: center;
padding: 22px 0 0 0;
}


.AreaBody03{
background-color: #e5eff8;
display: flex;
justify-content: center;
align-items: center;
width: 100%;
margin: 0;
color: #000;
line-height: 1.75;
font-size: 1.25rem;
padding: 0 0 0 0;
position: relative;
}

.tate{
position: absolute;
top:0;
left: 50%;
right: 50%;
z-index: 200000000;
}
.AreaBody03 h2{
font-size: 2.2rem;
line-height: 1.55;
padding: 0;
color: #2a5297;
font-weight: 700;
}
.AreaBody03 h3{
font-size: 1.65rem;
line-height: 1.35;
font-weight: 700;
}
.AreaBody03 .seeit_logo{
padding: 120px 0 20px 20px;
}
.AreaBody03 .seeit_logo img{
padding: 20px 0;
}
.AreaBody03 .seeit_logo p{
text-align: left;
font-size: calc(20em / 20);
width: 96%;
}

.AreaBody03 p.lead{
text-align: center;
font-size: calc(20em / 20);
font-weight: 500;
}

@media screen and (max-width: 992px) {
.AreaBody03 .seeit_logo p,
.AreaBody03 p.lead{font-size:1.0rem;}
}

.AreaBody03 h4{
font-size: 1.2rem;
line-height: 1.65;
padding: 7px 0;
color: #2a5297;
font-weight: 700;
text-align: left;
border-bottom: 1px solid #2a5297;
}

.AreaBody03 .seeitai p{
text-align: left;
font-size: 0.95rem;
line-height: 1.65;
padding: 0 0 1rem 0;
}


@media screen and (max-width: 992px) {
.AreaBody03 p{font-size:1.0rem;}
.AreaBody03 .seeit_logo p{
text-align: left;
font-size: 0.95rem;
width: 100%;
}
}
.future{
width: 100%;
padding: 20px 0;
}
.future p{
display: block;
border: 1px solid #fff;
text-align: center;
padding: 20px;
width: 100%;
color: #fff;
line-height: 1.55;
}

@media screen and (max-width: 576px) {
.AreaBody03 h2{
font-size: 1.35rem;
}
.AreaBody03 .seeit_logo{
padding: 120px 0 10px 0;
text-align: center;
}
.AreaBody03 .seeit_logo img{
padding: 20px 0;
width: 90%;
}
}


.AreaBody04{
background-color: #fff;
margin: 0;
color: #000;
line-height: 1.75;
font-size: 1.25rem;
padding: 40px 0 40px 0;
}

.AreaBody04 h2{
font-size: 2.2rem;
line-height: 1.55;
padding: 0;
color: #2a5297;
font-weight: 700;
}
.AreaBody04 p.lead{
text-align: center;
font-size: calc(20em / 20);
font-weight: 500;
}
@media screen and (max-width: 992px) {
.AreaBody04 p.lead{font-size:1.0rem;}
}
@media screen and (max-width: 576px) {
.AreaBody04 h2{
font-size: 1.35rem;
}
}

.AreaBody05{
background-color: #2a5297;
margin: 0;
padding: 40px 0;
}


.AreaBody06{
background-color: #666a6d;
background-image: url("../../img/bg_ph01.jpg");
background-position: top center;
background-repeat: no-repeat;
background-size: 100%;
top: 0px;
position: relative;
color: #fff;
text-align: left;
margin: 0;
padding: 0;
}

.AreaBody06 h2{
background-image: url("../../img/line_tate_b.png");
background-position: top center;
background-repeat: no-repeat;
font-size: 3.0rem;
line-height: 1.35;
padding: 180px 0 0px 0;
color: #fff;
font-weight: 700;
margin-top: 0px;
}


.AreaBody06 h3{
font-size: 1.6rem;
line-height: 1.35;
padding: 30px 20px;
color: #fff;
background: linear-gradient(90deg, #1e3c72, #2a5298);
display: block;
border-radius: 24px;
font-weight: 700;
text-align: center;
margin-top: 30px;
}

.AreaBody06 h4{
font-size: 2.75rem;
line-height: 1.35;
padding: 6px 0;
margin-top: 40px;
font-weight: 700;
border-bottom: 10px solid;
border-image: linear-gradient(90deg, #1e3c72, #2a5298);
border-image-slice: 1;
letter-spacing: -0.03em;
}

.AreaBody06 h5{
font-size: 1.35rem;
line-height: 1.35;
font-weight: 700;
}
.AreaBody06 h5:before {
position: relative;
/*top: 4px;*/
margin: 0 5px 0 0;
content: '◉';
}
@media screen and (min-width:991px) and ( max-width:1024px) {
.AreaBody06 h4{
font-size: 2.25rem;
}
.AreaBody06 h5{
font-size: 1.25rem;
}
}

@media screen and (max-width: 576px) {
.AreaBody06 h2{
font-size: 1.65rem;
}
.AreaBody06 h3{
font-size: 1.25rem;
}
.AreaBody06 h4{
font-size: 2.0rem;
}
}

.AreaBody06 .kadomaru{
background-color: #fff;
border-radius: 24px;
text-align: left;
color: #000;
padding: 10px 50px  30px;
width: 96%;
margin: 30px auto;
}
.AreaBody06 .kadomaru_notice{
padding: 10px 0;
width: 96%;
margin: 30px auto;
}

@media screen and (max-width: 576px) {
.AreaBody06 .kadomaru{
padding: 10px 20px  30px;
width: 96%;
}
}
.AreaBody06 p {
text-align: left;
font-size: 0.95rem;
line-height: 1.65;
}

.AreaBody06 .notice{
text-align: left;
padding: 10px 0;
}


/*---------------------*/
.include{
font-size: 1.35rem;
font-weight: 700;
}
.AreaBody06 p.fee{
font-weight: 700;
display: flex;
align-items: center;
line-height: 1.0;
margin: 0;
}
.yen{
font-family: 'Jost', sans-serif;
font-size:4.85rem;
font-weight: 700;
padding: 0 6px 0 20px;
letter-spacing: -0.03em;
margin-bottom: 1rem;
}
.yen_option{
font-family: 'Jost', sans-serif;
font-size:1.85rem;
font-weight: 700;
padding: 0 3px 0 6px;
letter-spacing: -0.03em;
margin-bottom: 1rem;
}
.space_pc{
padding-right: 1rem;
}
@media only screen and (max-width: 992px) {
.space_pc{
padding-right:0;
}
}
.monthly{
display: block;
text-align: center;
font-size:1.75rem;
font-weight: 700;
background: linear-gradient(90deg, #1e3c72, #2a5298);
padding: 20px 15px;
color: #fff;
}
.unit{
font-size: 1.75rem;
}
@media screen and (min-width:991px) and ( max-width:1024px) {
.yen{
font-size:4.2rem;
}
.monthly{
padding: 15px 10px;
font-size:1.35rem;
}
.unit{
font-size: 1.25rem;
}
}


.AreaBody06 p.fee_notice{
font-size: 1.35rem;
font-weight: 600;
}
@media screen and (max-width: 576px) {
.monthly{
padding: 10px 5px;
font-size:0.95rem;
}
.yen{
font-size:2.45rem;
padding: 0 6px 0 6px;
}
.AreaBody06 p.fee_notice{
font-size: 0.95rem;
}
.unit {
font-size: 0.85rem;
}
}

.AreaBody06 ul{
text-align: left;
font-size: calc(20em / 20);
line-height: 1.65;
}
.AreaBody06 ul li{
list-style: disc;
}
@media screen and (max-width: 992px) {
.AreaBody06 ul{font-size:1.0rem;}
}
@media screen and (max-width: 576px) {
.AreaBody06 ul{
padding-left: 30px;
}

}
.jost{
font-family: 'Jost', sans-serif;
font-weight: 700;
letter-spacing: -0.03em;
}
/*---------------------*/
.prod_name{
display: block;
text-align: left;
width: 100%;
}
.prod_name h5{
display: inline-block;
text-align: left;
font-weight: 700;
font-size: 1.05rem;
}
/*---------------------*/
.price{
padding: 0 20px;
}

.set{
padding: 20px;
border: 4px solid #1e3c72;
border-radius: 16px;
}

.basic{
padding: 20px;
border-radius: 16px;
background-color: #e5eff8;
margin: 20px 0;
}
.option{
margin: 20px 0;
}

.nrb{
display: inline-block;
}
/*---------------------*/

table.optionT {
width: 100%;
margin-bottom: 5px;
border-collapse: separate;
border-spacing: 0;
white-space: nowrap;
border-radius: 10px;
background-color: #fff;
overflow: hidden;
}
table.optionT th, td {
padding-top: 0;
padding-bottom: 0;
font-weight: bold;
letter-spacing: 0;
line-height: 1;
font-size: 1.15rem;
vertical-align: middle;
}

table.optionT th {
text-align: center;
background-color: #bc0101;
padding: 24px 13px;
color: #fff;
width: 30%;
}
@media only screen and (max-width: 992px) {
table.optionT th {
width: 40%;
}
}
table.optionT td {
background-color: #f8d8db;
text-align: center;
padding: 24px 13px;
color:#000;
}
/*---------------------*/

@media screen and (max-width: 576px) {
table.optionT th {
width: 100%;
display: block;
}
table.optionT td {
width: 100%;
display: block;
}
}

.AreaBody06 .stripe_mount{
position: relative;
text-align: left;
padding-right: 0px;
padding-left: 0px;
min-height: 380px;
}
@media only screen and (max-width: 992px) {
.AreaBody06 .stripe_mount{
position: relative;
text-align: left;
padding-right: 0px;
padding-left: 0px;
min-height: 290px;
}
}
@media screen and (max-width: 576px) {
.AreaBody06 .stripe_mount{
position: relative;
text-align: center;
padding-right: 0px;
padding-left: 0px;
min-height: 180px;
background-color: #6fd042;
}
}
.AreaBody06 .stripe{
background-image: url("../../img/bg_service.png");
background-position: top left;
background-repeat:repeat-x;
background-size: auto 70%;
/*background: linear-gradient(180deg, #6fd042 0%, #6fd042 50%, #fff 50%, #fff 100%);*/
display:block;
width: 100%;
margin:  0;
color: #000;
}
.AreaBody06 .stripe p{
text-align: left;
line-height: 1.75;
font-size: 1.05rem;
padding: 10px 0;
}

@media only screen and (max-width: 992px) {
.AreaBody06 .stripe{
background-image: url("../../img/bg_service.png");
background-position: top -20px left;
background-repeat:repeat-x;
background-size: auto 110%;
/*background: linear-gradient(180deg, #6fd042 0%, #6fd042 50%, #fff 50%, #fff 100%);*/
display:block;
width: 100%;
margin:  0;
color: #000;
}

}
@media screen and (max-width: 576px) {
.AreaBody06 .stripe{
background-image: none;
display:block;
width: 100%;
margin:  0;
color: #000;
background-color: #fff;
}
.AreaBody06 .stripe p{
text-align: center;
line-height: 1.75;
font-size: 0.95rem;
padding: 0 0 10px 0;
}
}
.AreaBody06 ul.check{
color: #000;
text-align: left;
padding: 10px 0;

}

.AreaBody06 ul.check li{
/*background-image: url("../../img/check.png");*/
background-position: center left;
background-repeat: no-repeat;
padding: 20px 0 16px 60px;
border-bottom: 1px solid #000;
line-height: 1.75;
font-size: 1.12rem;
font-weight: 700;
position: relative;
}

/* fadeUp */
.pluscheck{
content: '';
width: 15px;
 height: 45px;
position: absolute;
top: 50%;
left: 0;
border-right: 3px solid #6fd042;
border-bottom: 3px solid #6fd042;
transform: rotate(45deg) translate(-5px,-39px);
}
.pluscheck{
animation-name:fadeUpAnime;
animation-delay:0.5s;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
0% {
opacity: 0;
height: 0;
width: 0;
top:  -10px;
left: -10px;
}
30% {
opacity: 0;
height: 45px;
width: 10px;
top: 50%;
left:0;
}
100%{
opacity: 1;
width: 15px;
height: 45px;
top: 50%;
left: 0;
}
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/

.fadeUpTrigger{
opacity: 0;
}

.AreaBody06 ul.check li.note{
background-image:none;
background-position: center left;
background-repeat: no-repeat;
padding: 6px 0 16px 60px;
border-bottom: none;
line-height: 1.25;
font-size: 0.9rem;
font-weight: 500;
}
@media screen and (max-width: 576px) {
.AreaBody06 ul.check li{
/*background-image: url("../../img/check.png");*/
background-position: center left;
background-repeat: no-repeat;
/*background-size: 30px;*/
/*padding: 20px 0 16px 50px;*/
}
@keyframes fadeUpAnime{
0% {
opacity: 0;
height: 0;
width: 0;
top:  -10px;
left: -10px;
}
30% {
opacity: 0;
height: 40px;
width: 10px;
top: 20%;
left:0;
}
100%{
opacity: 1;
width: 20px;
height: 40px;
top: 30%;
left: 0;
}
}
.AreaBody06 ul.check li.note{
padding: 6px 0 16px 50px;
}
}


.AreaBody07{
background-color: #fff;
margin: 0;
color: #000;
line-height: 1.75;
font-size: 1.25rem;
padding: 0 0 60px 0;
width: 100%;
text-align: center;
}

.AreaBody07 h2{
background-image: url("../../img/line_tate_b.png");
background-position: top center;
background-repeat: no-repeat;
font-size: 3.0rem;
line-height: 1.35;
padding: 119px 0 0px 0;
font-size: 3.0rem;
line-height: 1.35;
color: #000;
font-weight: 700;
}
.AreaBody07 h3{
font-size: 1.3rem;
line-height: 1.75;
padding: 10px 0;
color: #fff;
font-weight: 700;
}


.AreaBody07 .case01{
background: linear-gradient(180deg,rgba(0, 0, 0, 1.0), rgba(0, 0, 0,0.3),rgba(0, 0, 0, 0.1),rgba(0, 0, 0, 0))fixed,
url(../../img/case01.jpg);
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
height: 380px;
top: 0px;
position: relative;
color: #fff;
text-align: left;
margin: 0;
border-right: 2px solid #fff;
border-left: 2px solid #fff;
border-bottom: 2px solid #fff;
transition:1s all;
}

.AreaBody07 .case02{
background: linear-gradient(180deg,rgba(0, 0, 0, 1.0), rgba(0, 0, 0,0.3),rgba(0, 0, 0, 0.1),rgba(0, 0, 0, 0))fixed,
url(../../img/case02.jpg);
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
height: 380px;
top: 0px;
position: relative;
color: #fff;
text-align: left;
margin: 0;
border-right: 2px solid #fff;
border-left: 2px solid #fff;
border-bottom: 2px solid #fff;
transition:1s all;
overflow: hidden;
}

.AreaBody07 .case03{
background: linear-gradient(180deg,rgba(0, 0, 0, 1.0), rgba(0, 0, 0,0.3),rgba(0, 0, 0, 0.1),rgba(0, 0, 0, 0))fixed,
url(../../img/case03.jpg);
background-repeat: no-repeat;
background-size: cover;
height: 380px;
top: 0px;
position: relative;
color: #fff;
text-align: left;
margin: 0;
border-right: 2px solid #fff;
border-left: 2px solid #fff;
border-bottom: 2px solid #fff;
transition:1s all;
}

.AreaBody07 .case04{
background: linear-gradient(180deg,rgba(0, 0, 0, 1.0), rgba(0, 0, 0,0.3),rgba(0, 0, 0, 0.1),rgba(0, 0, 0, 0))fixed,
url(../../img/case04.jpg);
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
height: 380px;
top: 0px;
position: relative;
color: #fff;
text-align: left;
margin: 0;
border-right: 2px solid #fff;
border-left: 2px solid #fff;
border-bottom: 2px solid #fff;
transition:1s all;
}


.AreaBody07 .parkcity{
/*background-image: url("../../img/case_ph.png");
background-position: top left;
background-repeat: no-repeat;
background-size: contain;
min-height: 500px;*/
margin-right: -15px;
margin-left: -15px;
width: 100%;
}

.AreaBody07 .parkcity img.bg{
width: 100%;
height: auto;
}
@media screen and (max-width: 992px) {
.AreaBody07 .parkcity{
min-height: 360px;
}
}

@media screen and (max-width: 576px) {
.AreaBody07 .parkcity{
background-image: none;
min-height: unset;
}

.AreaBody07 .case01{
background-image: url("../../img/case01.jpg");
background-size: 100%;
background-attachment: local;
height: 220px;
}
.AreaBody07 .case02{
background-image: url("../../img/case02.jpg");
background-size: 100%;
background-attachment: local;
height: 220px;
}
.AreaBody07 .case03{
background-image: url("../../img/case03.jpg");
background-size: 100%;
background-attachment: local;
height: 220px;
}
.AreaBody07 .case04{
background-image: url("../../img/case04.jpg");
background-size: 100%;
background-attachment: local;
height: 220px;
}
}

@media screen and (max-width: 576px) {
.AreaBody07 h2{
font-size: 1.65rem;
padding: 119px 0 0px 0;
}
.AreaBody07 h3{
font-size: 1.00rem;
line-height: 1.75;
padding: 10px 0;
color: #fff;
font-weight: 700;
background: #000;
padding: 4px 10px;
display: inline-block;
}
}
.mount_green{
background-color: #6fd042;
padding: 40px 20px;
width: 96%;
margin: 0 auto;
}



.budge{
position: absolute;
top:80px;
left: 50px;
}
@media screen and (max-width: 992px) {
.budge{
top:80px;
left: 20px;
width: 190px;
}
}
@media screen and (max-width: 576px) {
.budge{
top:90px;
left: 30px;
width: 100px;
}
}

.AreaBody09{
background-color: #4488c7;
background-image: url("../../img/bg_ph03.jpg");
background-position: bottom center;
background-repeat: no-repeat;
background-size: 100%;
top: 0px;
position: relative;
color: #fff;
text-align: left;
margin: 0;
padding: 10px 0 450px 0;
}

.AreaBody09 h2{
font-size: 2.35rem;
line-height: 1.75;
padding: 0;
color: #fff;
font-weight: 700;
margin-top: 80px;
}
@media screen and (max-width: 576px) {
.AreaBody09{
padding: 10px 0 150px 0;
}
.AreaBody09 h2{
font-size: 1.65rem;
margin-top: 40px;
}
}
.AreaBody09 p.lead{
text-align: left;
line-height: 1.75;
font-size: 1.15rem;
padding: 10px 0;
font-weight: 700;
}
.AreaBody09 p{
text-align: left;
line-height: 1.75;
font-size: 0.95rem;
padding: 10px 0;
}




.AreaBody10{
background-color: #4488c7;
background-image: url("../../img/bg_ph04.jpg");
background-position: top center;
background-repeat: no-repeat;
background-size: cover;
top: 0px;
position: relative;
color: #fff;
text-align: left;
margin: 0;
padding: 40px 0;
}

.AreaBody10 h2{
font-size: 2.35rem;
line-height: 1.75;
padding: 0;
color: #fff;
font-weight: 700;
margin-top: 80px;
}
@media screen and (max-width: 576px) {
.AreaBody10{
padding: 10px 0 100px 0;
}
.AreaBody10 h2{
font-size: 1.65rem;
margin-top: 40px;
}
}
.AreaBody10 p.lead{
text-align: left;
line-height: 1.75;
font-size: 1.15rem;
padding: 10px 0;
font-weight: 700;
}
.AreaBody10 p{
text-align: left;
line-height: 1.75;
font-size: 0.95rem;
padding: 10px 0;
}


.undergreen{
color: #fed100;
text-decoration: underline;
text-underline-offset: 15px;

}
.AreaFaq{
background-color: #f0f0f0;
margin: 0;
color: #000;
line-height: 1.75;
font-size: 1.25rem;
padding: 0 0 60px 0;
text-align: center;
}

@media screen and (max-width: 576px) {
.AreaFaq{
padding: 10px 0;
}
}
.AreaFaq h2{
background-image: url("../../img/line_tate_b.png");
background-position: top center;
background-repeat: no-repeat;
font-size: 3.0rem;
line-height: 1.35;
padding: 119px 0 0px 0;
color: #000;
font-weight: 700;

}
@media screen and (max-width: 576px) {
.AreaFaq h2{
font-size: 1.65rem;
}
}
.AreaFaq dl{
text-align: left;
padding: 20px 0;
color: #000;
border-radius: 12px;
background-color: #fff;
}

.AreaFaq .Qu{
width: 10%;
vertical-align: top;
float: left;
}
.AreaFaq .QuMount{
display: inline-block;
color: #3b72d6;
font-size: 1.35rem;
line-height: 1.35;
text-align: left;
font-weight: 700;
padding: 4px 25px;
font-family: "Mukta Mahee", sans-serif;
}

.AreaFaq .QuTx{
display: inline-block;
padding: 4px 25px 4px 5%;
width: 90%;
}

@media screen and (max-width: 576px) {
.AreaFaq .Qu{
width: 10%;
}
.AreaFaq .QuMount{
font-size: 1.15rem;
padding: 4px 10px;
}
.AreaFaq .QuTx{
padding: 4px 0 4px 10%;
width: 90%;
}
}
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.cp_qa {
text-align: left;
font-size: 1.00rem;
line-height: 1.75;
padding: 20px 0;
width: 100%;
}
.cp_qa .cp_actab {
position: relative;
overflow: hidden;
width: 100%;
margin: 20px auto;
text-align: left;
padding: 10px 0 20px 0;
border-radius: 12px;
border: 1px solid #4376bb;
}
.cp_qa .cp_actab input {
position: absolute;
opacity: 0;
}
/* 質問 */
.cp_qa .cp_actab label {
font-size: 1.15rem;
line-height: 1.35;
position: relative;
display: block;
margin: 0 0 0 0;
padding: 0.5em 2em 0.5em 0em;
cursor: pointer;
font-weight: 700;
}
@media screen and (max-width: 576px) {
.cp_qa .cp_actab {
width: 100%;
}
.cp_qa .cp_actab label {
font-size: 1.15rem;
}
}
.cp_qa .cp_actab label:hover {
color: #3b72d6;
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
overflow: hidden;
max-height: 0;
-webkit-transition: max-height 0.5s ease;
transition: max-height 0.5s ease;
clear: both;
padding: 0 1.5rem;
}
.cp_qa .cp_actab .cp_actab-content p {
margin: 0;
padding: 0 3em 1em 15%;
border-top: 1px solid #4376bb;
padding-top: 1.5rem;
font-size: calc(20em / 20);
}

@media screen and (max-width: 576px) {
.cp_qa .cp_actab .cp_actab-content p {
margin: 0;
padding: 0 1em 1em 1em;
font-size: 1.0rem;
}
}
/* 質問を開いた時の仕様 */
/* --アイコン */
.cp_qa .cp_actab input:checked ~ label {
color: #3b72d6;
}
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
max-height: 80em;
overflow: scroll;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab label::after {
line-height: 1.6;
position: absolute;
top: 100%;
right: 0;
display: block;
width: 3em;
margin-top: -12.5px;
-webkit-transition: all 0.5s ease;
transition: all 0.5s ease;
text-align: center;
}
.cp_qa .cp_actab input[type=checkbox] + label::after {
content: '＋';
color: #3b72d6;
}
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
-webkit-transform: rotateX(180deg);
transform: rotateX(180deg);
content: 'ー';
}

.AreaInq_top{
margin: 0;
padding: 0;
text-align: center;
}

.AreaInq_top img{
margin: 0;
padding: 30px 0;
}

.AreaInq{
/*background: linear-gradient(-135deg, #f2f047, #6fd042, #1ed94f);*/
background-color: #2a5297;
margin: 0;
padding: 60px 0;
text-align: center;
min-height: 200px;
}

.AreaInq_nk{
margin: 0;
padding: 10px 0;
text-align: center;
}

a.btn_roof {
display: block;
padding: 16px 20px 16px 10px;
line-height: 1.0;
font-size: 1.0em;
font-weight: bold;
color: #000;
background: linear-gradient(-135deg, #f2f047, #6fd042, #1ed94f);
height: 100%;
}
a.btn_roof:hover {
background: #3870d5;
transition: .5s ease-out;
color: #fff;
}

a.btn {
line-height: 2.55rem;
font-size: 1.35rem;
font-weight: 500;
height: 76px;
border-radius: 33px;
padding: 15px 40px;
}

a.btn_sm {
color: #fff;
line-height: 2.55rem;
font-size: calc(20em / 20);
font-weight: 500;
height: 76px;
border-radius: 33px;
padding: 13px 20px;
}
.bblack{background: #000;color: #fff;}
.bblue{background: #2a5297;color: #fff;}
.bred{background: #bc0101;color: #fff;}
.byellow{background: #fed100;color: #000;}

@media screen and (max-width: 992px) {
a.btn_sm {font-size: 1.0rem;}
}
@media screen and (max-width: 576px) {
a.btn {
width: 90%;
padding: 15px 20px;
height: unset;
line-height: 1.55rem;
}

a.btn_sm {
width: 100%;
font-size: 0.75rem;
padding: 5px 10px;
height: unset;
line-height: 1.0rem;
}
}
a.btn:hover,
a.btn_sm:hover {
background: #3870d5;
transition: .5s ease-out;
}
i.cp_arrow_right:hover {
color: #3870d5;
transition: .5s ease-out;
}
.cp_arrows,
.cp_arrows_sm {
margin: 1em auto;
display: block;
}
.roof_item {
display: inline-block;
text-align: right;
}
.cp_arrows_roof {
margin: 1em auto;
}
.cp_arrows span,
.cp_arrows_sm span,
.cp_arrows_roof span {
position: relative;
display: inline-block;
width: 2.0em;
height: 2.0em;
margin-right: 0.8em;
margin-left: 0.2em;
}

.cp_arrows span::after,
.cp_arrows_sm span::after,
.cp_arrows_roof span::after {
position: absolute;
top: 0.15em;
left: 0;
width: 1.85em;
height: 1.85em;
content: '';
border: 2px solid #fff;
border-radius: 50%;
background: #fff;
}
.cp_arrows [class*='cp_arrow'],
.cp_arrows_sm [class*='cp_arrow'],
.cp_arrows_roof [class*='cp_arrow'] {
position: relative;
display: inline-block;
-webkit-box-sizing: border-box;
box-sizing: border-box;
vertical-align: middle;
color: #000;
z-index: 99;
}

.cp_arrows [class*='cp_arrow']:after,
.cp_arrows [class*='cp_arrow']:before,
.cp_arrows_sm [class*='cp_arrow']:after,
.cp_arrows_sm [class*='cp_arrow']:before,
.cp_arrows_roof [class*='cp_arrow']:after,
.cp_arrows_roof [class*='cp_arrow']:before {
-webkit-box-sizing: border-box;
box-sizing: border-box;
content: '';
}
.cp_arrows [class*='cp_arrow']  {
top: -0.1em;
left: -0.1em;
width: 16px;
height: 16px;
margin: 0.8em;
border-width: 3px 3px 0 0;
border-style: solid;
border-radius: 0 2px 0 0;
}
@media screen and (max-width: 576px) {
.cp_arrows [class*='cp_arrow']  {
margin: 0.55em;
}
}

.cp_arrows_sm [class*='cp_arrow'] ,
.cp_arrows_roof [class*='cp_arrow']  {
top: -0.1em;
left: -0.1em;
width: 12px;
height: 12px;
margin: 0.7em;
border-width: 2px 2px 0 0;
border-style: solid;
border-radius: 0 1px 0 0;
}
.cp_arrows [class*='cp_arrow']:before,
.cp_arrows [class*='cp_arrow']:after,
.cp_arrows_sm [class*='cp_arrow']:before,
.cp_arrows_sm [class*='cp_arrow']:after,
.cp_arrows_roof [class*='cp_arrow']:before,
.cp_arrows_roof [class*='cp_arrow']:after {
position: absolute;
border-radius: 2px;
}
.cp_arrows [class*='cp_arrow']:before {
top: -3px;
right: 0;
width: 20px;
height: 3px;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
-webkit-transform-origin: right top;
transform-origin: right top;
-webkit-box-shadow: inset 0 0 0 32px;
box-shadow: inset 0 0 0 24px;
}
.cp_arrows_sm [class*='cp_arrow']:before,
.cp_arrows_roof [class*='cp_arrow']:before  {
top: -2px;
right: 0;
width: 16px;
height: 2px;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
-webkit-transform-origin: right top;
transform-origin: right top;
-webkit-box-shadow: inset 0 0 0 32px;
box-shadow: inset 0 0 0 24px;
}

.cp_arrows [class*='cp_arrow']:after,
.cp_arrows_sm [class*='cp_arrow']:after,
.cp_arrows_roof [class*='cp_arrow']:after {
top: -3px;
left: -2px;
width: 0px;
height: 0px;
-webkit-box-shadow: inset 0 0 0 32px, 16px 17px;
box-shadow: inset 0 0 0 24px, 8px 9px;
}
.cp_arrows .cp_arrow_left,
.cp_arrows_sm .cp_arrow_left,
.cp_arrows_roof .cp_arrow_left {
top: -0.05em;
left: -0.55em;
-webkit-transform: rotate(-135deg);
transform: rotate(-135deg);
}
.cp_arrows .cp_arrow_right,
.cp_arrows_sm .cp_arrow_right,
.cp_arrows_roof .cp_arrow_right {
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.cp_arrows .cp_arrow_up,
.cp_arrows_sm .cp_arrow_up,
.cp_arrows_roof .cp_arrow_up {
top: -0.1em;
left: -0.35em;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
}
.cp_arrows .cp_arrow_down,
.cp_arrows_sm .cp_arrow_down,
.cp_arrows_roof .cp_arrow_down {
top: 0.1em;
left: -0.4em;
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}
.cp_arrows .cp_arrow_left_up,
.cp_arrows_sm .cp_arrow_left_up,
.cp_arrows_roof .cp_arrow_up {
top: -0.1em;
left: -0.5em;
-webkit-transform: rotate(-90deg);
transform: rotate(-90deg);
}
.cp_arrows .cp_arrow_left_down,
.cp_arrows_sm .cp_arrow_left_down,
.cp_arrows_roof .cp_arrow_down {
left: -0.5em;
-webkit-transform: rotate(180deg);
transform: rotate(180deg);
}
.cp_arrows .cp_arrow_right_up,
.cp_arrows_sm .cp_arrow_right_up,
.cp_arrows_roof .cp_arrow_up {
top: -0.1em;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
.cp_arrows .cp_arrow_right_down,
.cp_arrows_sm .cp_arrow_right_down,
.cp_arrows_roof .cp_arrow_down {
top: 0.1em;
left: -0.35em;
-webkit-transform: rotate(90deg);
transform: rotate(90deg);
}

.AreaFooter{
margin: 0;
color: #fff;
line-height: 1.75;
font-size: 0.9rem;
padding: 20px 0;
text-align: center;
}
ul.ftmenu{
}
ul.ftmenu a{
color: #fff;
}
ul.ftmenu a:hover{
opacity: 0.8;
}
ul.ftmenu li{
display: inline-block;
padding: 0 10px;
}
.AreaFooter img{
width: 180px;
padding: 20px 0;
}

.AreaFooter p{
border-top:  #fff solid 1px;
padding: 10px 0;
font-size: 0.55rem;
}
.triangle_g{
margin: 0 auto;
text-align: center;
width: 0;
height: 0;
border-left: 60px solid transparent;
border-right: 60px solid transparent;
border-bottom: 60px solid #2a5297;

}
.triangle_w{
margin: 0 auto;
text-align: center;
width: 0;
height: 0;
border-left: 60px solid transparent;
border-right: 60px solid transparent;
border-bottom: 60px solid #fff;
}


/* アニメーション設定 */
.scr-target {
/* アニメーション開始から終了までの所要時間 */
-webkit-animation-duration: 1s;
animation-duration: 1s;
/* アニメーションが開始するまでの遅延時間 */
-webkit-animation-delay: 0s;
animation-delay: 0s;
/* アニメーションのループ回数 - infiniteで無限ループ */
-webkit-animation-iteration-count: 1;
animation-iteration-count: 1;
/* キーフレームアニメーションで指定したプロパティをアニメーション開始前、終了後に適用するかどうか */
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
.scr-target_slow {
/* アニメーション開始から終了までの所要時間 */
-webkit-animation-duration: 1s;
animation-duration: 1s;
/* アニメーションが開始するまでの遅延時間 */
-webkit-animation-delay: 0.2s;
animation-delay: 0.2s;
/* アニメーションのループ回数 - infiniteで無限ループ */
-webkit-animation-iteration-count: 1;
animation-iteration-count: 1;
/* キーフレームアニメーションで指定したプロパティをアニメーション開始前、終了後に適用するかどうか */
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
.scr-target[class*='fadeIn'],
.scr-target[class*='zoom'] {
opacity: 0;
}
.scr-target_slow[class*='fadeIn'],
.scr-target_slow[class*='zoom'] {
opacity: 0;
}
/* フェードイン */
@-webkit-keyframes fadeIn {
from {
opacity: 0;
}

to {
opacity: 1;
}
}
@keyframes fadeIn {
from {
opacity: 0;
}

to {
opacity: 1;
}
}
.anime__fadeIn.is-active {
-webkit-animation-name: fadeIn;
animation-name: fadeIn;
}

/* フェードイン(上から) */
@-webkit-keyframes fadeInDown {
from {
opacity: 0;
-webkit-transform: translate3d(0, -100%, 0);
transform: translate3d(0, -100%, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
@keyframes fadeInDown {
from {
opacity: 0;
-webkit-transform: translate3d(0, -100%, 0);
transform: translate3d(0, -100%, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
.anime__fadeInDown.is-active {
-webkit-animation-name: fadeInDown;
animation-name: fadeInDown;
}

/* フェードイン(下から) */
@-webkit-keyframes fadeInUp {
from {
opacity: 0;
-webkit-transform: translate3d(0, 100%, 0);
transform: translate3d(0, 100%, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
@keyframes fadeInUp {
from {
opacity: 0;
-webkit-transform: translate3d(0, 100%, 0);
transform: translate3d(0, 100%, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
.anime__fadeInUp.is-active {
-webkit-animation-name: fadeInUp;
animation-name: fadeInUp;
}

/* フェードイン(左から) */
@-webkit-keyframes fadeInLeft {
from {
opacity: 0;
-webkit-transform: translate3d(-100%, 0, 0);
transform: translate3d(-100%, 0, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
@keyframes fadeInLeft {
from {
opacity: 0;
-webkit-transform: translate3d(-100%, 0, 0);
transform: translate3d(-100%, 0, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
.anime__fadeInLeft.is-active {
-webkit-animation-name: fadeInLeft;
animation-name: fadeInLeft;
}

/* フェードイン(右から) */
@-webkit-keyframes fadeInRight {
from {
opacity: 0;
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
@keyframes fadeInRight {
from {
opacity: 0;
-webkit-transform: translate3d(100%, 0, 0);
transform: translate3d(100%, 0, 0);
}

to {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
}
.anime__fadeInRight.is-active {
-webkit-animation-name: fadeInRight;
animation-name: fadeInRight;
}

/* ズームイン */
@-webkit-keyframes zoomIn {
from {
opacity: 0;
-webkit-transform: scale3d(0.3, 0.3, 0.3);
transform: scale3d(0.3, 0.3, 0.3);
}

100% {
opacity: 1;
}
}
@keyframes zoomIn {
from {
opacity: 0;
-webkit-transform: scale3d(0.3, 0.3, 0.3);
transform: scale3d(0.3, 0.3, 0.3);
}

100% {
opacity: 1;
}
}
.anime__zoomIn.is-active {
-webkit-animation-name: zoomIn;
animation-name: zoomIn;
}

/* ズームアウト */
@-webkit-keyframes zoomOut {
from {
opacity: 0;
-webkit-transform: scale3d(1.6, 1.6, 1.6);
transform: scale3d(1.6, 1.6, 1.6);
}
100% {
opacity: 1;
}
}
@keyframes zoomOut {
from {
opacity: 0;
-webkit-transform: scale3d(1.6, 1.6, 1.6);
transform: scale3d(1.6, 1.6, 1.6);
}
100% {
opacity: 1;
}
}
.anime__zoomOut.is-active {
-webkit-animation-name: zoomOut;
animation-name: zoomOut;
}

/*==================================================
背景色が伸びて出現
===================================*/

/*全共通*/

.bgextend{
animation-name:bgextendAnimeBase;
animation-duration:1s;
animation-fill-mode:forwards;
position: relative;
overflow: hidden;/*　はみ出た色要素を隠す　*/
opacity:0;
}

@keyframes bgextendAnimeBase{
from {
opacity:0;
}

to {
opacity:1;
}
}

/*中の要素*/
.bgappear{
animation-name:bgextendAnimeSecond;
animation-duration:1s;
animation-delay: 0.6s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes bgextendAnimeSecond{
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}

/*左から右*/
.bgLRextend::before{
animation-name:bgLRextendAnime;
animation-duration:1s;
animation-fill-mode:forwards;
content: "";
position: absolute;
width: 100%;
height: 100%;
background-color: #2a5297;/*伸びる背景色の設定*/
}
.bgLRextendY::before{
animation-name:bgLRextendAnime;
animation-duration:1s;
animation-fill-mode:forwards;
content: "";
position: absolute;
width: 100%;
height: 100%;
background-color: #fed100;;/*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime{
0% {
transform-origin:left;
transform:scaleX(0);
}
50% {
transform-origin:left;
transform:scaleX(1);
}
50.001% {
transform-origin:right;
}
100% {
transform-origin:right;
transform:scaleX(0);
}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgLRextendTrigger,
.bgLRextendTriggerY{
opacity: 0;
}



ul.ftmenu li.dllink{
color: #000;
line-height: 2.85rem;
font-weight: 500;
background: #fff;
border-radius: 6px;
/*   padding: 15px 20px;*/
}

ul.ftmenu li.dllink:hover{
background: #3b72d6;
color: #fff;
transition: .5s ease-out;
}
ul.ftmenu li.dllink a{
color: #000;
}

ul.ftmenu li.dllink:hover a{
color: #fff;
}
ul.ftmenu li.dllink span {
position: relative;
display: inline-block;
width: 1.1em;
height: 2.0em;
margin-right: 0.8em;
margin-left: 0.2em;
}

ul.ftmenu li.dllink span::after {
position: absolute;
top: 0.75em;
left: 0;
width: 1.55em;
height: 1.55em;
content: '';
border: 2px solid #000;
border-radius: 50%;
background: #000;
}

ul.ftmenu li.dllink [class*='cp_arrow'] {
position: relative;
display: inline-block;
-webkit-box-sizing: border-box;
box-sizing: border-box;
vertical-align: middle;
color: #fff;
z-index: 99;
}

ul.ftmenu li.dllink  [class*='cp_arrow']:after,
ul.ftmenu li.dllink [class*='cp_arrow']:before {
-webkit-box-sizing: border-box;
box-sizing: border-box;
content: '';
}
ul.ftmenu li.dllink [class*='cp_arrow']  {
top: -0.2em;
left: -0.2em;
width: 10px;
height: 10px;
margin: 0.7em;
border-width: 2px 2px 0 0;
border-style: solid;
border-radius: 0 1px 0 0;
}
ul.ftmenu li.dllink [class*='cp_arrow']:before,
ul.ftmenu li.dllink [class*='cp_arrow']:after {
position: absolute;
border-radius: 2px;
}


ul.ftmenu li.dllink [class*='cp_arrow']:before {
top: -2px;
right: 0;
width: 12px;
height: 2px;
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
-webkit-transform-origin: right top;
transform-origin: right top;
-webkit-box-shadow: inset 0 0 0 32px;
box-shadow: inset 0 0 0 24px;
}

ul.ftmenu li.dllink .cp_arrow_right {
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}



.bn_svrecord{
/*  position:absolute;*/
/*   left:0;*/
z-index:300;
display:block;
line-height:0;
outline:none;
-webkit-transition:opacity .2s linear;
transition:opacity .2s linear;
}
.bn_svrecord img{
margin: 25px 5px ;
}

@media screen and (max-width: 991.98px){
.bn_svrecord{
width: 100%;
margin-top: 35px;
min-height: 80px;
}
.bn_svrecord img{
width: 48%;
margin: 0px 1%;
float: left;

}
}

@media screen and (max-width: 576px) {
.bn_svrecord{
width: 100%;
margin-top: 25px;
}
.bn_svrecord img{
width: 100%;
margin: 3px 0;
float: none;
}
}

.case_scroll .js-carousel {
width: 100%;
padding: 0;
}

.case_scroll .js-carousel {
margin: 26px auto 0 auto;
position: relative;
overflow: hidden;
width: 100%;
padding: 0 0 30px 0;
}
.case_scroll .js-carousel .box {
margin: 0 auto;
width: 800px;
}
@media (max-width: 768px){
.case_scroll .js-carousel .box {
margin: 0 auto;
width: 100%;
}
}
.case_scroll .js-carousel .box.js-area {
position: relative;
left: 50%;
width: 2400px;
margin-left: -1200px;
}

.case_scroll .js-carousel li {
width: 800px;
text-align: center;
}
@media (max-width: 768px){
.case_scroll .js-carousel li {
width: 100%;
text-align: center;
}
}
.case_scroll .js-carousel li img {
display: block;
}
.case_scroll .js-carousel li .caption {
padding: 18px 100px 16px 100px;
width: 100%;
font-weight: bold;
display: inline-block;
text-align: center;
line-height: 1.30769;
}
.case_scroll .js-carousel .item{

/* carousel castom */
.case_scroll .js-carousel .bx-wrapper {
box-shadow: none;
margin: 0;
border: 0;
background: none;
width: 300px;
}
.case_scroll .js-carousel .bx-wrapper .bx-viewport {
overflow: visible !important;
left: 0;
border-width: 0;
box-shadow: none;
}
.case_scroll .js-carousel .bx-controls {
margin: 0 auto;
text-align: center;
}
.case_scroll .js-carousel .bx-wrapper .bx-controls-auto,
.case_scroll .js-carousel .bx-wrapper .bx-pager {
position: static;
}
.case_scroll .js-carousel .bx-pager {
width: auto;
padding-top: 0;
display: inline-block;
margin-top: 22px;
}
.case_scroll .js-carousel .bx-pager .bx-pager-item {
font-size: 0.625rem;
line-height: 1;
display: table-cell;
padding: 0 12px;
}
.case_scroll .js-carousel .bx-pager .bx-pager-item button {
border-radius: 10px;
cursor: pointer;
display: inline-block;
height: 12px;
width: 12px;
background: #e6e6e6;
color: #e6e6e6;
}
.case_scroll .js-carousel .bx-pager .bx-pager-item .active {
background: #f3fd7e;
}
.case_scroll .js-carousel .bx-controls-direction {
position: relative;
width: 800px;
margin: 0 auto;
top: -310px;
left: 0;
z-index: 2;
}
@media (max-width: 768px){
.case_scroll .js-carousel .bx-controls-direction {
width: 100%;
}
}
@media (max-width: 478px){
.case_scroll .js-carousel .bx-controls-direction {
width: 100%;
top: -14.5rem;
}
}
.case_scroll .js-carousel .bx-controls-direction p {
position: absolute;
top: 0;
left: 17px;
width: 42px;
height: 42px;
}
.case_scroll .js-carousel .bx-controls-direction p + p {
left: auto;
right: 17px;
}
.case_scroll .js-carousel .bx-controls-direction p button {
background: none;
cursor: pointer;
display: block;
position: relative;
width: 42px;
height: 42px;
top: 0;
overflow: hidden;
}
.case_scroll .js-carousel .bx-controls-direction p button::before {
content: "";
display: block;
width: 21px;
height: 21px;
position: absolute;
top: 50%;
margin-top: -11px;
}
.case_scroll .js-carousel .bx-controls-direction p button span {
display: block;
position: absolute;
top: -999em;
left: -999em;
}
