@charset "UTF-8";


// <weight>: Use a value from 100 to 900
// <uniquifier>: Use a unique and descriptive class name

.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}


.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}


body {
color: #333333;
font: 400 20px/35px "Noto Sans JP", sans-serif;
}
a:link{
text-decoration: none;
color: #611D86;
}
a:visited {
text-decoration: none;
color: #611D86;
}
a:hover {
text-decoration:none;
color: #8D44BC;
}


/* SideNavi--------------------------- */
.NaviWRP {
width: 80px;
height: 100%;
position: fixed;
top: 0px;
left: 0px;
z-index: 200;
text-align: center;
font: 700 16px/20px "Noto Sans JP", sans-serif;
color: #611D86;
background-color: #FFFFFF;
}
#Logo {
width: 40px;
min-height: 0px;
height: 143px;
padding: 30px 20px 77px;
}
#Navi {
width: 50px;
height: auto;
margin-left: 15px;
margin-right: 15px;
}
#Navi li{
position: relative;
float: left;
padding: 0;
margin-bottom: 30px;
}
#ScrollNavi li a{
width: 50px;
height: 70px;
display: block;
margin: 0;
text-decoration: none;
}


/* SmartPhoneLogo------------------------- */
#SPLogo {
display: none;
}


/* fullSlideShow--------------------------- */
.fullSlideShow {
width: 100%;
text-align: left;
position: relative;
overflow: hidden;
}
.fullSlideShow ul {
top: 50%;
left: 50%;
width: 100%;
position: absolute; /* absolute or fixed */
overflow: hidden;
}
.fullSlideShow ul li {
top: 0;
left: 0;
width: 100%;
display: none;
position: absolute;
}
.fullSlideShow ul li img {
width: 100%;
z-index: 100;
}
/* SlideShowNavi------------------------- */
.fullSlideShow .btnPrev,
.fullSlideShow .btnNext {
margin-top: -25px;
top: 50%;
width: 50px;
height: 50px;
position: fixed; /* absolute or fixed */
z-index: 200;
}
.fullSlideShow .btnPrev {
left: 10px;
background: transparent url(../images/btnPrev.png) no-repeat center center;
}
.fullSlideShow .btnNext {
right: 10px;
background: transparent url(../images/btnNext.png) no-repeat center center;
}

/* CopyRibbon--------------------------- */
.CopyRibbon {
width: 100%;
height: 80px;
margin: -40px 0 0 0;  /*縦横の半分をネガティブマージンでずらす*/
position: absolute;  /*body要素に対して絶対配置*/
top: 50%;  /*上端を中央に*/
left: 0;  /*左端を中央に*/
z-index: 150;
background-color: #611D86;
mix-blend-mode: multiply;
opacity: 0.6;
}
.RibbonCopy {
width: 100%;
height: 46px;
margin: -23px 0 0 0;  /*縦横の半分をネガティブマージンでずらす*/
position: absolute;  /*body要素に対して絶対配置*/
top: 50%;  /*上端を中央に*/
left: 0;  /*左端を中央に*/
color: #FFFFFF;
font: 500 46px/46px YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
text-align: center;
z-index: 160;
}


/* Concept&CheckList------------------------- */
.ImageWRP {
width: 100%;
height: auto;
}
.ImageWRP img {
width: 32%;
height: auto;
margin-right: 2%;
}
.ImageWRP img.last {
margin-right: 0;
}
.CheckTTL {
width: 100%;
height: 40px;
font: 700 40px/40px "Noto Sans JP", sans-serif;
color: #611D86;
text-align: center;
margin-bottom: 30px;
}
.CheckWRP1 {
width: 91%;
height: 30px;
padding-left: 9%;
padding-top: 10px;
padding-bottom: 10px;
background-color: #F2E1FF;
background-image: url(../images/Check.png);
background-size: 30px 30px;
background-repeat: no-repeat;
background-position: 6% 10px;
line-height: 30px;
}
.CheckWRP2 {
width: 91%;
height: 30px;
padding-left: 9%;
padding-top: 10px;
padding-bottom: 10px;
background-color: #F9F9F9;
background-image: url(../images/Check.png);
background-size: 30px 30px;
background-repeat: no-repeat;
background-position: 6% 10px;
line-height: 30px;
}


