@charset “UTF-8”;
/* ==============================================================================

CSS Information

 File name:	parts.css

 Style Info:	box parts style 

============================================================================== */

/*-------------------------------------------------------------------------------

 box

-------------------------------------------------------------------------------*/

.basic__box h1   , .basic__box h2 , .basic__box h3 , .basic__box h4 , .basic__box h5 , .basic__box h6 ,
.caption__box h1 , .caption__box h2 , .caption__box h3 , .caption__box h4 , .caption__box h5 , .caption__box h6 ,
.iconcap__box h1 , .iconcap__box h2 , .iconcap__box h3 , .iconcap__box h4 , .iconcap__box h5 , .iconcap__box h6 {
	margin: 0;
	padding: 0;
	border: none;
	background: none;
	font-size: 1rem;
	font-weight: normal;
	line-height: 1.6;
}

.basic__box p ,
.caption__box p ,
.iconcap__box p {
	margin: 0 0 20px;
}
.basic__box p:last-child ,
.caption__box p:last-child ,
.iconcap__box p:last-child {
	margin-bottom: 0;
}


/* simple !important
-----------------------------------------------------------*/

.basic__box {
	position: relative;
	margin: 0 auto 20px;
	padding: 20px 25px;
}

.basic__box.box_sl03r {
	border-radius: 4px;
	border: 3px solid #CCC;
	border-color: #60678c;
}

.basic__box.box_da03r {
	border-radius: 4px;
	border: 3px dashed #CCC;
	border-color: #f2bf7d;
}

.basic__box.box_do03r {
	border-radius: 3px;
	border: 3px dotted #CCC;
	border-color: #0161af;
}

.basic__box.box_db03r {
	border-radius: 4px;
	border: 3px double #CCC;
	border-color: #b5e28a;
}

.basic__box.box_sl01r {
	border-radius: 4px;
	border: 1px solid #CCC;
	border-color: #7badd8;
	background: #F9FCFE;
}

.basic__box.box_da01r {
	border-radius: 4px;
	border: 1px dashed #CCC;
	border-color: #e896c7;
	background: #fefafb;
}

.basic__box.box00 {
	background: #EEE;
	background: #fbf9e9;
}

.basic__box.box_sl10 {
	border: 10px solid #CCC;
	border-color: #def1f9;
	background: #f9fcfe;
}

.basic__box.box_sll05 {
	border-left: 5px solid #999;
	border-color: #96ddc1;
	background: #f5fcf9;
}

.basic__box.box00ex {
	background: #f9f3fb;
}
.basic__box.box00ex:after {
	position: absolute;
	content: '';
	display: block;
	right: 0;
	top: 0;
	border-width: 0 30px 30px 0;
	border-style: solid;
	border-color: #fff #fff #e1c0e8 #e1c0e8;
}

.basic__box.box04sk {
	border: 4px solid #f6bfbc;
	border-radius: 3em .8em 3em .7em/.9em 2em .8em 3em;
}

.basic__box.box_slt05 {
	border: 1px solid #999;
	border-top: 5px solid #f2bf7d;
}

.basic__box.crossbox {
	border-top: solid 1px black;
	border-bottom: solid 1px black;
}
.basic__box.crossbox:before ,
.basic__box.crossbox:after {
	content: '';
	position: absolute;
	top: -10px;
	width: 1px;
	height: -webkit-calc(100% + 20px);
	height: calc(100% + 20px);
	background-color: black;
}
.basic__box.crossbox:before {left: 10px;}
.basic__box.crossbox:after {right: 10px;}

.basic__box.brackets:before,.basic__box.brackets:after {
	position: absolute;
	display: inline-block;
	content:'';
	width: 50px;
	height: 50px;
}
.basic__box.brackets:before {
	top:0;
	left: 0;
	border-left: solid 1px #5767bf;
	border-top: solid 1px #5767bf;
}
.basic__box.brackets:after {
	bottom:0;
	right: 0;
	border-right: solid 1px #5767bf;
	border-bottom: solid 1px #5767bf;
}


/* title
-----------------------------------------------------------*/

.caption__box {
	position: relative;
	overflow: hidden;
	margin: 0 auto 20px;
	padding: 20px 25px;
	background: #EEE;
}
.caption__box .title {
	margin: -20px -25px 20px;
	padding: 12px 0;
	background: #666;
	color: #FFF;
	font-size: 1.125rem;
	text-align: center;
}

.caption__box.box00r {
	border-radius: 4px;
	background: #fff4f1;
}
.caption__box.box00r .title {
	background: #ffb49e;
}

.caption__box.box_sl01r {
	border-radius: 4px;
	background: #FFF;
	border: 1px solid #404a75;
}
.caption__box.box_sl01r .title {
	background: #404a75;
}

