header{
	text-align: center;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 20px 0 10px 0;
	background-color: #f4f4f4;
}

/***** nav *****/
nav{
    margin: 12px 0 2px 16px;
    height: 20px;
}
nav > a{
    color:#3949AB;
    font-size: 0.8rem;
    text-decoration: none;
}
nav > img{
    width: 12px;
    height: 12px;
    -webkit-filter: invert(50%);
    filter: invert(50%);
}

/***** elements *****/
a{
    color: #3949AB;
}

a:visited {
    color: #3949AB;
    text-align: center;
}

span.link{
    color: #3949AB;
	text-decoration: underline;
}

p{
    font-size: 0.9rem;
	line-height: 20px;
}

p.link{
	line-height: 28px;
	padding-left:8px
}

div.page-link-box{
	padding:16px 10px 0 10px ;
	border: 1px solid #888;
	border-radius: 15px;
	margin-bottom: 10px;
}

p.page-link{
	font-size:1rem;
	line-height: 20px;
	margin: 0 0 16px 8px;
}
p.page-link > a{
	font-size:1rem;
	/*color:#333;*/
    color: #3949AB;
	text-decoration: none;
}
p.page-link-memo{
	font-size:0.8rem;
	line-height: 20px;
	margin: -14px 0 6px 10px;
}
p.title{
    font-size: 1.1rem;
	font-weight: bold;
	padding-bottom: 10px;
}
p.sub-title{
    font-size: 1rem;
	font-weight: bold;
	padding-bottom:2px;
}

div.hidden-items{
    display: none;
	margin: 0 0 0 20px;
}
ul{
	margin: 20px 5px 20px 20px;
}
li{
	font-size:0.9rem;
	line-height: 18px;
	margin-bottom: 10px;
}


/***** step *****/
div.step{	/*step No.*/
    display: flex;
    /*margin-left: 8px;*/
    margin-left: 6px;
    margin-bottom: 16px;
}
div.less-bottom-margin{
    margin-bottom: 4px;
}

div.step > p:first-child{
    width: 22px;
	min-width: 22px;
    height: 22px;
    line-height: 22px;
    font-size: 1rem;
    font-weight: bold;
 	background-color: #1E88E5;
    border-radius: 4px;
    color: #fff;
    text-align: center;
}
div.step > p:last-child{
    font-size: 1rem;
    font-weight: bold;
    line-height: 22px;
    margin-left: 10px;
}

div.description{
	margin: -14px 0 16px 42px;
	line-height: 20px;
    font-size: 0.9rem;
}
div.description-ml{
	margin: -6px 0 16px 42px;
    font-size: 0.9rem;
}
div.step-img-box{
	width: 280px;
	margin: 10px 5px;
    position: relative;
}
div.step-img-box > img.step{
	width: 280px;
	margin: 5px 0 10px 0;
	border: 1px solid #ccc;
}

div.step-img-box > p.step-no{
    position: absolute;
    display: block;
    width: 24px;
    height: 24px;
    line-height: 24px;
    font-size: 1rem;
    font-weight: bold;
    background-color: #1E88E5;
	border: 3px solid #000;
    border-radius: 15px;
    color: #fff;
    text-align: center;
}
div.step-img-box > p.step-mark{
    position: absolute;
    display: block;
    width: 24px;
    height: 24px;
    line-height: 24px;
    font-size: 1rem;
    font-weight: bold;
    background-color: #00695C;
	border: 3px solid #000;
    border-radius: 15px;
    color: #fff;
    text-align: center;
}

div.step-rect{
    position: absolute;
	border: 2px solid #1E88E5;
	border-radius: 6px;
}
div.red-mark-rect{
	position: absolute;
	border: 3px solid red;
	border-radius: 2px;
}

p.description{
    margin-left: 8px;
}

/***** note-box *****/
div.note-box{
	width: 300px;
	margin: 10px 10px;
}
div.note-box > p{
	line-height: 28px;
	font-size: 1rem;
	color: #3949AB;
	text-decoration: underline;
}

/***** note *****/
div.note{
    display: none;
	max-width: 260px;
	font-size: 0.9rem;
	padding: 8px 2px 10px 2px;
	margin-bottom: 10px;
	background-color: beige;
	border-radius: 5px;
}
div.note > div.step > p:first-child{
    width: 18px;
	min-width: 18px;
    height: 18px;
    line-height: 18px;
    font-size: 0.8rem;
    font-weight: bold;
    /*background-color: #1565C0;*/
	background-color: #00695C;
    border-radius: 4px;
    color: #fff;
    text-align: center;
}
div.note > div.step > p:last-child{
    font-size: 0.8rem;
    font-weight: bold;
    line-height: 18px;
    margin-left: 6px;
}
div.note > div.description{
	max-width: 260px;
    font-size: 0.8rem;
	margin: -7px 0 6px 36px;
}
div.note > div.description-ml{
	max-width: 260px;
    font-size: 0.8rem;
	margin: 2px 0 6px 36px;
}
div.note > img.step{
	width: 240px;
	margin: 10px;
}
div.note > p{
	margin: 5px 10px;
}
/***** sharing *****/
div.round-rect{
	width:145px;
	height: 200px;
	background-color: #eee;
	border: 1px solid #ccc;
	border-radius: 10px;
}

div.title{
	width: 100%;
	padding: 15px 0;
	text-align: center;
	font-size: 0.95rem;
	font-weight: bold;
}
a.step-link{
	font-size: 0.9rem;
	text-decoration: underline;
}
p.notice{
	font-size: 0.8rem;
}


/***** other *****/

div.hint{
	padding: 8px 12px;
	margin: 10px;
	background-color: #FFF3E0;
	border: 1px solid #BCAAA4;
	border-radius: 5px;
}

div.hint > p{
	font-size: 0.8rem;
	line-height: 22px;
}

span.step-mark{
	display: inline-block;
	margin: 0 10px 6px 0;
	width: 20px;
	height: 20px;
	font-size: 0.8rem;
	font-weight: bold;
	background-color: #00695C;
	border: 1px solid #000;
	border-radius: 10px;
	color: #fff;
	text-align: center;
}

div.center-text{
	width: 100%;
	text-align: center;
	font-size: 1.1rem;
}

div.gap10{
	width: 10px;
}

div.next-step{
	margin: 0 20px;
}

table.description{
	border: 1px solid #cccccc;
	border-radius: 6px;
	margin: 10px 0 10px 40px;
}
table.description td{
	border: 1px solid #cccccc;
	font-size: 0.8rem;
	padding: 5px;
}
table.description td:nth-child(1){
	font-weight: bold;
	background-color: #f0f0f0;
	min-width: 26px;
}

/*
table.capability{
	//border: 1px solid #888;
}*/


table.capability th{
	width:80px;
	text-align: center;
	border: 1px solid #888;
	background-color: #eee;
	vertical-align: middle;
	font-size: 0.8rem;
	height: 22px;
}

table.capability th:nth-child(1){
	width:120px;
}

table.capability tr{
	font-size: 0.9rem;
	height: 20px;
	border: 1px solid #888;
}
table.capability td{
	border: 1px solid #888;
	text-align: center;
	vertical-align: middle;
	font-size: 0.8rem;
	padding: 3px;
}