@charset "utf-8";

/* reset */
html, body, div, span, p, img, strong, b, i, dl, dt, dd, ol, ul, li,
tbody, tfoot, thead, tr, th, td {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {line-height:1;}
a{
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
div#contentsBox {padding-top:0;}
div#contentsBox p{
	margin:0;
	line-height:1 !important;
}

/* ベース */
div#contentsWrap{
	background:#fff !important;
	width:960px !important;
	min-width:960px !important;
	margin:0 auto;
	color:#262626;
}
ul, ol{
	margin:0;
	padding:0;
	list-style:none !important;
}
li{
	margin-bottom:6px !important;
	line-height:1.6 !important;
	text-align:left;
}
div#contentsBox ul {padding-left:0 !important;}
.MarT1 {margin-top:1em;}

/* スマホ */
@media screen and (max-width: 767px) {
.spOnly {display:none;}
}

/* PC */
@media screen and (min-width: 768px) {
.pcOnly {display:none;}
}

#contentsWrap {font-size:1.4rem;}


/*===== FontSize 早見表(必要なもののみ残す) 　※ 16pxは1remで記載 ※ =====*/
html {
    --12px:calc(12 / 16 * 1rem);
    --13px:calc(13 / 16 * 1rem);
    --14px:calc(14 / 16 * 1rem);
    --15px:calc(15 / 16 * 1rem);
    --18px:calc(18 / 16 * 1rem);
    --20px:calc(20 / 16 * 1rem);
    --24px:calc(24 / 16 * 1rem);
    --30px:calc(30 / 16 * 1rem);
}


/* コンテンツ */
#ContentWrap{
    background:url("../images/bg_kirakira.png") center top repeat-x #fff;
    background-size:auto 658px;
    color:#262626;
}
#ContentWrap img {width:100%;}
section:not(#ContentWrap){
    width:1270px;
    margin:0 auto;
}
@media screen and (max-width: 767px) {
section:not(#ContentWrap) {width:100%;}
}


/* header */
.main header{
    background:#000;
    padding:0;
    font-size:var(--24px);
    text-align:center;
    box-sizing:border-box;
}
.main header img{
    max-width:1270px;
    margin:0 auto;
}
#BgWhite{
    background:url("../images/bg_white.jpg") repeat-x #fff;
    background-size:auto 15%;
}
.HeaderInfo{
    padding:3em 0;
    font-size:1em;
    text-align:center;
    line-height:1.8;
}

@media screen and (max-width: 767px) {
#BgWhite {background-size:auto 5%;}
.HeaderInfo{
    width:90%;
    margin:0 auto;
    padding:2em 0;
    font-size:var(--15px);
    text-align:left;
}
}


/* Plan */
.PlanWrap {margin-bottom:2em;}
.PlanBox{
    margin-bottom:4em;
    padding:0 10%;
    font-size:var(--20px);
    line-height:1.5;
}
.PlanTit{
    position:relative;
    background:#df2703;
    margin-bottom:1em;
    padding:0.5em 3.4em;
    font-size:var(--24px);
    font-weight:bold;
    color:#fff;
    line-height:1;
}
.PlanTit::before{
    position:absolute;
    bottom:0;
    left:0.5em;
    content:url("../images/tit_mark.png");
}
.PlanBox dl.PlanInfo {margin-top:1em;}
.PlanBox dl{
    display:flex;
    align-items:flex-start;
    justify-content:center;
    flex-wrap:wrap;
    margin:1em 0;
    font-size:1rem;
}
.PlanBox dt{
    background:#df2703;
    width:8em;
    margin-bottom:1em;
    padding:4px 0;
    color:#fff;
    text-align:center;
}
.PlanBox dd{
    width:calc(100% - 9em - 4px);
    margin-bottom:1em;
    padding:4px 0 4px 1em;
}