/* Flow------------------------- */
.FlowWRP {
width: 980px;
height: 140px;
padding: 10px;
background-color: #F2E1FF;
border-radius: 80px;
}
.Tri {
width: 1000px;
height: 50px;
background-image: url(../images/Tri.svg);
background-repeat: no-repeat;
background-position: 50% 50%;
background-size: 100px 30px;
}
.FlowIMG {
width: 260px;
height: 140px;
float: left;
}
.FlowNo {
width: 150px;
height: 140px;
font: 700 120px/150px "Roboto", sans-serif;
color: #FFFFFF;
text-align: center;
float: left;
}
.FlowCont {
width: 500px;
height: 120px;
padding-top: 20px;
text-align: center;
float: left;
}
.FlowTTL {
width: 500px;
height: 40px;
font: 700 40px/40px "Noto Sans JP", sans-serif;
color: #611D86;
margin-bottom: 10px;
}
.FlowEXP {
width: 500px;
height: auto;
font: 700 24px/30px "Noto Sans JP", sans-serif;
}
.FlowNOTICE {
font: 500 20px/30px "Noto Sans JP", sans-serif;
}
.FlowSMALL {
font: 500 14px/30px "Noto Sans JP", sans-serif;
}


/* Price------------------------- */
.PriceWRP {
width: 100%;
height: 100px;
margin-bottom: 20px;
}
.PriceLeft {
width: 55%;
height: 40px;
padding-left: 1%;
padding-top: 30px;
padding-bottom: 30px;
background-color: #F2E1FF;
font: 700 24px/24px "Noto Sans JP", sans-serif;
float: left;
}
.PriceRight {
width: 43%;
height: 40px;
padding-left: 1%;
padding-top: 30px;
padding-bottom: 30px;
background-color: #F9F9F9;
font: 700 24px/24px "Noto Sans JP", sans-serif;
float: left;
}
.PriceTXT {
padding-top: 8px;
float: left;
}
.PriceSmall {
font: 400 14px/24px "Noto Sans JP", sans-serif;
}
.FirstBox {
width: 80px;
height: 16px;
padding-top: 12px;
padding-bottom: 12px;
font: 700 16px/16px "Noto Sans JP", sans-serif;
color: #FFFFFF;
text-align: center;
background-color: #C8113D;
margin-right: 10px;
float: left;
}
.InitialBox {
width: 80px;
height: 16px;
padding-top: 12px;
padding-bottom: 12px;
font: 700 16px/16px "Noto Sans JP", sans-serif;
color: #FFFFFF;
text-align: center;
background-color: #611D86;
margin-right: 10px;
float: left;
}
.FreeEstimate {
font: 700 40px/40px "Noto Sans JP", sans-serif;
color: #C8113D;
}


/* FAQ------------------------- */
.QuestionWRP {
width: 88%;
height: auto;
padding-left: 6%;
padding-right: 6%;
background-color: #F2E1FF;
color: #611D86;
overflow:hidden;
}
.AnswerWRP {
width: 88%;
height: auto;
padding-left: 6%;
padding-right: 6%;
background-color: #F9F9F9;
overflow:hidden;
}
.Qcap {
width: 50px;
height: 48px;
padding-top: 6px;
padding-bottom: 6px;
font: 700 48px/48px "Roboto", sans-serif;
float: left;
}
.Qtxt {
width: auto;
height: auto;
padding-top: 20px;
padding-bottom: 20px;
font: 700 20px/20px "Noto Sans JP", sans-serif;
color: #611D86;
display: flex;
}
.Acap {
width: 50px;
height: 48px;
padding-top: 20px;
font: 700 48px/48px "Roboto", sans-serif;
color: #808080;
float: left;
}
.Atxt {
width: auto;
height: auto;
padding-top: 25px;
padding-bottom: 25px;
font: 400 20px/30px "Noto Sans JP", sans-serif;
display: flex;
}


/* Inquiry------------------------- */
#FormBG {
width: 70%;
padding: 50px 15% 80px;
color: #000000;
font-size: 16px;
background-color: #F9F9F9;
border-radius: 10px;
}
.required {
height: 10px;
padding: 2px 4px 3px;
color: #FFFFFF;
font-size: 10px;
line-height: 10px!important;
text-align: center;
border-radius: 3px;
background-color: #C8113D;
margin-left: 10px;
display: inline;
}
.InqTTL {
width: 100%;
height: 20px;
line-height: 18px;
margin-bottom: 10px;
}
.InqContWRP {
width: 100%;
}
.InqCont1 {
width: 45%;
padding-right: 6%;
float: left;
}
.InqCont2 {
width: 45%;
float: left;
}
.input {
width: 97%;
height: 20px;
border: 1px solid #DDDDDD;
float: left;
padding: 5px;
font-size: 16px;
line-height: 20px;
border-radius: 5px;
}
.textarea {
width: 97%;
height: 144px;
font-size: 16px;
line-height: 20px;
border: 1px solid #DDDDDD;
padding: 5px;
border-radius: 5px;
}
.submit {
width: 100%;
height: 42px;
line-height: 20px;
font-weight: 700;
font-size: 20px;
background-color: #611D86;
border: 1px solid #611D86;
padding-top: 10px;
padding-bottom: 10px;
color: #FFFFFF;
cursor: pointer;
border-radius: 5px;
text-align: center;
}
.submit:hover {
background-color: #8D44BC;
}


