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

.lh160 {
	line-height: 160%;
}

.lh180 {
	line-height: 180%;
}

.bold {
	font-weight: bold;
}

.txt_big {
	font-size: 1.8rem;
}

.txt_big01 {
	font-size: 2.0rem;
}

.txt_big02 {
	font-size: 2.6rem;
}

.txt_small {
	font-size: 1.2rem;
}

.txt_col01 {
	color: #C4654B;
}
.txt_col02 {
	color: #EA5411;
}


.right {
	text-align: right;
}

.center {
	text-align: center;
}

.att25 {
	text-indent: -1.9em;
	padding-left: 1.9em;
}

.uline {
	text-decoration: underline;
}

h1 {
	padding: 2px 0 0 10px;
	margin: 1em 0 1.5em 0;
	font-size: 2.0rem;
	/*border-left: solid 8px #cef5eb;*/
	border-left: solid 8px #7FD3BE;
	font-weight: bold;
}

h2 {
	padding: 13px 10px 10px 15px;
	font-size: 2.4rem;
	font-weight: bold;
	display: block;
	position: relative;
	overflow: visible;
	color: #FFF;
	margin: 1em 0 0.5em;
  width: 100%;
	background: #77BFB8;
	box-sizing: border-box;
	font-weight: 600;
}
h2:before {
  content: "";
  background: #B2DBD7;
  width: 100%;
  height: 5px;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
}

/* 見出し */
h3 {
	font-size: calc(1.275rem + .3vw);
	margin: 0!important;
	padding: 0.25em 0.4em 0.3em;
	background: #FFF;
	width: 150px;
	text-align: center;
	font-weight: 600;
	border: 2px solid #D7D3CF;
}

h4 {
	font-size: 1.7rem;
	margin: 0; /* 見出しのマージン（上、左右、下） */
	padding: 0; /* 見出しのパディング（上下、左右） */
	color: #77BFB8;
	font-weight: 700;
}

h4.ttl04 {
	font-size: 2rem;
	padding-bottom: 5px;
	border-bottom: 1px solid #77BFB8;
	margin-top: 1em;
}

.txt_red {
	color: #F00;
}

.txt_blue01 {
	color: #069;
}

.txt_green01 {
	color: #363;
}

.txt_org01 {
	color: #DF5A00;
}

.normal {
	font-weight: normal;
}

/* 罫線装飾 */
hr.hr01{
    border:none;
    border-top:dashed 2px #CCC;
    height:1px;
    color:#FFFFFF;
    margin: 0 6 0 6;
}