@media screen and (max-width: 767px) {
.PlanBox {font-size:var(--15px);}

.PlanBox dl{
    margin-top:0;
    font-size:var(--14px);
}
.company dl{
    flex-flow:column;
    font-size:var(--14px);
}
.PlanBox dt, .PlanBox dd, .company dt, .company dd{
    width:100%;
    padding:4px 0;
}
.PlanBox dt, .company dt {margin-bottom:0;}
.PlanTit{
    background: url(../images/tit_mark.png) 10px top no-repeat, #df2703;
    background-size: auto 90%;
    padding-left:3em;
    font-size:var(--18px);
}
.PlanTit::before{
    position:absolute;
    left:0;
    content:"";
}
}

/* 詳細ボタン */
.Btn {text-align:center;}
.Btn2{
    margin:1em 0 2em;
    text-align:left;
}
/*#Link .Btn {text-align:left;}*/
.Btn a, .Btn2 a{
	display:inline-block;
	background:#f49631;
	margin:auto;
	padding:0.6rem 4rem;
    font-weight:bold;
	color:#fff;
	text-align:center;
	vertical-align:middle;
	text-decoration:none;
	border-radius:100vw;
    cursor:pointer;
    transition:all 0.3s;
}
.Btn a:hover, .Btn2 a:hover{
	background-position:right center;
	background-size:200% auto;
	color:#fff;
	animation:shad 1.5s infinite;
}
@keyframes shad{
	0% {box-shadow: 0 0 0 0 #f49631;}
	70% {box-shadow: 0 0 0 10px rgb(39 172 217 / 0%);}
	100% {box-shadow: 0 0 0 0 rgb(39 172 217 / 0%);}
}
@media screen and (max-width: 767px) {
.Btn a, .Btn2 a{
    display:block;
    width:90%;
    margin:0 auto;
    padding:0.6rem 0;
}
}

.SubTit{
    display:inline-block;
    background:linear-gradient(transparent 70%, #fafc78 30%);
    margin-bottom:0.6em;
}
.PlanBox ul{
    margin-bottom:2em;
    font-size:1rem;
}
.PlanBox li{
    margin-bottom:0.4rem;
    line-height:1.5 !important;
    list-style:none;
}
.PlanBox li::before {content:"・";}

.PriceBox dt{
    background:none;
    width:20%;
    margin-bottom:0.4em;
    color:#262626;
    text-align:left;
}
.PriceBox dt::before {content:"・";}
.PriceBox dd{
    width:calc(100% - 20% - 1em - 4px);
    margin-bottom:0.4em;
}
.Attention{
    margin-top:0.6em;
    font-size:var(--14px);
}

.PlanBox dd .PriceBox {margin-top:0;}
.PlanBox dd .PriceBox dt{
    background:none;
    width:37%;
    padding:0;
    color:#262626;
    text-align:left;
    line-height:1.5;
}
.PlanBox dd .PriceBox dd{
    width:calc(100% - 37% - 4px);
    padding:0;
}
.PriceBox dt.NoListstyle span{
    display:inline-block;
    background:linear-gradient(transparent 60%, #fafc78 40%) !important;
    margin-bottom:0.6em;
    font-weight:bold;
}
.PriceBox dt.NoListstyle:before {content:"";}
.PriceBox dd + dt.NoListstyle span {margin-top:1em;}

@media screen and (max-width: 767px) {
.PriceBox dl {display:block;}
.PriceBox dt{
    width:100%;
    margin-bottom:0;
    line-height:1.2;
}
.PriceBox dd{
    width:100%;
    margin:0 0 0.8em 1em;
}

.PlanBox .PriceBox dl{
    display:block;
    font-size:var(--15px);
}
.PriceBox > dl {flex-flow:wrap;}
.PlanBox dd .PriceBox dt{
    width:100%;
    margin-bottom:0;
    line-height:1.5;
}
.PlanBox dd .PriceBox dd{
    width:100%;
    margin:0 0 0.6em 1em;
}
..PlanBox dd .PriceBox dd + dd {display:none;}
.Attention{
    font-size:var(--14px);
    line-height:1.5;
}
.PlanBox dd .PriceBox dt.NoListstyle + dd {display:none;}
.PlanBox dd .PriceBox dt.W100{
    width:100%;
    margin:0;
}
.PlanBox dd .PriceBox dt.W100 + dd {display:none;}

.PlanBox dd .PriceBox {margin-top:0.4rem;}


}

section.specialDetailBottom {width:100% !important;}