/* Footer------------------------- */
.FooterWRP {
width: 100%;
hight: 300px;
text-align: center;
background-color: #F2E1FF;
padding-top: 70px;
}
.FooterLogo {
width: 320px;
height: 52px;
margin-left: auto;
margin-right: auto;
margin-bottom: 15px;
}
.FooterAdd {
font: 400 16px/16px "Noto Sans JP", sans-serif;
margin-bottom: 10px;
}
.FooterTel {
font: 700 36px/36px "Roboto", sans-serif;
color: #611D86;
margin-bottom: 10px;
}
.FooterFax {
font: 700 24px/24px "Roboto", sans-serif;
margin-bottom: 150px;
}
.Copyright {
font: 300 14px/14px "Noto Sans JP", sans-serif;
padding-bottom: 50px;
}


/* Common------------------------- */
#Content {
flex: 1;
height: auto;
padding-left: 80px;
}
.Chapter1 {
width: 94%;
height: auto;
margin-left: 3%;
margin-right: 3%;
padding-top: 50px;
}
.Chapter2 {
width: 1000px;
height: auto;
margin-left: auto;
margin-right: auto;
}
.Chapter3 {
width: 800px;
height: auto;
margin-left: auto;
margin-right: auto;
}
.EngTTL {
width: 100%;
height: 60px;
font: 700 60px/60px "Roboto", sans-serif;
color: #611D86;
text-align: center;
margin-bottom: 10px;
}
.JpnTTL {
width: 100%;
height: 30px;
font: 700 30px/30px "Noto Sans JP", sans-serif;
text-align: center;
}
.IconBox {
width: 120px;
height: 120px;
margin-left: auto;
margin-right: auto;
margin-bottom: 20px;
}
.Red {
color: #C8113D;
}
.BoxL {
width: 100%;
height: 100px;
clear: both;
}
.BoxM {
width: 100%;
height: 50px;
clear: both;
}
.BoxS {
width: 100%;
height: 30px;
clear: both;
}
.br-pc { display:block; }
.br-sp { display:none; }

.pc { display:inline; }
.sp { display:none; }





/* ==================================================////////////////////タブレット////////////////////================================================== */
@media screen and (min-width: 960px) {
	/* 959px以下に適用されるCSS（タブレット用） */

.hamburger {
display: none;
}
header.SPheader {
display: none;
}

a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
color: #000000
}

}





/* ==================================================////////////////////スマートフォン////////////////////================================================== */
@media screen and (max-width: 959px){
body {
color: #333333;
font: 400 12px/20px "Noto Sans JP", sans-serif;
}

.pc { display:none; }
.sp { display:inline; }

.br-pc { display:none; }
.br-sp { display:block; }



/* SideNavi--------------------------- */
.NaviWRP {
width: 100%;
height: 70px;
position: fixed;
top: 0;
left: 0;
z-index: 200;
text-align: center;
font: 700 10px/15px "Noto Sans JP", sans-serif;
color: #611D86;
background-color: #FFFFFF;
}
#Logo {
display:none;
}
#Navi {
width: 320px;
height: 60px;
margin-left: auto;
margin-right: auto;
}
#Navi li{
width: 40px;
height: 60px;
position: relative;
float: left;
padding-top: 5px;
padding-bottom: 5px;
margin-bottom: 0px;
margin-right: 30px;
}
#Navi li.last{
margin-right: 0px;
}
#ScrollNavi li a{
display: block;
margin: 0;
text-decoration: none;
}


/* SmartPhoneLogo------------------------- */
#SPLogo {
display: inline;
width: 30px;
height: 108px;
position: absolute;
top: 90px;
left: 20px;
z-index: 180;
}


/* CopyRibbon--------------------------- */
.CopyRibbon {
width: 100%;
height: 40px;
margin: -20px 0 0 0;  /*縦横の半分をネガティブマージンでずらす*/
position: absolute;  /*body要素に対して絶対配置*/
top: 55%;  /*上端を中央に*/
left: 0;  /*左端を中央に*/
z-index: 150;
background-color: #611D86;
mix-blend-mode: multiply;
opacity: 0.6;
}
.RibbonCopy {
width: 100%;
height: 18px;
margin: -9px 0 0 0;  /*縦横の半分をネガティブマージンでずらす*/
position: absolute;  /*body要素に対して絶対配置*/
top: 55%;  /*上端を中央に*/
left: 0;  /*左端を中央に*/
color: #FFFFFF;
font: 500 18px/18px YuMincho, "Yu Mincho", "Hiragino Mincho ProN", serif;
text-align: center;
z-index: 160;
}