.caption__box.blackboard {
	padding-bottom: 30px;
	background: #0c5937;
	border: 10px solid #9f8023;
	color: #FFF;
}
.caption__box.blackboard:before {
	position: absolute;
	content: '';
	right: 0px;
	bottom: 0px;
	width: 62px;
	height: 25px;
	background-image: url(../image/common/icon_eraser.svg);
	background-size: cover;
}
.caption__box.blackboard .title {
	margin-bottom: 8px;
	background: none;
}
.caption__box.blackboard .bb_yw {
	color: #fbf332;
}
.caption__box.blackboard .bb_pk {
	color: #dd6aa5;
}
.caption__box.blackboard .bb_sky {
	color: #27b7dc;
}
.caption__box.blackboard.bl {
	background: #333;
}

.caption__box.tabbox {
	overflow: visible;
	margin-top: 38px;
	background: #FFF;
	border: 1px solid #ea91a9;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
}
.caption__box.tabbox .title {
	position: absolute;
	top: -38px;
	left: -1px;
	margin: 0;
	padding: 10px 15px;
	background: #ea91a9;
	border-top-right-radius: 4px;
	border-top-left-radius: 4px;
	line-height: 18px;
}

.caption__box.mastabox {
	overflow: visible;
	margin-top: 19px;
	padding-top: 38px;
	border-radius: 4px;
	background: #ebf6f7;
	border-radius: 4px;
}
.caption__box.mastabox .title {
	position: absolute;
	top: -19px;
	left: 20px;
	margin: 0;
	padding: 10px 15px;
	background: #57b3ba;
	line-height: 18px;
}


/* iconcap__box
-----------------------------------------------------------*/

.iconcap__box {
	position: relative;
	margin: 20px auto 20px;
	padding: 35px 25px 20px;
	border-radius: 4px;
	border: 1px solid #CCC;
}

.iconcap__box .title {
	position: absolute;
	top: -20px;
	padding: 20px 8px 20px 50px;
	background: #FFF;
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 0;
}

.iconcap__box::after {
	position: absolute;
	content: '';
	top: -20px;
	left: 30px;
	width: 18px;
	height: 18px;
	padding: 10px;
	background: #999;
	border-radius: 50%;
	color: #FFF;
	font-size: 1.125rem;
	font-family: FontAwesome;
	text-align: center;
	line-height: 1;
}

.iconcap__box.pointbox {
	border-color: #85db8f;
}
.iconcap__box.pointbox .title {
	color: #85db8f;
}
.iconcap__box.pointbox::after {
	background: #85db8f;
	content: '\f00c';
}

.iconcap__box.attentionbox {
	border-color: #efb055;
}
.iconcap__box.attentionbox .title {
	color: #efb055;
}
.iconcap__box.attentionbox::after {
	background: #efb055;
	content: '\f071';
}

.iconcap__box.goodbox {
	border-color: #86cee8;
}
.iconcap__box.goodbox .title {
	color: #86cee8;
}
.iconcap__box.goodbox::after {
	background: #86cee8;
	content: '\f1db';
}

.iconcap__box.badbox {
	border-color: #ed8989;
}
.iconcap__box.badbox .title {
	color: #ed8989;
}
.iconcap__box.badbox::after {
	background: #ed8989;
	content: '\00d7';
	font-size: 1.75rem;
	line-height: .5;
}

.iconcap__box.notebox {
	border-color: #9e9e9e;
}
.iconcap__box.notebox .title {
	color: #9e9e9e;
}
.iconcap__box.notebox::after {
	background: #9e9e9e;
	content: '\f02d';
}

.iconcap__box.memobox {
	border-color: #8eaced;
}
.iconcap__box.memobox .title {
	color: #8eaced;
}
.iconcap__box.memobox::after {
	background: #8eaced;
	content: '\f040';
}

.iconcap__box.hintbox {
	border-color: #ffcd45;
}
.iconcap__box.hintbox .title {
	color: #ffcd45;
}
.iconcap__box.hintbox::after {
	background: #ffcd45;
	content: '\f0eb';
}


/* orijinal num caption
-----------------------------------------------------------*/

.numcap__box {
	position: relative;
	margin-bottom: 40px;
	padding-left: 60px;
	font-size: 1.125rem;
	line-height: 1.4;
}

.numcap__box .num {
	position: absolute;
	top: 0;
	left: 15px;
	color: #8c8584;
	font-size: 2.5rem;
	font-weight: normal;
	line-height: 1;
}

.numcap__box .title ,
.numcap__box h1 ,
.numcap__box h2 ,
.numcap__box h3 ,
.numcap__box h4 ,
.numcap__box h6 ,
.numcap__box h6 {
	margin: 0;
	padding: 0;
	border: none;
	font-size: 1.5rem;
	line-height: 1.8;
}

.numcap__box.box_sll01 {
	border-left: 1px solid #8c8584;
}

/* /////////////////////////////////////////////////////////////////////////////

 デバイス別 ※ 基本 mobile first でPCに追加style

///////////////////////////////////////////////////////////////////////////// */

/*media Queries PCサイズ
----------------------------------------------------*/

@media only screen and (min-width: 769px) {
	.basic__box {
		margin-bottom: 40px;
	}
}

