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

/*--------------------------------------
　Main Index
---------------------------------------*/
.contents { width: 100%; }
.addInner {
	width: 1100px;
	margin: 0 auto;
}
header .headTopWrap {
	background-color: #ffdf64;
	color: #333;
}
.index .frame-wrap {}
.index .box-wrap { margin: 40px auto 10px; }
/*--------------------------------------
　visArea
---------------------------------------*/
#visArea {margin: 0 auto;}
#visArea .mainArea {
	background: url("img/index/mv_pic.jpg") center top no-repeat;
	background-size: cover;
	display: table;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	position: relative;
	padding: 6rem 0 2rem;
}
#visArea .mainArea .siteName {
	width: auto;
	border: none;
	padding: 0;
	margin: 0 auto 2.5rem;
}
#visArea .mainArea .siteName img {margin: -52px auto 0;}
#visArea .mainArea .siteNameSmall { font-size: 1.6rem; }
#visArea .mainArea .mainTxtBox {
	width: 750px;
	background: rgba(255,255,255,0.9);
	padding: 3rem;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
#visArea .mainArea .mainTxtBox::before{
	content: "";
	position: absolute;
	background: url(img/bg_main_half-circle.png) center top;
	width: 419px;
	height: 36px;
	left: 0;
	right: 0;
	top: -36px;
	margin: auto;
	opacity: 0.9;
	z-index: -1;
}
/*--------------------------------------
　float img
---------------------------------------*/
.float-wrap .fl {
	width: 350px;
	margin: 0 40px 10px 0;
	text-align: center;
}
.float-wrap .ct { width: 600px; }
/*--------------------------------------
.selection
---------------------------------------*/
.selection {
	background-color: transparent;
	padding: 1rem 0 0;
	margin: 0 0 2rem;
}
.selection .selectionBox { background-color: #f4f3f1; }
.selectionBoxTitle { font-weight: bold; }
.selectionBoxPrice {
	background-color: #fff;
	padding: 1rem 0.5rem;
}
.selectionBoxPriceTitle {
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: bold;
	border-bottom: solid 1px #111;
	margin-bottom: 2rem;
}
.contents table.selectionBoxPriceTable,
.contents table.selectionBoxPriceTable th,
.contents table.selectionBoxPriceTable td {
	border: none;
	margin: 0;
	padding: 0;
	line-height: 1.2;
}
.contents table.selectionBoxPriceTable th {
	background-color: transparent;
	font-weight: bold;
	font-size: 1.4rem;
	text-align: left;
	vertical-align: middle;
	padding: 6px;
}
.contents table.selectionBoxPriceTable td {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: right;
	padding: 6px;
}
.contents table.selectionBoxPriceTable td span { font-size: 3.2rem; }
.contents table.selectionBoxPriceTable .red {color:#ff5252; }
.contents p.selectionBoxPriceNote {
	margin: 0 auto;
	text-align: center;
	font-size: 1.3rem;
}
.contents .selectionNotes {
	font-size: 1.5rem;
}
/*--------------------------------------
addParts
---------------------------------------*/

.addParts.bg-orange {
	padding: 2rem 0;
	margin: 8rem auto;
}
.addParts.bg-orange {
	position: relative;
	background: #fffbef;
	z-index: 0;
}

.addParts01.bg_white{
	padding-bottom:0;
}
/* addParts01　アンカー
---------------------------------------*/
.addParts01 {
	width: 100%;
	margin: 0 0 5px;
	padding: 0 4rem 9rem;
	display: flex;
	justify-content: space-between;
}
.addParts01.bg-orange {
	background-color: #fffbef;
}

.addParts01.bg-orange {}
.addParts01 .addParts01BoxWrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 25px 0;
	counter-reset: num;
}
.contents .addParts01Box {
	margin: 0 20px 25px 0;
	font-size: 1.8rem;
	line-height: 1.4;
	color: #fff;
	position: relative;
	width: calc((100% - 40px) / 3 );
	height: 160px;
	/* font-family: 'Noto Serif JP'; */
	font-size: 2.6rem;
	line-height: 1.5;
	text-align: center;
	font-weight: bold;
}
.contents .addParts01Box:nth-child(3n) {
	margin-right: 0;
}
.contents .addParts01Box a{
	background-image: url(img/bg_date01.jpg);
	background-size: cover;
	background-position: center;
}
.contents .addParts01Box.long{
	width: 590px;
	flex-basis: 53.7%;
	margin: 0 auto 25px;
}

.contents .addParts01Box.date a{
	background-image: url(img/bg_date01.jpg);
	pointer-events: auto;
}
.contents .addParts01Box.kids a{
	background-image: url(img/bg_kids01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.joshikai a{
	background-image: url(img/bg_joshikai01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.kaishoku a{
	background-image: url(img/bg_kaishoku01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.douryo a{
	background-image: url(img/bg_douryo01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.insta a{
	background-image: url(img/bg_insta01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.solo a{
	background-image: url(img/bg_solo01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.lunch a{
	background-image: url(img/bg_lunch01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.lever a{
	background-image: url(img/bg_lever01.jpg);
	    pointer-events: auto;
}
.contents .addParts01Box.takeout a{
	background-image: url(img/bg_takeout01.jpg);
	    pointer-events: auto;
}
.addParts01Box a {
	display: flex;
	position: relative;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
}
.addParts01BoxWrap .addParts01Box a::before {
	content: "";
}

.addParts01Box a::after {
	content: "1";
	width: 40px;
	height: 40px;
	background: #f19500;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: -20px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	counter-increment: num;
	content: counter(num);
}
.addParts01Box .name { padding: 0 0 8px 114px; }
.addParts01Box p span {font-weight: bold;color: #333;}
/* addParts02　3社詳細
---------------------------------------*/
.addParts02 {
	width: 100%;
	background-color: #fffbef;
	padding: 3rem 0 6rem;
	position: relative;
	z-index: 0;
}
.addParts02.white{
	background: #fff  
}

.index .addParts02 .partTtl {
	font-size: 2.6rem;
	font-weight: bold;
	display: block;
	margin: 60px auto 30px;
	padding: 1.5rem 1rem;
	border-top: 1px dashed #222;
	border-bottom: 1px dashed #222;
	/* font-family: 'Noto Serif JP'; */
}
/* .addParts02Header */
.addParts02Header {
	width: 1000px;
	margin: 0 auto;
}
.index .addParts02 .addParts02__tit{
	font-size: 4rem;
	line-height: 1.5;
	font-weight: bold;
	display: block;
	margin: 6rem auto 3rem;
	text-align: center;
	padding: 0;
	background-image: url(img/addParts02_img01.png);
	background-repeat: no-repeat;
	background-position: right center;
	position: relative;
	width: 880px;
}

.index .addParts02 .addParts02__tit a {
    display: inline-block;
    padding-right: 3rem;
    background: url(img/arrow_black.png) no-repeat right 1.5rem center;
    background-size: 8px auto;
    text-decoration: underline;
    text-decoration-color: #f19500;
    text-decoration-thickness: 3px;
    text-underline-offset: 6px;
}

.index .addParts02 .addParts02__tit::before {
	content: "";
	background: url(img/icon_balloon.png);
	width: 114px;
	height: 114px;
	position: absolute;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 7.2rem;
	line-height: 1;
	padding-bottom: 1rem;
	font-family: 'Noto Serif JP';
	top: 0;
	bottom: 0;
	margin: auto;
}
.index .addParts02 .addParts02__tit.no1::before {
	content: "1";
}
.index .addParts02 .addParts02__tit.no2::before {
	content: "2";
}
.index .addParts02 .addParts02__tit.no3::before {
	content: "3";
}
.index .addParts02 .addParts02__tit.no4::before {
	content: "4";
}
.index .addParts02 .addParts02__tit.no5::before {
	content: "5";
}
.index .addParts02 .addParts02__tit.no6::before {
	content: "6";
}
.index .addParts02 .addParts02__tit.no7::before {
	content: "7";
}
.index .addParts02 .addParts02__tit.no8::before {
	content: "8";
}
.index .addParts02 .addParts02__tit.no9::before {
	content: "9";
}
.index .addParts02 .addParts02__tit.no10::before {
	content: "10";
}

.addParts02Box {
	margin: 12rem auto 4rem;
	background-color: #fff;
	padding: 0 4rem 6rem;
	border: 2px solid #f19500;
}

.addParts02Box.cream {
	background-color: #fffbef;
}

.addParts02BoxHeader {margin-bottom: 6rem;text-align: center;position: relative;}
.addParts02BoxHeader .catch {
	display: inline-block;
	margin: 0 auto 2.2rem;
	color: #fff;
	font-weight: bold;
	font-size: 2.6rem;
	padding: 1.5rem 3rem;
	position: relative;
	max-width: 80%;
	background: #f19500;
	/* font-family: 'Noto Serif JP'; */
	border-radius: 10px;
	top: -40px;
	margin-bottom: -40px;
}
.addParts02BoxHeader .catch span {
	display: inline-block;
	line-height: 1;
	position: absolute;
	bottom: 0;
	left: 13px;
}
.index .addParts02 .addParts02__stit {
	font-size: 4rem;
	font-weight: bold;
	text-align: center;
	/* font-family: 'Noto Serif JP'; */
}
.addParts02BoxHeader .note {
	text-align: center;
	font-size: 1.2rem;
	color: #111;
	font-weight: bold;
}
/* .addParts02BoxCapture */
.addParts02BoxCapture .float-wrap .fl {
	width: 334px;
	margin: 0 46px 10px 0;
}
.addParts02BoxCapture .float-wrap .txt { margin-left: 380px; }
.addParts02BoxCapture .float-wrap dl {
	background-color:#f5f5dc;
	padding: 2rem;
	text-align: center;
}
.addParts02BoxCapture .float-wrap dl dt {
	font-size: 2.0rem;
	font-weight: bold;
	margin: 0 0 1rem;
}
.addParts02BoxCapture .float-wrap dl dd {
	font-size: 3.4rem;
	line-height: 1;
	font-weight: bold;
}
.addParts02BoxCapture .float-wrap dl dd span {
	font-size: 2.7rem;
	color: #333;
}
.addParts02BoxCapture .float-wrap dl dd span.red {
	color: #ff5252;
	font-size: 7.3rem;
}
.index .addParts02BoxCapture .float-wrap .txt .box {
	border: 1px solid#ddd;
	margin: 1rem 0 0;
}
.index .addParts02BoxCapture .float-wrap .txt h4 {
	background:none;
	padding:0;
	margin:0;
	display:block;
	font-size:1.8rem;
	text-align:center;
	margin:2rem;
}
.addParts02BoxCapture .float-wrap .txt p {
	font-size: 1.8rem;
	text-align: center;
}
/* .addParts02BoxBenefit */
.addParts02BoxBenefit {
	display: flex;
	justify-content: space-between;
	padding: 0 1.5rem;
	margin: 3.5rem auto;
}
.addParts02BoxBenefitBox {
	width: 480px;
	text-align: center;
}

.float-wrap.ct.cf.narrow .addParts02BoxBenefit .addParts02BoxBenefitBox {
	width: 380px;
}

.addParts02BoxBenefitBoxTitle {
	font-weight: bold;
	font-size: 2.3rem;
}
.addParts02BoxBenefitBoxPrice {  
	line-height: 1;
	font-size: 4.3rem;
	font-weight: bold;
	margin: 10px auto;
}
.addParts02BoxBenefitBoxPrice span { font-size: 6.3rem; }
.addParts02BoxBenefitBoxNote {
	background: #f5f5dc;
	padding: 4px 10px;
	display: table;
	margin: 0 auto;
}
.contents ul.addParts02BoxBenefitBoxList {
	text-align: left;
	margin: 3rem auto 0;
	padding: 0;
}
.contents ul.addParts02BoxBenefitBoxList li {
	position: relative;
	padding-left: 1em;
}
.contents ul.addParts02BoxBenefitBoxList li::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 2px;
}
/* .addParts02BoxService */
.index .addParts02BoxService h4 {
	background-image: none;
	width: 74.5%;
	margin: 4rem auto;
	padding: 4.6rem 1rem;
	font-size: 3.3rem;
	font-weight: bold;
	text-align: center;
	border: 3px solid #e5f3f6;
	border-left: none;
	position: relative;
}
.index .addParts02BoxService h4::before {
	content: "";
	display: block;
	width: 30%;
	height: 3px;
	background-color: #e5f3f6;
	position: absolute;
	left: -22.5%;
	top: -3px;
}
.index .addParts02BoxService h4::after {
	content: "";
	display: block;
	width: 30%;
	height: 3px;
	background-color: #e5f3f6;
	position: absolute;
	left: -22.5%;
	bottom: -3px;
}
@media all and (-ms-high-contrast: none) {
	/* for IE10以降 */
	.index .addParts02BoxService h4::before { top:0; }
	.index .addParts02BoxService h4::after { bottom: 0; }
}
@supports (-ms-ime-align:auto) {
	/* for Edge */
	.index .addParts02BoxService h4::before { top:0; }
	.index .addParts02BoxService h4::after { bottom: 0; }
}
/* addParts03　サービスの選び方３つのポイント
---------------------------------------*/
.addParts03 {
	width: 100%;
	margin: 100px 0 125px;
}
.addParts03Header {
	padding: 5.8rem 4.8rem;
	border-right:15px solid #e5f3f6;
	border-left: 0;
	position: relative;
}
.addParts03Header::before {
	box-sizing: border-box;
	content: "";
	width: 100vw;
	height: 100%;
	border-top:15px solid #e5f3f6;
	border-bottom:15px solid #e5f3f6;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}
.index .addParts03 h2 {
	text-align: center;
	font-size: 3.0rem;
	font-weight: bold;  
}
/* addParts04　品質・安全・相性
---------------------------------------*/

.addParts04Box:first-child {
    margin-top: 4rem;
}

.addParts04Box {
	display: flex;
	width: 100%;
	margin: 3rem 0 0;
}
.addParts04BoxHeader {
	vertical-align: middle;
	width: 40px;
	height: 48px;
	background-color: #333;
	text-align: center;
	font-size: 4rem;
	font-weight: bold;
	line-height: 1.2;
	font-family: 'Noto Serif JP';
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 5px;
}
.addParts04BoxHeader.orange{
	background-color: #f19500;
}
.addParts04BoxHeader.green{
	background-color: #88cc29;
}
.addParts04BoxHeader.red{
	background-color: #ed3751;  
}
.addParts04BoxHeader span {
	display: block;
	text-align: center;
	line-height: 1;
	margin-bottom: 10px;
}
.addParts04BoxBody {
	display: block;
	vertical-align: middle;
	padding: 0 0 0 1.2rem;
	width: 100%;
}
.index .addParts04BoxBody .addParts04BoxTitle {
	text-align: left;
	font-size: 2.2rem;
	border-bottom: #222 2px solid;
	padding-bottom: 8px;
	line-height: 1.5;
	/* font-family: 'Noto Serif JP'; */
}
.index .addParts04BoxBody .addParts04BoxTitle a{
	display: block;
	position: relative; 
}

.index .addParts04BoxBody .addParts04BoxTitle a::after{
	content: "";
	position: absolute;
	right: 20px;
	top: 50%;
	border: solid transparent;
	border-width: 12px 8px;
	border-top-color: #637c86;
}

/* .addParts02BoxVoice */
.addParts02BoxVoice {
}
.addParts02BoxVoiceBoxWrap {
	display: flex;
	justify-content: space-between;
	padding: 0 3rem 3rem;
}
.addParts02BoxVoiceBox {
	width: calc((100% - 7.5rem) / 2);
	padding: 3.6rem 3rem 3rem;
	background-color: #fff7df;
	margin: 4rem 0 2rem;
	position: relative;
}
.addParts02BoxVoiceBox.white {
	background-color: #fff;
}
.addParts02BoxVoiceBox::after {
	content: "VOICE";
	width: 72px;
	display: block;
	background-size: 100% auto;
	margin: 0 auto;
	position: absolute;
	top: -18px;
	left: 0;
	right: 0;
	text-align: center;
	font-size: 2rem;
	background: #f19500;
	width: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	border-radius: 10px;
	line-height: 1.8;
	font-family: 'Noto Serif JP';
}
.index h5.addParts02BoxVoiceBoxTitle {
	margin: 0 -3rem 2.3rem;
	padding: 0 3rem 2rem;
	border-bottom: solid 2px #fff;
	font-size: 1.8rem;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: 'Noto Serif JP';
	font-size: 2.4rem;
}

.index h5.addParts02BoxVoiceBoxTitle.cream {
	border-bottom: solid 2px #fff7df;
}

/* .addParts02BoxPlan */
.addParts02BoxPlanBox {
	background-repeat: no-repeat;
	background-position: left top;
	margin: 3.7rem auto 2rem;
	display: flex;
	width: 100%;
}
.addParts02BoxPlanBoxWrap .addParts02BoxPlanBox:nth-child(1) {}
.addParts02BoxPlanBoxWrap .addParts02BoxPlanBox:nth-child(2) { background-image: url(img/index/ico_two.png); }
.addParts02BoxPlanBoxWrap .addParts02BoxPlanBox:nth-child(3) { background-image: url(img/index/ico_three.png); }
.addParts02BoxPlanBoxL {
	vertical-align: top;
	padding: 0 20px 0 0;
	width: calc(100% - 510px);
}
.index h5.addParts02BoxPlanBoxTitle {
	font-size: 3.4rem;
	color: #111;
	font-weight: bold;
	padding: 4px 0 4px 7.3rem;
	margin: 0 auto 2.3rem;
}
.addParts02BoxPlanBoxConditionWrap {
	width: 100%;
	margin: 0 0 2.8rem;
}
.addParts02BoxPlanBoxPerHour {
}
.addParts02BoxPlanBoxPerHour .hour {font-size: 2rem;color: #333;}
.addParts02BoxPlanBoxPerHour .price {
	font-weight: bold;
	font-size: 3.0rem;
	color: #333;
}
.addParts02BoxPlanBoxPerHour .yen {font-size: 1.7rem;color: #333;}
.addParts02BoxPlanBoxPerHour .note {font-size: 1.3rem;color: #333;}
.addParts02BoxPlanBoxCondition {margin: 1rem 0 2.5rem;display: flex;}
.addParts02BoxPlanBoxCondition .ribon {white-space: nowrap;margin: 0.2rem 3rem 0 0;}
.addParts02BoxPlanBoxCondition .ribon span {
	display: inline-block;
	background-color: #474747;
	border-radius: 2px 0 0 2px;
	line-height: 3.4rem;
	padding: 20px 9px 20px 15px;
	font-size: 20px;
	color: #fff;
	position: relative;
	border-left: 6px solid #f19500;
	line-height: 1rem;
}
.addParts02BoxPlanBoxCondition .ribon span::after {
	content: "";
	display: block;
	width: 0;
	border-style: solid;
	border-width: 26px 0 26px 16px;
	border-color: transparent transparent transparent #474747;
	position: absolute;
	right: -16px;
	top: -1px;
}
.addParts02BoxPlanBoxCondition .txt {
	font-size: 1.6rem;
	font-weight: bold;
	vertical-align: middle;
	line-height: 2.6;
}
.index .addParts02BoxPlanBoxL ul {
	padding: 0;
	margin: 0;
	letter-spacing: -.4em;
}
.index .addParts02BoxPlanBoxL ul li {
	letter-spacing: normal;
	box-sizing: border-box;
	display: inline-block;  
	border: #35a5bb solid 1px;
	line-height: 30px;
	font-size: 1.6rem;
	padding: 0 12px;
	border-radius: 100px;
	margin: 8px 10px 0 0;
}
@media all and (-ms-high-contrast: none) {
	/* IE11 */
	*::-ms-backdrop,
	.index .addParts02BoxPlanBoxL ul li {
		padding: 6px 12px 0;    
	}
}
.addParts02BoxPlanBoxR {
	width: 460px;
	vertical-align: middle;
	text-align: center;
	line-height: 1.4;
	margin-right: 40px;
}
.addParts02BoxPlanBoxR div:nth-child(1) {
	font-size: 1.6rem;
	font-weight: bold;
}
.addParts02BoxPlanBoxR div:nth-child(2) {
	font-size: 5.4rem;
	font-weight: bold;
	color: #ff5252;
}
.addParts02BoxPlanBoxR div:nth-child(2) span {
	color: #333;
	font-size: 2.7rem;
}
.addParts02BoxPlanCancel {
	margin: 6rem auto;
	padding: 3.8rem 3rem 1.8rem;
	background-color: #fff7df;
	border: 2px solid #ffdf64;
}

.addParts02BoxPlanCancel.white {
	background-color: #fff;
}

.addParts02BoxPlanCancelTitle {
	display: flex;
	margin: 0 0 2rem;
}
.addParts02BoxPlanCancelTitle div {
	display: block;
	vertical-align: middle;
}
.addParts02BoxPlanCancelTitle div.ribon {white-space: nowrap;padding: 3px 0;}
.addParts02BoxPlanCancelTitle div.ribon span {
	display: inline-block;
	background-color: #474747;
	border-radius: 2px 0 0 2px;
	line-height: 3.4rem;
	padding: 0 9px 0 15px;
	font-weight: bold;
	color: #fff;
	position: relative;
	margin-right: 27px;
	border-left: 6px solid #f19500;
	/* font-family: 'Noto Serif JP'; */
	font-size: 1.5rem;
}
.addParts02BoxPlanCancelTitle div.ribon span::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 17px 0 17px 14px;
	border-color: transparent transparent transparent #474747;
	position: absolute;
	right: -14px;
	top: 0;
}
.addParts02BoxPlanCancelTitle .txt {
	font-size: 2.3rem;
	font-weight: bold;
	/* font-family: 'Noto Serif JP'; */
}
.contents ul.addParts02BoxPlanCancelList {
	padding: 0;
	margin: 0 0 2rem;
}
.contents ul.addParts02BoxPlanCancelList li {
	position: relative;
	padding-left: 1em;
	padding-bottom: 1rem;
	font-size: 1.6rem;
}
.contents ul.addParts02BoxPlanCancelList li::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 2px;
}

@media screen and (max-width: 599px) {
	#contents { width: 100%; }  
	.addInner {width: 100%;padding: 3rem 4%;}  
	.index h2 { margin: 4rem auto 2rem; }
	.index .frame-wrap { margin: 0 auto 1rem; }
	.index .box-wrap { margin: 0 auto 1rem; }
  /*--------------------------------------
   visArea
   ---------------------------------------*/
   #visArea .mainArea .siteName img {
   	margin: -40px auto 0;
   }
   #visArea { margin: 0 auto;
   	display: block; }
   	#visArea .mainArea {
   		height: auto;
   		width: 100%;
   		max-width: 100%;
   		margin: 0 auto;
   		padding: 5rem 1.5rem 2rem;
   		background: url("img/index/mv_pic_sp.jpg") center top no-repeat;
   		background-size: cover;
   	}
   	#visArea .mainArea .mainTxtBox {
   		width: auto;
   		padding: 2rem;
   		background: rgba(255,255,255,0.9);
   		outline: none;
   	}
   	#visArea .mainArea .mainTxtBox::before{
   		width: 100%;
   		background-position: center;
   		top: -35px;
   		opacity: 0.9;
   	}
   	#visArea .mainArea .siteName { margin-bottom: 2rem; }
   	#visArea .mainArea .txtArea {color: #111;font-size: 1.3rem;}  
   	.contents .frame .frame-body .btn-web { width: 85%; }
  /*--------------------------------------
  .selection
  ---------------------------------------*/
  .selectionBoxWrap {
  	flex-direction: column;
  	margin: 0 auto;
  }
  .selectionBoxWrap .selectionBox:nth-child(1) { order:2; }
  .selectionBoxWrap .selectionBox:nth-child(2) { order:1; }
  .selectionBoxWrap .selectionBox:nth-child(3) { order:3; }
  .selection .selectionBox {
  	width: 100%;
  	border: none;
  	overflow: visible;
  	padding: 0 10px 10px;
  	margin: 2rem auto;
  }
  .selectionBoxHeader {
  	margin: 0 -10px 10px;
  	padding: 14px 10px 12px 110px;
  	position: relative;
  	border-bottom: dashed #bbbbbb 2px;
  }
  .selectionBoxHeader::after { display: none; }
  .selectionBoxHeader > img { display: block; }
  .selectionBoxTitle {
  	font-size: 1.5rem;
  	line-height: 1.4;
  	color: #111111;
  	text-align: left;
  }
  .index .selectionBoxName {
  	font-size: 2.2rem;
  	margin: 20px auto;
  }
  .selectionBoxPriceTitle { margin: 0 0 1rem; }
  .contents table.selectionBoxPriceTable,
  .contents table.selectionBoxPriceTable tbody,
  .contents table.selectionBoxPriceTable tr,
  .contents table.selectionBoxPriceTable th,
  .contents table.selectionBoxPriceTable td {
  	display: block;
  	text-align: center;
  }
  .contents table.selectionBoxPriceTable tr {
  	width: 50%;
  	text-align: center;
  	float: left;
  }
  .contents table.selectionBoxPriceTable td span { font-size: 2.7rem; }
  .contents .selectionNotes {
  	margin: 0 auto;
  	font-size: 1.3rem;
  }
  .selectionBox .btn-web a {
  	background-size: 10px auto;
  	background-position: right 10px top 50%;
  }
  .contents .selectionBox .btn-tel::after,
  .contents .selectionBox .btn-tel a::after { display: none; }
  /*--------------------------------------
  addParts
  ---------------------------------------*/
  .addParts.bg-orange{
  	margin: 2rem 0;
  }
  /* addParts01
  ---------------------------------------*/
  .addParts01{
  	padding: 8% 4%;
  }
  .addParts01.bg-orange {
    padding-top: 0;
}
  .addParts01BoxWrap { margin: 0 auto; }
  .addParts01BoxWrap .addParts01Box,.addParts01BoxWrap .addParts01Box.long {
  	width: 100%;
  	padding: 0;
  	margin: 0 auto 4rem;
  	flex-basis: 100%;
  }
  .addParts01BoxWrap .addParts01Box a {
  	height: 100%;
  	background-color: #f4f3f1;
  	pointer-events: none;
  }
  .addParts01Box a::after {
  }
  .addParts01Box .name {
  	padding: 0;
  	position: absolute;
  	left: 0;
  	right: 0;
  	top: -30px;
  	margin: 0 auto;
  	z-index: 3;
  	padding-left: 43px;
  }
  .addParts01Box .name img {
  	height: 17px;
  }
  .contents .addParts01Box p {
  }
  /* addParts02
  ---------------------------------------*/
  .addParts02 {
  	padding: 0;
  }
  .addParts02::before {
  	content: "";
  	width: 80px;
  	height: 80px;
  	top: -16px;
  }
  .addParts02Header { width: 100%; }

  .index .addParts02 .addParts02__tit {
  	font-size: 2.4rem;
  	display: block;
  	margin: 0rem auto 2rem;
  	padding: 1.6rem 6rem;
  	background-size: 52px auto , 52px auto;
  	width: 100%;
  }
  .index .addParts02 .addParts02__tit::before{
  	width: 55px;
  	height: 55px;
  	background-repeat: no-repeat;
  	background-size: contain;
  	font-size: 3.4rem;
  	left: 0;
  	padding-top: 0.5rem;
  }
  .index .addParts02 .addParts02__stit{font-size: 2.6rem;margin-top: 0;padding: 0;}

  .addParts02Box {
  	padding: 4%;
  	margin: 8rem 0;
  }
  .addParts02Box:last-child {
  	margin-bottom: 0;
  	padding-bottom: 0;
  }
  .addParts02BoxHeader{
  	margin: auto;
  }
  .addParts02BoxHeader .catch span {
  	width: 60px;
  	left: 0;
  }
  .addParts02BoxHeader .catch {
  	margin: auto;
  	font-size: 1.8rem;
  	line-height: 1.4;
  	padding: 1rem;
  }
  .index .addParts02BoxCapture .float-wrap { margin: 2rem auto; }
  .addParts02BoxCapture .float-wrap .txt { margin: 0; }
  .addParts02BoxCapture .float-wrap dl {
  	padding: 1rem;
  	margin-bottom: 1rem;
  }
  .addParts02BoxCapture .float-wrap dl dt { font-size: 1.4rem; }
  .addParts02BoxCapture .float-wrap dl dd { font-size: 1.4rem; }
  .addParts02BoxCapture .float-wrap dl dd span.red { font-size: 4.3rem; }
  .addParts02BoxCapture .float-wrap dl dd span { font-size: 1.7rem; }
  .index .addParts02BoxCapture .float-wrap .txt p {
  	margin: 1em auto;
  	font-size: 1.6rem;
  }
  .index .addParts02BoxCapture .float-wrap .txt p.note { font-size: 1.2rem; }  
  .addParts02BoxBenefit {
  	flex-direction: column;
  	padding: 0;
  	margin: 0;
  }
  .addParts02BoxBenefitBox {
  	width:100%;
  	margin: 1rem auto;
  }
  .float-wrap.ct.cf.narrow .addParts02BoxBenefit .addParts02BoxBenefitBox {
    width: 100%;
}
  .addParts02BoxBenefitBoxTitle { font-size: 1.6rem; }
  .addParts02BoxBenefitBoxPrice { font-size: 3.3rem; }
  .addParts02BoxBenefitBoxPrice span { font-size: 4.3rem; }
  .contents ul.addParts02BoxBenefitBoxList { margin: 1rem auto 0; }
  body .index .addParts02BoxService h4 {
  	width: 100%;
  	padding: 1.8rem 1rem;
  	font-size: 2rem;
  }
  .index .addParts02BoxService h4::before,
  .index .addParts02BoxService h4::after { left: -3.5%; }
  .index .addParts02 h4 {
  	font-size: 1.8rem;
  	margin: 40px auto 20px;
  	padding: 18px 50px;
  	background-size: 40px auto , 40px auto;
  }
  .index .addParts02 .partTtl {
  	font-size: 2.0rem;
  }

  .addParts02BoxVoice { padding: 0 0 2rem; }
  .addParts02BoxVoiceBoxWrap {
  	display: block;
  	padding: 0 1rem;
  }
  .addParts02BoxVoiceBox::after {
  	top: -10px;
  	font-size: 1.4rem;
  }
  .addParts02BoxVoiceBox {
  	width: 100%;
  	padding: 2.6rem 1.5rem 1.5rem;
  	margin: 3rem 0 2rem;
  }
  .index h5.addParts02BoxVoiceBoxTitle {
  	margin: 0 -1.4rem 1rem;
  	padding: 0 1.4rem 1rem;
  	font-size: 2.0rem;
  	display: block;
  	text-align: center;
  }  
  .addParts02BoxPlanBox {
  	display: block;
  	width: 100%;
  	padding: 0 0 2rem;
  	margin: 2rem auto 2rem;
  	background-size: 30px auto;
  }
  .addParts02BoxPlanBoxL {
  	display: block;
  	width: 100%;
  	padding: 0;
  }
  .index h5.addParts02BoxPlanBoxTitle {
  	font-size: 2.4rem;
  	color: #111;
  	font-weight: bold;
  	padding: 0 0 0 4rem;
  	margin: 0 auto 1rem;
  }
  .addParts02BoxPlanBoxConditionWrap {
  	display: block;
  	margin-bottom: 1rem;
  }
  .addParts02BoxPlanBoxPerHour {
  	display: block;
  	text-align: center;
  }
  .addParts02BoxPlanBoxCondition {
  	width: auto;
  	margin: 1.5rem auto 0;
  	display: block;
  	text-align: left;
  }
	
	.addParts02BoxPlanBoxCondition .ribon span {
		font-size: 1.4rem;
		padding: 1rem 9px 1rem 15px;
	}

	.addParts02BoxPlanBoxCondition .ribon span::after {
		border-width: 15px 0 15px 16px;
		top: 0;
	}	
	
  .index .addParts02BoxPlanBoxL ul li {
  	font-size: 1.2rem;
  	line-height: 26px;
  	padding:0 8px;
  	margin: 8px 4px 0;
  }
  .addParts02BoxPlanBoxR div:nth-child(2) { font-size: 4.4rem; }
  .addParts02BoxPlanBoxR {
  	display: block;
  	width: 100%;
  	margin: 1rem 0;
  }
  .addParts02BoxPlanCancel {
  	margin: 3rem auto;
  	padding: 1.5rem;
  }
  .addParts02BoxPlanCancelTitle {
  	display: block;
  	margin: 0;
  }
  .addParts02BoxPlanCancelTitle div {
  	display: block;
  	margin: 0 0 1rem;
  }

	.addParts02BoxPlanCancelTitle div.ribon span {
		width: 95%;
	}
  
  .addParts02BoxPlanCancelTitle .txt {font-size: 2rem;margin-bottom: 1.5rem;}
  .contents ul.addParts02BoxPlanCancelList li { font-size: 1.4rem; }
  /* addParts03
  ---------------------------------------*/
  .addParts03 { margin: 40px auto; }
  .addParts03Header {
  	padding: 0;
  	border:none;
  }
  .addParts03Header::before { display: none; }
  .index .addParts03 h2.addParts03HeaderTitle {
  	max-width: 100%;
  	font-size: 2rem;
  	padding: 18px;
  	border-right: 8px solid #e5f3f6;
  	position: relative;
  }
  .index .addParts03 h2.addParts03HeaderTitle::after {
  	box-sizing: border-box;
  	content: "";
  	width: 100vw;
  	height: 100%;
  	border-top: 8px solid #e5f3f6;
  	border-bottom: 8px solid #e5f3f6;
  	position: absolute;
  	right: 0;
  	top: 0;
  	z-index: -1;
  }
  .index .addParts03 h2.addParts03HeaderTitle br { display: none; }
  /* addParts04
  ---------------------------------------*/
  .addParts04Box {
  }
  .addParts04BoxHeader {
  	display: flex;
  	align-items: center;
  	width: 40px;
  	height: auto;
  	font-size: 1.6rem;
  	padding: 4px 10px;
  }
  .addParts04BoxHeader span {
  	width: 13px;
  	margin: 0 10px 0 0;
  	vertical-align: middle;
  }
  .addParts04BoxHeader span img { vertical-align: middle; }
  .addParts04BoxBody {
  	display: block;
  }
  .index .addParts04BoxBody .addParts04BoxTitle {
  	max-width: 100%;
  	font-size: 1.8rem;
  	padding: 0;
  	margin: 0;
  	background-size: 20px;
  }
  .index .addParts04BoxBody .addParts04BoxTitle a{
  	padding: 1rem 2rem 1rem 0;
  }
  .index .addParts04BoxBody .addParts04BoxTitle a::after{
  	right: 0;
  }

  	.index .addParts04BoxBody .addParts04BoxTitle + div { display: none; }
  }