/* Concept&CheckList------------------------- */
.ImageWRP img {
width: 100%;
height: auto;
margin-right: 0;
margin-bottom: 10px;
}
.ImageWRP img.last {
margin-right: 0;
margin-bottom: 0;
}
.CheckTTL {
width: 100%;
height: auto;
font: 700 20px/28px "Noto Sans JP", sans-serif;
color: #611D86;
text-align: center;
margin-bottom: 15px;
}
.CheckWRP1 {
width: 90%;
height: auto;
padding-left: 9%;
padding-right: 1%;
padding-top: 10px;
padding-bottom: 10px;
background-color: #F2E1FF;
background-image: url(../images/Check.png);
background-size: 20px 20px;
background-repeat: no-repeat;
background-position: 2% 10px;
font-size: 14px;
line-height: 20px;
}
.CheckWRP2 {
width: 90%;
height: auto;
padding-left: 9%;
padding-right: 1%;
padding-top: 10px;
padding-bottom: 10px;
background-color: #F9F9F9;
background-image: url(../images/Check.png);
background-size: 20px 20px;
background-repeat: no-repeat;
background-position: 2% 10px;
font-size: 14px;
line-height: 20px;
}


/* Flow------------------------- */
.FlowWRP {
width: 95%;
height: auto;
padding: 10px;
background-color: #F2E1FF;
border-radius: 50px;
}
.Tri {
width: 100%;
height: 24px;
background-image: url(../images/Tri.svg);
background-repeat: no-repeat;
background-position: 50% 50%;
background-size: 50px 15px;
}
.FlowIMG {
width: 260px;
height: 140px;
float: none;
margin-left: auto;
margin-right: auto;
}
.FlowNo {
width: 100%;
height: 35px;
font: 700 40px/40px "Roboto", sans-serif;
color: #FFFFFF;
text-align: center;
float: none;
}
.FlowCont {
width: 100%;
height: auto;
padding-top: 0px;
padding-bottom: 10px;
text-align: center;
float: none;
}
.FlowTTL {
width: 100%;
height: 24px;
font: 700 24px/24px "Noto Sans JP", sans-serif;
color: #611D86;
margin-bottom: 5px;
}
.FlowEXP {
width: 100%;
height: auto;
font: 700 16px/24px "Noto Sans JP", sans-serif;
}
.FlowNOTICE {
font: 500 12px/20px "Noto Sans JP", sans-serif;
}
.FlowSMALL {
font: 500 12px/20px "Noto Sans JP", sans-serif;
}


/* Price------------------------- */
.PriceWRP {
width: 100%;
height: auto;
margin-bottom: 15px;
}
.PriceLeft {
width: 100%;
height: auto;
padding-left: 0;
padding-top: 10px;
padding-bottom: 8px;
background-color: #F2E1FF;
font: 700 16px/20px "Noto Sans JP", sans-serif;
text-align: center;
float: none;
}
.PriceRight {
width: 100%;
height: auto;
padding-left: 0;
padding-top: 5px;
padding-bottom: 10px;
background-color: #F9F9F9;
font: 700 16px/20px "Noto Sans JP", sans-serif;
text-align: center;
float: none;
}
.PriceTXT {
padding-top: 0px;
float: none;
}
.PriceSmall {
font: 400 12px/18px "Noto Sans JP", sans-serif;
}
.FirstBox {
width: 60px;
height: 12px;
padding-top: 4px;
padding-bottom: 4px;
font: 700 12px/12px "Noto Sans JP", sans-serif;
color: #FFFFFF;
text-align: center;
background-color: #C8113D;
margin-right: auto;
margin-left: auto;
margin-bottom: 5px;
float: none;
}
.InitialBox {
width: 60px;
height: 12px;
padding-top: 4px;
padding-bottom: 4px;
font: 700 12px/12px "Noto Sans JP", sans-serif;
color: #FFFFFF;
text-align: center;
background-color: #611D86;
margin-right: auto;
margin-left: auto;
margin-bottom: 5px;
float: none;
}
.FreeEstimate {
font: 700 30px/30px "Noto Sans JP", sans-serif;
color: #C8113D;
}


/* FAQ------------------------- */
.QuestionWRP {
width: 92%;
height: auto;
padding-left: 4%;
padding-right: 4%;
background-color: #F2E1FF;
color: #611D86;
overflow:hidden;
}
.AnswerWRP {
width: 92%;
height: auto;
padding-left: 4%;
padding-right: 4%;
background-color: #F9F9F9;
overflow:hidden;
}
.Qcap {
width: 30px;
height: 30px;
padding-top: 6px;
padding-bottom: 6px;
font: 700 30px/30px "Roboto", sans-serif;
float: left;
}
.Qtxt {
width: auto;
height: auto;
padding-top: 10px;
padding-bottom: 10px;
font: 700 14px/20px "Noto Sans JP", sans-serif;
color: #611D86;
display: flex;
}
.Acap {
width: 30px;
height: 30px;
padding-top: 6px;
font: 700 30px/30px "Roboto", sans-serif;
color: #808080;
float: left;
}
.Atxt {
width: auto;
height: auto;
padding-top: 10px;
padding-bottom: 20px;
font: 400 14px/20px "Noto Sans JP", sans-serif;
display: flex;
}


/* Inquiry------------------------- */
#FormBG {
width: 90%;
padding: 30px 5% 50px;
color: #000000;
font-size: 14px;
background-color: #F6F6F6;
border-radius: 10px;
}
.required {
height: 12px;
padding: 2px 4px 4px;
color: #FFFFFF;
font-size: 12px;
line-height: 12px!important;
text-align: center;
border-radius: 3px;
background-color: #C8113D;
margin-left: 15px;
display: inline;
}
.InqTTL {
width: 100%;
height: 20px;
line-height: 18px;
margin-bottom: 10px;
}
.InqContWRP {
width: 98%;
}
.InqCont1 {
width: 46%;
padding-right: 8%;
float: left;
}
.InqCont2 {
width: 46%;
float: left;
}
.input {
width: 100%;
height: 24px;
border: 1px solid #DDDDDD;
float: left;
padding: 5px;
font-size: 18px;
line-height: 24px;
border-radius: 5px;
}
.textarea {
width: 100%;
height: 144px;
font-size: 18px;
line-height: 24px;
border: 1px solid #DDDDDD;
padding: 5px;
border-radius: 5px;
}
.submit {
width: 100%;
height: 42px;
line-height: 20px;
font-weight: 700;
font-size: 20px;
background-color: #611D86;
border: 1px solid #611D86;
padding-top: 10px;
padding-bottom: 10px;
color: #FFFFFF;
cursor: pointer;
border-radius: 5px;
text-align: center;
}
.submit:hover {
background-color: #8D44BC;
}


/* Footer------------------------- */
.FooterWRP {
width: 100%;
hight: auto;
text-align: center;
background-color: #F2E1FF;
padding-top: 30px;
}
.FooterLogo {
width: 190px;
height: 31px;
margin-left: auto;
margin-right: auto;
margin-bottom: 10px;
}
.FooterAdd {
font: 400 12px/12px "Noto Sans JP", sans-serif;
margin-bottom: 5px;
}
.FooterTel {
font: 700 24px/24px "Roboto", sans-serif;
color: #611D86;
margin-bottom: 5px;
}
.FooterFax {
font: 700 16px/16px "Roboto", sans-serif;
margin-bottom: 50px;
}
.Copyright {
font: 300 10px/10px "Noto Sans JP", sans-serif;
padding-bottom: 15px;
}


/* Common------------------------- */
#Content {
width: 100%;
height: auto;
padding-left: 0px;
padding-top: 70px;
}
.Chapter1 {
width: 94%;
height: auto;
margin-left: 3%;
margin-right: 3%;
padding-top: 30px;
}
.Chapter2 {
width: 90%;
height: auto;
margin-left: 5%;
margin-right: 5%;
}
.Chapter3 {
width: 94%;
height: auto;
margin-left: 3%;
margin-right: 3%;
}
.EngTTL {
width: 100%;
height: 30px;
font: 700 30px/30px "Roboto", sans-serif;
color: #611D86;
text-align: center;
margin-bottom: 5px;
}
.JpnTTL {
width: 100%;
height: 16px;
font: 700 16px/16px "Noto Sans JP", sans-serif;
text-align: center;
}
.IconBox {
width: 60px;
height: 60px;
margin-left: auto;
margin-right: auto;
margin-bottom: 10px;
}
.BoxL {
width: 100%;
height: 50px;
clear: both;
}
.BoxM {
width: 100%;
height: 20px;
clear: both;
}
.BoxS {
width: 100%;
height: 15px;
clear: both;
}




}
