@charset "utf-8";

/******************************************
汎用classの定義
- Title Style
- Section Style
- List Style
- Button Style
- Table Style
- Form Style
- Text Style
- Stopgap Class
- Clearfix
*******************************************/

.pcNone {
  display:none!important;
}

@media screen and (max-width:767px) {
  .spNone {
    display:none!important;
  }
  .pcNone {
    display:inline-block!important;
    vertical-align:bottom;
  }
}

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

- Title Style

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

/* title
------------------------------- */
.title01 {
	font-size: 160%;
	font-weight: bold;
	margin-bottom: 18px;
	text-align: center;
	letter-spacing: 0.06em;
}

@media screen and (max-width:767px){
/*スマホ指定*/
	.title01 {
		font-size: 135.7%;
		margin-bottom: 20px;
	}

}

/* #main h2
------------------------------- */
#main h2 {
	font-size: 192.9%;
	font-weight: bold;
	margin-bottom: 40px;
	letter-spacing: 0.06em;
	line-height: 1.45;
	border-bottom: 4px solid #efefef;
	padding-bottom: 20px;
	position: relative;
}
#main h1{
	font-size: 192.9%;
	font-weight: bold;
	margin-bottom: 40px;
	letter-spacing: 0.06em;
	line-height: 1.45;
	border-bottom: 4px solid #efefef;
	padding-bottom: 20px;
	position: relative;
}
#main h2:before {
	content: "";
	display: block;
	width: 140px;
	height: 4px;
	background: #004672;
	position: absolute;
	bottom: -4px;
}
#main h1:before{
	content: "";
	display: block;
	width: 140px;
	height: 4px;
	background: #004672;
	position: absolute;
	bottom: -4px;
}
@media screen and (max-width:767px){
	#main h2 {
		font-size: 142.9%;
		margin-bottom: 25px;
		border-bottom: 4px solid #efefef;
		padding-bottom: 15px;
	}
	#main h1{
		font-size: 142.9%;
		margin-bottom: 25px;
		border-bottom: 4px solid #efefef;
		padding-bottom: 15px;
	}
	#main h2:before {
		width: 80px;
	}
	#main h1:before{
		width: 80px;
	}
}

/* #main h3
------------------------------- */
#main h3 {
	font-size: 150%;
	font-weight: bold;
	margin-bottom: 30px;
	letter-spacing: 0.06em;
	line-height: 1.45;
	border-bottom: 1px solid #004672;
	padding-bottom: 12px;
	position: relative;
}
@media screen and (max-width:767px){
	#main h3 {
		font-size: 128.6%;
		margin-bottom: 20px;
		padding-bottom: 10px;
	}
}

/* #main h4
------------------------------- */
#main h4 {
	font-size: 121.5%;
	font-weight: bold;
	margin-top: 30px;
	margin-bottom: 20px;
	letter-spacing: 0.06em;
	line-height: 1.5;
	position: relative;
	border-left: 4px solid #004672;
	padding: 2px 0 1px 11px;
}
@media screen and (max-width:767px){
	#main h4 {
		font-size: 114.3%;
		margin-bottom: 13px;
		padding: 2px 0 1px 11px;
	}
}

/* #main h5
------------------------------- */
#main h5 {
	font-size: 107.2%;
	font-weight: bold;
	margin-bottom: 10px;
	letter-spacing: 0.06em;
	line-height: 1.55;
	color: #004672;
	position: relative;
}

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

- Section Style

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

/* box01
------------------------------- */
.box01 {
	background: #efefef;
	padding: 35px;
}
.box01BtnUnit {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -4px;
	margin-bottom: 20px;
}
.box01BtnUnit li {
	width: 20%;
	padding: 0 4px;
}
.box01BtnUnit li a {
	display: block;
	line-height: 1.5;
	letter-spacing: .03em;
	font-weight: bold;
	text-align: center;
	background: #fff;
	padding: 13px 6px;
	white-space: nowrap;
}
.box01BtnUnit li a.active {
	background: #656565;
	color: #fff;
}
.box01Inner {
	background: #fff;
	padding: 25px;
}
.box01InnerSec {
	margin-bottom: 30px;
	
}
.box01 .box01InnerSec:last-of-type {
	margin-bottom: 0;
}
@media screen and (max-width:767px){
	.box01 {
		padding: 20px;
	}
	.box01BtnUnit {
		margin-bottom: 12px;
	}
	.box01BtnUnit li {
		width: 50%;
		margin-bottom: 8px;
	}
	.box01Inner {
		padding: 20px;
	}
	
}

/* box02
------------------------------- */
.box02 {
	background: #d9e7f8;
	padding: 40px;
	position: relative;
}
.box02:before {
	content: "";
	display: block;
	border-style: solid;
	border-width: 32px 32px 0 0;
	border-color: #a2c2ea transparent transparent transparent;
	position: absolute;
	left: 0;
	top: 0;
}
.box02 .ttl {
	font-weight: bold;
	font-size: 128.6%;
	color: #004672;
	margin-bottom: 15px;
}
.box02 .box02BgW {
	background: #fff;
	padding: 20px 30px;
}
.box02 .capList li {
	margin-bottom: 0;
}

@media screen and (max-width:767px){
	.box02 {
		padding: 20px;
	}
	.box02 .ttl {
		font-size: 114.3%;
	}
	.box02 .box02BgW {
		padding: 12px 15px;
	}
}


/* infoBox01
------------------------------- */
.infoBox01Header {
	font-weight: bold;
	text-align: center;
	margin-bottom: 13px;
}
.infoBox01Header small {
	font-weight: normal;
	font-size: 85.8%;
}
.infoBox01 ul {
	display: flex;
	justify-content: center;
}
.infoBox01 ul li {
	position: relative;
}
.infoBox01 ul li:first-of-type {
	padding-right: 80px;
	position: relative;
}
.infoBox01 ul li:first-of-type:after {
	content: "";
	display: block;
	width: 1px;
	height: 30px;
	background: #c7c7c7;
	position: absolute;
	top: 2px;
	right: 40px;
	-webkit-transform: rotate(30deg); transform: rotate(30deg); 
}
.infoBox01 ul li .text01 {
	border: 1px solid #004672;
	width: 56px;
	height: 23px;
	text-align: center;
	line-height: 23px;
	display: inline-block;
	font-weight: bold;
	color: #004672;
	margin-right: 15px;
	vertical-align: 4px;
}
.infoBox01 ul li .text02 {
	font-size: 157.2%;
	font-weight: bold;
	display: inline-block;
}
@media screen and (max-width:767px){
	.infoBox01Header small {
		display: block;
		margin-top: 2px;
	}
	.infoBox01 ul {
		display: block;
	}
	.infoBox01 ul li {
		padding: 0 0 10px!important;
		margin-bottom: 10px;
		border-bottom: 1px solid #c7c7c7;
		text-align: center;
	}
	.infoBox01 ul li:first-of-type:after {
		display: none;
	}
	.infoBox01 ul li:last-of-type {
		padding-bottom: 0!important;
		margin-bottom: 0!important;
		border-bottom: none!important;
	}
	.infoBox01 ul li .text01 {
		font-size: 92.9%;
		width: 40px;
		height: 21px;
		line-height: 21px;
		margin-right: 5px;
		vertical-align: 2px;
	}
	.infoBox01 ul li .text02 {
		font-size: 128.6%;
	}
}

/* infoBox02
------------------------------- */
.infoBox02 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.infoBox02 .sec {
	width: 48.2%;
	background: #d9e7f8;
	margin-bottom: 30px;
}
.infoBox02 .secHeader {
	min-height: 60px;
	background: #004672;
	color: #fff;
	display: flex;
	align-items: center;
}
@media all and (-ms-high-contrast: none){
	.infoBox02 .secHeader {
		height: 60px;
	}
}
.infoBox02 .secHeaderInner {
	text-align: center;
	width: 100%;
	padding: 7px 10px;
}
.infoBox02 .secHeaderInner span {
	display: block;
	font-size: 121.5%;
	font-weight: bold;
	line-height: 1.5;
}
.infoBox02 .secHeaderInner small {
	display: block;
	font-size: 85.8%;
	line-height: 1.5;
}
.infoBox02 .sec .infoBox02List01 {
	padding: 20px 20px 5px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.infoBox02 .sec .infoBox02List01 li {
	width: 48%;
	text-align: center;
	background: #fff;
	line-height: 1.5;
	padding: 18px;
	font-weight: bold;
	color: #004672;
	margin-bottom: 15px;
	display: flex;
	align-items: center;
}
.infoBox02 .sec .infoBox02List01 li span {
	display: block;
	width: 100%;
	text-align: center;
}
.infoBox02 .sec .infoBox02List02 {
	padding: 0 20px 20px;
}
.infoBox02 .sec .infoBox02List02 li {
	margin-bottom: 3px;
}
.infoBox02 .sec .infoBox02List02 li a {
	display:  inline-block;
	position: relative;
	padding: 0 0 0 15px;
}
.infoBox02 .sec .infoBox02List02 li a:hover {
	opacity: .6;
}
.infoBox02 .sec .infoBox02List02 li:last-of-type {
	margin-bottom: 0;
}
.infoBox02 .sec .infoBox02List02 li a:before {
	content: "\f105";
    font-family: FontAwesome;
	color: #1b5a83;
	font-size: 128.6%;
	position: absolute;
	left: 1px;
	top: -3px;
}

@media screen and (max-width:767px){
	.infoBox02 {
		display: block;
	}
	.infoBox02 .sec {
		width: 100%;
	}
	.infoBox02 .sec .infoBox02List01 li {
		width: 100%;
	}
}

/* infoBox03
------------------------------- */
.infoSec03 {
	border-bottom: 1px dotted #a2a2a2;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.infoSec03Box .infoSec03:last-of-type {
	border: none;
	padding: 0;
	margin: 0;
}
.infoSec03Inner {
	display: flex;
	font-weight: bold;
}
.infoSec03Inner .tag {
	display: inline-block;
	min-width: 165px;
	padding: 0 3px;
	height: 26px;
	line-height: 26px;
	text-align: center;
	color: #fff;
	flex-shrink: 0;
	margin: 0 18px 0 0;
}
.infoSec03Inner .tag.bgc_004672 {
	background: #004672;
}
.infoSec03Inner .tag.bgc_656565 {
	background: #656565;
}
@media screen and (max-width:767px){
	.infoSec03Inner {
		display: block;
	}
	.infoSec03Inner .tag {
		margin: 0 0 10px;
	}
}

/* floorList
------------------------------- */
.floorList .sec {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	border-bottom: 1px dotted #a2a2a2;
	padding-bottom: 17px;
	margin-bottom: 30px;
}
.floorList .sec:last-of-type {
	margin-bottom: 0;
}
.floorList .sec .num {
	width: 100px;
	height: 100px;
	position: relative;
	flex-shrink: 0;
	background: #d9e7f8;
}
.floorList .sec .num span {
	width: 100%;
	text-align: center;
	padding: 20px;
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);
	font-size: 171.5%;
	font-weight: bold;
	color: #004672;
	letter-spacing: .06em;
}
.floorList .sec dl{
	width: 710px;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
.floorList .sec dl dt {
	font-size: 121.5%;
	font-weight: bold;
	margin-bottom: 18px;
	letter-spacing: 0.06em;
	line-height: 1.5;
	position: relative;
	border-left: 4px solid #004672;
	padding: 2px 0 1px 11px;
	width: 100%;
}
.floorList .sec dl dd {
	width: 25%;
	line-height: 1.5;
	position: relative;
	padding-left: 14px;
	padding-right: 10px;
	margin-bottom: 10px;
}
.floorList .sec dl dd:before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #004672;
	position: absolute;
	left: 0;
	top: 7px;
}

@media screen and (max-width:767px){
	.floorList .sec {
		padding-bottom: 7px;
		margin-bottom: 20px;
	}
	.floorList .sec .num {
		width: 60px;
		height: 60px;
	}
	.floorList .sec .num span {
		padding: 10px;
		font-size: 142.9%;
	}
	.floorList .sec dl{
		width: calc(100% - 80px);
	}
	.floorList .sec dl dt {
		font-size: 107.2%;
	}
	.floorList .sec dl dd {
		width: 50%;
	}
}
@media screen and (max-width:374px){
	.floorList .sec dl dd {
		width: 100%;
	}
}

/* flowList01
------------------------------- */
.flowList01 .sec {
	display: flex;
	justify-content: space-between;
	padding-bottom: 70px;
	position: relative;
}
.flowList01 .sec:after {
	content: "";
	display: block;
	width: 2px;
	height: 50px;
	background: #004672;
	position: absolute;
	left: 73px;
	bottom: 10px;
}
.flowList01 .sec:last-of-type {
	padding-bottom: 0;
}
.flowList01 .sec:last-of-type:after {
	display: none;
}
.flowList01 .sec > .fig {
	width: 150px;
	height: 150px;
	display: block;
	position: relative;
	background: #efefef;
	border-radius: 50%;
	flex-shrink: 0;
}
.flowList01 .sec .fig img {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);
}
.flowList01 .sec .text {
	width: 650px;
	flex-shrink: 0;
}
.flowList01 .sec .text .ttl {
	font-size: 128.6%;
	font-weight: bold;
	color: #004672;
	letter-spacing: .06em;
	line-height: 1.5;
	margin-bottom: 13px;
}
.flowList01 .sec .text .ttl span {
	display: inline-block;
	width: 22px;
	height: 22px;
	line-height: 23px;
	background: #004672;
	margin-right: 8px;
	color: #fff;
	text-align: center;
	font-size: 77.8%;
	vertical-align: 1px;
}

@media screen and (max-width:767px){
	.flowList01 .sec {
		padding-bottom: 25px;
	}
	.flowList01 .sec:after {
		display: none;
	}
	.flowList01 .sec > .fig {
		width: 70px;
		height: 70px;
	}
	.flowList01 .sec .fig img {
		position: absolute;
		left: 50%;
		top: 50%;
		-webkit-transform: translate(-50%, -50%) scale(.7); transform: translate(-50%, -50%) scale(.7);
	}
	.flowList01 .sec .text {
		width: calc(100% - 85px);
	}
	.flowList01 .sec .text .ttl {
		font-size: 121.5%;
		margin-bottom: 13px;
	}
	.flowList01 .sec .text .ttl span {
		width: 20px;
		height: 20px;
		line-height: 20px;
	}
}

/* flowList02
------------------------------- */
.flowList02 {
	background: #d9e7f8;
	padding: 40px;
}
.flowList02 .sec {
	display: flex;
	padding-bottom: 60px;
	position: relative;
}
.flowList02 .sec:after {
	content: "";
	border-style: solid;
	border-width: 19px 23.5px 0 23.5px;
	border-color: #a2c2ea transparent transparent transparent;
	position: absolute;
	left: 50%;
	-webkit-transform: translate(-50%, 0); transform: translate(-50%, 0);
	bottom: 20px;
	display: block;
}
.flowList02 .sec:last-of-type {
	padding-bottom: 0;
}
.flowList02 .sec:last-of-type:after {
	display: none;
}
.flowList02 .sec .l {
	width: 130px;
	background: #004672;
	text-align: center;
	padding: 22px 25px;
}
.flowList02 .sec .l {
	color: #fff;
	font-weight: bold;
	line-height: 1.5;
	display: flex;
	align-items: center;
}
.flowList02 .sec .l span {
	width: 100%;
	text-align: center;
	display: block;
}
.flowList02 .sec .r {
	width: calc(100% - 130px);
	background: #fff;
	padding: 22px 25px;
}
@media screen and (max-width:767px){
	.flowList02 {
		padding: 20px;
	}
	.flowList02 .sec {
		padding-bottom: 40px;
	}
	.flowList02 .sec:after {
		bottom: 11px;
	}
	.flowList02 .sec .l {
		width: 70px;
		padding: 10px 5px;
	}
	.flowList02 .sec .r {
		width: calc(100% - 80px);
		padding: 12px 15px;
	}
}

/* flowBox
------------------------------- */
.flowBoxIn {
	background: #d9e7f8;
	padding: 30px;
}
.flowBoxRow {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.flowBoxCel {
	flex-shrink: 0;
	padding-bottom: 47px;
	position: relative;
}
.flowBoxCel:after {
	content: "";
	border-style: solid;
	border-width: 19px 23.5px 0 23.5px;
	border-color: #a2c2ea transparent transparent transparent;
	position: absolute;
	left: 50%;
	-webkit-transform: translate(-50%, 0); transform: translate(-50%, 0);
	bottom: 14px;
	display: block;
}
.flowBoxCelOut {
	background: #fff;
	min-height: 80px;
	padding: 15px;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
@media all and (-ms-high-contrast: none){
	.flowBoxCelOut {
		height: 80px;
	}
}
.flowBoxCelIn {
	width: 100%;
}
.flowBoxCelIn span {
	font-weight: bold;
	color: #004672;
	font-size: 114.3%;
	display: block;
	width: 100%;
	line-height: 1.4;
}
.flowBoxCelIn ul {
	width: 100%;
	margin-top: 5px;
	display: flex;
	justify-content: center;
}
.flowBoxCelIn ul li {
	line-height: 1.4;
	font-size: 85.8%;
}
.flowBox01 {
	padding-top: 0;
	margin-bottom: 32px;
}
.flowBox01 .ttl {
	background: #004672;
	color: #fff;
	padding: 10px 30px;
}
.flowBox01 .ttl span {
	display: inline-block;
	font-size: 121.5%;
	font-weight: bold;
	margin-right: 10px;
}
.flowBox01 .ttl small {
	display: inline-block;
	font-size: 85.8%;
}
.flowBox01 .flowBoxBtn {display: none;}
.flowBox01 .flowBoxRow:nth-of-type(1) .flowBoxCel {width: 48.4%;}
.flowBox01 .flowBoxRow:nth-of-type(1) .flowBoxCelOut {border: 3px solid #004672;}
.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel {width: 48.4%;}
.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel li {margin-right: 10px;}
.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel li:last-of-type {margin-right: 0;}
.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel li:before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	background: #004672;
	border-radius: 50%;
	vertical-align: 1px;
	margin-right: 5px;
}
.flowBox01 .flowBoxRow:nth-of-type(3) .flowBoxCel {width: 100%; padding-bottom: 0;}
.flowBox01 .flowBoxRow:nth-of-type(3) .flowBoxCel:after {display: none;}

.flowBox02 {margin-bottom: 80px;}
.flowBox02 .flowBoxRow:nth-of-type(1) .flowBoxCel,
.flowBox02 .flowBoxRow:nth-of-type(2) .flowBoxCel {width: 100%;}
.flowBox02 .flowBoxRow:nth-of-type(3) .flowBoxCel,
.flowBox02 .flowBoxRow:nth-of-type(4) .flowBoxCel {width: 31.66%;}
.flowBox02 .flowBoxRow:nth-of-type(4) .flowBoxCel:nth-of-type(1):after {display: none;}
.flowBox02 .flowBoxRow:nth-of-type(5) .flowBoxCel {width: 100%; padding-bottom: 0;}
.flowBox02 .flowBoxRow:nth-of-type(5) .flowBoxCel:after {display: none;}

@media screen and (min-width:768px){
	.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel.flow02 {display: block!important;}
}

@media screen and (max-width:767px){
	.flowBox {
		padding: 25px 0;
		margin-left: -20px;
		margin-right: -20px;
		background: #efefef;
	}
	.flowBoxIn {
		background: #fff;
		margin: 0 20px;
		padding: 20px;
	}
	.flowBoxCel {
		padding-bottom: 45px;
	}
	.flowBoxCel:after {
		border-width: 14px 18.5px 0 18.5px;
		bottom: 16px;
	}
	.flowBoxCelOut {
		background: #d9e7f8;
		min-height: 55px;
		padding: 10px 5px;
	}
	.flowBoxCelIn span {
		font-size: 100%;
		letter-spacing: 0em;
	}
	.flowBoxCelIn ul {
		width: 100%;
		margin-top: 5px;
		display: block;
	}
	.flowBoxCelIn ul li {
		line-height: 1.4;
		font-size: 85.8%;
	}
	.flowBox01 {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	.flowBox01 .ttl {
		border-left: 4px solid #004672;
		background: none;
		color: #262626;
		margin: 0 20px 15px;
		padding: 2px 0 2px 10px;
	}
	.flowBox01 .ttl span {
		display: block;
		margin-right: 0;
	}
	.flowBox01 .ttl small {
		display: inline-block;
		font-size: 85.8%;
	}
	.flowBox01 .flowBoxBtn {
		margin: 0 15px 15px;
		display: flex;
	}
	.flowBox01 .flowBoxBtn li {
		padding: 0 5px;
		width: 50%;
	}
	.flowBox01 .flowBoxBtn li a {
		display: block;
		height: 35px;
		line-height: 35px;
		background: #fff;
		text-align: center;
	}
	.flowBox01 .flowBoxBtn li a.active {
		color: #fff;
		background: #656565;
	}

	.flowBox01 .flowBoxRow:nth-of-type(1) {display: none;}
	.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel {width: 100%;}
	.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel.flow02 {display: none;}
	.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel li {margin-right: 0;}
	.flowBox01 .flowBoxRow:nth-of-type(2) .flowBoxCel li:before {display: none;}
}

/* imgSec01
------------------------------- */
.imgSec01 {
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: 1px dotted #262626;
	display: flex;
	justify-content: space-between;
}
.imgSec01Box .imgSec01:last-of-type {
	padding-bottom: 0;
	margin-bottom: 0;
	border: none;
}
.imgSec01 .pic {
	width: 200px;
	display: block;
	flex-grow: 1;
}
.imgSec01 .text {
	/*width: 600px;*/
	width: 100%;
	margin-left: 30px;
}
.imgSec01 .text > table.tbl02 {
	margin-top: 30px;
}

@media screen and (max-width:767px){
	.imgSec01 {
		display: block;
	}
	.imgSec01 .pic {
		width: 180px;
		margin: 0 auto 25px;
	}
	.imgSec01 .text {
		width: auto;
		margin-left: 0;
	}
}

/* imgBox01
------------------------------- */
.imgBox01 {
	display: flex;
	justify-content: space-between;
}
.imgBox01L {
	width: calc(100% - 433px);
	flex-shrink: 0;
}
.imgBox01R {
	max-width: 413px;
	flex-shrink: 0;
	margin-left: 20px;
}
@media screen and (max-width:767px){
	.imgBox01 {
		display: block;
	}
	.imgBox01L {
		width:auto;
		margin-bottom: 30px;
	}
	.imgBox01R {
		max-width: 413px;
		margin-left: 0;
	}
}

/*.tabCon01 {
	display: none;
}
.tabCon01,
.tabCon01.active{
	display: block;
}*/
/* imgSec02Box
------------------------------- */
.imgSec02Box{
	display: flex;
    justify-content: space-between;
}
.imgSec02Box .pic {
    width: 200px;
    display: inline-block;
}
.imgSec02Box div.right-txtbox{
	width: 600px;
}
.right-txtbox .r-txtbox-top span,.right-txtbox .r-txtbox-top p{
	display: inline-block;
}

@media screen and (max-width: 767px){
	.imgSec02Box{
		display: block;
	}
	.imgSec02Box .pic {
	    width: 180px;
	    margin: 0 auto 25px;
	    display: block;
	}
	.imgSec02Box div.right-txtbox{
		width: auto;
		display: block;
		text-align: center;
	}
}

/* imgCol02
------------------------------- */
.imgCol02 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.imgCol02 li {
	margin-bottom: 20px;
}


/* faqSecBox
------------------------------- */
.faqSecBox {
	padding-bottom: 5px;
}
.faqSec {
	margin-bottom: 35px;
}
.faqSec .q {
	border-bottom: 1px solid #c7c7c7;
	color: #004672;
	font-weight: bold;
	font-size: 114.3%;
	line-height: 1.5;
	padding: 7px 45px 7px 60px;
	position: relative;
	min-height: 41px;
	cursor: pointer;
}
.faqSec .q:after,
.faqSec .q:before {
	content: "";
	background: #004672;
	position: absolute;
}
.faqSec .q:after {
	width: 18px;
	height: 2px;
	right: 14px;
	top: 19px;
}
.faqSec .q:before {
	content: "";
	width: 2px;
	height: 18px;
	right: 22px;
	top: 12px;
}
.faqSec.active .q:before {
	display: none;
}
.faqSec .q span {
	display: block;
}
.faqSec .q span:before {
	content: "Q";
	position: absolute;
	left: 0;
	top: 0;
	width: 41px;
	height: 41px;
	background: #004672;
	color: #fff;
	text-align: center;
	line-height: 41px;
}
.faqSec .a {
	margin: 15px 0 0;
	padding: 0 0 0 60px;
	position: relative;
	min-height: 41px;
	display: none;
}
.faqSec.active .a {
	display: block;
}
.faqSec .a:before {
	content: "A";
	font-weight: bold;
	position: absolute;
	left: 0;
	top: 4px;
	width: 41px;
	height: 41px;
	background: #d9e7f8;
	color: #004672;
	text-align: center;
	line-height: 41px;
}

@media screen and (max-width:767px){
	.faqSec {
		margin-bottom: 25px;
	}
	.faqSec .q {
		font-size: 107.2%;
		padding: 5px 35px 7px 45px;
		min-height: 35px;
	}
	.faqSec .q:after {
		right: 0;
		top: 15px;
	}
	.faqSec .q:before {
		right: 8px;
		top: 8px;
	}
	.faqSec .q span:before {
		width: 35px;
		height: 35px;
		line-height: 35px;
	}
	.faqSec .a {
		margin: 15px 0 0;
		padding: 0 0 0 45px;
		min-height: 35px;
	}
	.faqSec .a:before {
		width: 35px;
		height: 35px;
		line-height: 35px;
	}
}

/* artBox01
------------------------------- */
.artBox01 .btnBack {
	margin-top: 50px;
	text-align: center;
}
#main .artBox01Header .ttl {
	font-size: 171.5%;
	color: #004672;
	margin-bottom: 10px;
	border: none;
	padding: 0;
}
#main .artBox01Header .ttl:before {
	display: none;
}
.artBox01Header .info {
	margin-bottom: 30px;
}
.artBox01Header .info .date {
	font-size: 92.9%;
	display: inline-block;
	margin: 0 10px 10px 0;
}
.artBox01Header .info .cat {
	height: 20px;
	display: inline-block;
	line-height: 21px;
	background: #004672;
	color: #fff;
	padding: 0 7px;
	font-size: 78.6%;
}
#main .artBox01Contents h3 {
	border-bottom: none;
	padding-bottom: 0;
}
.artBox01Contents p {
	margin: 0 0 20px;
}
.artBox01Contents li {
	position: relative;
	padding-left: 14px;
	margin-bottom: 3px;
}
.artBox01Contents li:last-of-type {
	margin-bottom: 0;
}
.artBox01Contents li:before {
	content: '';
	width: 6px;
	height: 6px;
	display: block;
	border-radius: 100%;
	background: #004672;
	position: absolute;
	left: 0;
	top: .65em;
}
.artBox01Contents q {
	quotes: "“" "“";
}

.artBox01Contents table {
	width: 100%;
	margin-bottom: 30px;
}
.artBox01Contents table th,
.artBox01Contents table td {
	padding: 15px 20px;
	border: 1px solid #c7c7c7;
}
.artBox01Contents table th {
	vertical-align: middle;
	font-weight: bold;
	width: 170px;
	background: #efefef;
}
.artBox01Contents table td {
	vertical-align: top; 
}

@media screen and (max-width:767px){
	.artBox01Contents table th,
	.artBox01Contents table td {
		padding: 12px 15px;
	}
	.artBox01Contents table th {
		width: auto;
		margin-bottom: -1px;
	}
	.artBox01Contents table td {
		width: auto;
		margin-bottom: -1px;
	}.artBox01Contents table tr td:first-child {
		padding: 0;
	}
}
.artBox01Contents iframe {
	max-width: 100%;
	margin-bottom: 30px;
}
@media screen and (max-width:767px){
	.artBox01Contents iframe {
		height: 250px;
	}
}




/* col02
------------------------------- */
.blk_col02 > div {
	width: 50%;
	float: left;
}
@media screen and (max-width:767px) {
	.blk_col02.spColClear > div {
		width: initial;
		float: none;
	}
	.blk_col02.spColClear > div:first-child {
		margin-bottom: 10px;
	}
}

/* zoomImg
------------------------------- */
.zoomImgBox01 {
	position: relative;
	overflow: hidden;
}
.zoomImgBox01 .zoomImg01 {
	width: 100%;
	-webkit-transition: transform 0.5s ease;
	-moz-transition: transform 0.5s ease;
	-ms-transition: transform 0.5s ease;
	-o-transition: transform 0.5s ease;
	transition: transform 0.5s ease;
}
.zoomImgBox01 .zoomImg01 img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
}
.zoomImgBox01:hover .zoomImg01 {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform:scale(1.1);
	transform: scale(1.1);
}
@media screen and (max-width:767px){
	.zoomImgBox01:hover .zoomImg01 {
		transform: none !important;
	}
}

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

- List Style

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

/* list01
------------------------------- */
.list01 > li {
	position: relative;
	padding-left: 14px;
	margin-bottom: 3px;
}
.list01 > li:last-of-type {
	margin-bottom: 0;
}
.list01 > li:before {
	content: '';
	width: 6px;
	height: 6px;
	display: block;
	border-radius: 100%;
	background: #004672;
	position: absolute;
	left: 0;
	top: .65em;
}

/* list02
------------------------------- */
.list02 > li {
	position: relative;
	text-indent: -.8em;
	margin: 0 0 3px 1.6em;
}
.list02 > li:last-of-type {
	margin-bottom: 0;
}
.list02 > li .num {
	color: #004672;
	font-weight: bold;
	display: inline-block;
	margin-right: .5em;
}

/* newsList01
------------------------------- */
.newsList01 {
	padding-top: 10px;
	padding-botom: 10px;
}
.newsList01 li {
	border-bottom: 1px dotted #a2a2a2;
}
.newsList01 li.none {
	border: none;
	padding-top: 10px;
}
.newsList01 li a {
	display: flex;
	flex-wrap: wrap;
	padding: 18px 10px;
}
.newsList01 li a:hover {
	opacity: .7;
}
.newsList01 li a span {
	display: block;
	flex-shrink: 0;
}
.newsList01 li a .date {
	width: 144px;
	letter-spacing: 0em;
}
.newsList01 li a .cat {
	border-style: solid;
	border-width: 1px;
	width: 133px;
	height: 23px;
	font-size: 85.8%;
	line-height: 23px;
	text-align: center;
	margin-right: 17px;
}
.newsList01 li.news01 a .cat {border-color: #076598; color: #076598;}
.newsList01 li.news02 a .cat {border-color: #278729; color: #278729;}
.newsList01 li.news03 a .cat {border-color: #031455; color: #031455; width: 155px;}
.newsList01 li a .ttl {
	width: 100%;
	letter-spacing: 0em;
	margin-top: 10px;
}
.newsList01 li a .ttl img {
	display: inline-block;
	margin-left: 8px;
}
.newsList01 li a .ttl img[src*="pdf"] {vertical-align: -6px;}
.newsList01 li a .ttl img[src*="external"] {vertical-align: -2px;}

@media screen and (max-width:767px){
	.newsList01 li a {
		padding-left: 0;
		padding-right: 0;
	}
	.newsList01 li a .date {
		padding-left: 0;
		font-size: 92.9%;
		width: 114px;
		padding-top: 1px;
		margin-bottom: 8px;
	}
	.newsList01 li a .cat {
		width: 125px;
		height: 21px;
		font-size: 85.8%;
		line-height: 21px;
		letter-spacing: 0em;
		margin-right: 0;
	}
	.newsList01 li a .ttl {
		width: 100%;
		padding: 8px 0 0;
	}
}

/* checkList01
------------------------------- */
.checkList01 {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -18px -18px 0;
}
.checkList01.-one-line {
	display: block;
}
.checkList01 li {
	margin: 0 18px 18px 0;
	letter-spacing: .03em;
}
.checkList01 li:before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	background: url("../../img/common/icon_check.png") no-repeat;
	background-size: 22px 22px;
	vertical-align: -5px;
	margin-right: 10px;
}

/* pager
------------------------------- */
.pager ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.pager ul li {
	margin: 0 3px;
}
.pager ul li a {
	display: inline-block;
	width: 33px;
	height: 33px;
	line-height: 34px;
	background: #efefef;
	text-align: center;
}
.pager ul li a:hover {
	opacity: .7;
}
.pager ul li.active a {
	background: #656565;
	color: #fff;
	opacity: 1!important;
}
.pager ul li.prev {margin: 0 17px 0 0;}
.pager ul li.next {margin: 0 0 0 17px;}

@media screen and (max-width:767px){
	.pager ul li a {
		width: 31px;
		height: 31px;
		line-height: 32px;
	}
}

/* stTagList01
------------------------------- */
.stTagList01 li {
	display: flex;
	flex-shrink: 0;
	margin-bottom: 10px;
	justify-content: space-between;
	align-items: center;
}
.stTagList01 li .stTag01 {
	flex-shrink: 0;
}
.stTagList01 li p {
	flex-shrink: 0;
	width: calc(100% - 100px);
}

.stTag01 {
	display: inline-block;
	max-width: 90px;
	width: 100%;
	padding: 4px;
	text-align: center;
	line-height: 1.3;
	font-size: 92.9%;
	font-weight: bold;
}
.stTag01 br {
	display: none;
}
.stTag01.cat01 {
	border: 1px solid #004672;
	color: #004672;
	padding: 3px;
}
.stTag01.cat02 {
	background: #656565;
	color: #fff;
}
.stTag01.cat03 {
	background: #004672;
	color: #fff;
}
.stTag01.cat04 {
	border: 1px solid #656565;
	color: #656565;
	padding: 3px;
}
/*@media screen and (max-width:767px){
	.stTag01 {
		display: inline-block;
		max-width: 35px;
		font-size: 71.5%;
		font-weight: bold;
	}
	.stTag01 br {
		display: inline-block;
	}
	.stTagList01 li p {
		flex-shrink: 0;
		width: calc(100% - 45px);
	}
}*/

/*
.pdfList01 li {
	border-bottom: 1px dotted #a2a2a2;
}
.pdfList01 li a {
	display: block;
	padding: 15px 0;
}
.pdfList01 li a:hover {
	opacity: .7;
}
.pdfList01 li p {
	display: inline-block;
	position: relative;
	padding-right: 30px;
}
.pdfList01 li p img {
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translate(0, -50%); transform: translate(0, -50%);
}
*/
/* defList
------------------------------- */
.defList {
	padding-left: 30px;
	margin-bottom: 15px;
}
ul.defList > li {
	list-style-type: disc;
}
ol.defList > li {
	list-style-type: decimal;
}

/* capList
------------------------------- */
.capList > li {
	position: relative;
	padding-left: 16px !important;
	margin-bottom: 3px;
}
.capList > li:before {
	content: '※';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}

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

- Button Style

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

/* pageNav01
------------------------------- */
.pageNav01 {
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 50px;
}
.pageNav01 li {
	height: 63px;
	width: 33.33%;
	border-right: 1px solid #004672;
}
.pageNav01 li:first-of-type {
	border-left: 1px solid #004672;
}
.pageNav01 li a {
	display: block;
	height: 100%;
	line-height: 63px;
	font-weight: bold;
	letter-spacing: .06em;
	padding: 0 50px;
	color: #004672;
	position: relative;
}
.pageNav01 li a:hover {
	opacity: .7;
}
.pageNav01 li a:after {
	content: "\f13a";
    font-family: FontAwesome;
	font-size: 128.6%;
	position: absolute;
	right: 15px;
}
@media screen and (max-width:767px){
	.pageNav01 {
		display: block;
	}
	.pageNav01 li {
		height: auto;
		width: auto;
		border-right: none;
		border-bottom: 1px solid #004672;
	}
	.pageNav01 li:first-of-type {
		border-top: 1px solid #004672;
		border-left: none;
	}
	.pageNav01 li a {
		height: auto;
		line-height: 1.5;
		padding: 15px 30px;
	}
	.pageNav01 li a:after {
		top: 50%;
		right: 2px;
		-webkit-transform: translate(0, -50%); transform: translate(0, -50%);
	}
}

/* btnUnit01
------------------------------- */
.btnUnit01 {
	display: flex;
	flex-wrap: wrap;
	margin-right: -7px;
	margin-left: -7px;
}
.btnUnit01 li {
	width: 33.33%;
	padding: 0 7px;
	margin-bottom: 14px;
}
@media screen and (max-width:767px){
	.btnUnit01 {
		display: block;
	}
	.btnUnit01 li {
		width: auto;
		margin: 0 0 15px;
	}
}

/* btnUnit02
------------------------------- */
.btnUnit02 {
	display: flex;
	flex-wrap: wrap;
	margin-right: -7px;
	margin-left: -7px;
}
.btnUnit02 li {
	width: 50%;
	padding: 0 7px;
	margin-bottom: 20px;
}
.btnUnit02 li p {
	font-size: 128.6%;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 1.5;
}
.btnUnit02 li .btn01 {
	width: 100%;
	max-width: inherit;
}

@media screen and (max-width:767px){
	.btnUnit02 li {
		width: 100%;
	}
}



/* btn01
------------------------------- */
.btn01 {
	max-width: 300px;
	width: 100%;
	background: #fff;
	border: 1px solid #004672;
	display: inline-block;
	text-decoration: none;
	position: relative;
	padding: 18px 33px;
	text-align: center;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .03em;
	color: #004672;
}
.btn01:hover {
	opacity: .7;
}
.btn01:before {
	display: inline-block;
	position: absolute;
}
.btn01.icon_external img {
	display: block;
	-webkit-transform: translate(0, -50%); transform: translate(0, -50%);
	position: absolute;
	right: 12px;
	top: 50%
}
.btn01.icon_doc img {
	display: block;
	-webkit-transform: translate(0, -50%); transform: translate(0, -50%);
	position: absolute;
	right: 10px;
	top: 50%;
}
.btn01.icon_angle_right:before {
	content: "\f138";
	font-family: FontAwesome;
	font-size: 128.6%;
	position: absolute;
	-webkit-transform: translate(0, -50%); transform: translate(0, -50%);
	right: 10px;
	top: 50%;
}
.btn01.icon_angle_left:before {
	content: "\f137";
	font-family: FontAwesome;
	font-size: 128.6%;
	position: absolute;
	-webkit-transform: translate(0, -50%); transform: translate(0, -50%);
	left: 10px;
	top: 50%;
}
.btn01.icon_angle_bottom:before {
	content: "\f13a";
	font-family: FontAwesome;
	font-size: 128.6%;
	position: absolute;
	-webkit-transform: translate(0, -50%); transform: translate(0, -50%);
	right: 10px;
	top: 50%;
}
.btn01 small {
	color: #262626;
	font-size: 92.9%;
	font-weight: normal;
	display: block;
}
@media screen and (max-width:767px){
	.btn01 {
		margin-left: auto;
		margin-right: auto;
		display: block;
	}
}

/* btn02
------------------------------- */
.btn02 {
	display: inline-block;
	text-decoration: none;
	color: #004672;
}
.btn02  a:hover {
	opacity: .7;
}

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

- Table Style

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

/* tbl01
------------------------------- */
.tbl01 {
	width: 100%;
}
.tbl01 th,
.tbl01 td {
	padding: 23px 0;
	border-bottom: 1px dotted #a2a2a2;
}
.tbl01 th {
	color: #004672;
	vertical-align: middle;
	font-weight: bold;
	width: 170px;
	padding-right: 10px;
	padding-left: 10px;
}
.tbl01 td {
	vertical-align: top; 
}
@media screen and (max-width:767px){
	.tbl01,
	.tbl01 tbody,
	.tbl01 tr,
	.tbl01 th,
	.tbl01 td {
		display: block;
	}
	.tbl01 th,
	.tbl01 td {
		padding: 0 5px 10px;
	}
	.tbl01 th {
		width: auto;
		border-bottom: none;
		margin-bottom: 10px;
		padding-bottom: 0;
	}
	.tbl01 td {
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.tbl01 tr:last-of-type  td{
		margin-bottom: 0;
	}
}

/* tbl02
------------------------------- */
.tbl02 {
	width: 100%;
}
.tbl02 th,
.tbl02 td {
	padding: 15px 20px;
	border: 1px solid #c7c7c7;
}
.tbl02 th {
	vertical-align: middle;
	font-weight: bold;
	width: 170px;
	background: #efefef;
}
.tbl02 td {
	vertical-align: top; 
}

/* .tbl02Sty02 */
.tbl02Sty02 {
	max-width: 650px;
}
.tbl02Sty02 th {
	width: 210px;
}
@media screen and (max-width:767px){
	.tbl02,
	.tbl02 tbody,
	.tbl02 tr,
	.tbl02 th,
	.tbl02 td {
		display: block;
	}
	.tbl02 th,
	.tbl02 td {
		padding: 12px 15px;
	}
	.tbl02 th {
		width: auto;
		margin-bottom: -1px;
	}
	.tbl02 td {
		width: auto;
		margin-bottom: -1px;
	}
}

/* tbl03
------------------------------- */
.tbl03 {
	width: 100%;
}
.tbl03.tbl03Auto {
	table-layout: auto;
}
.tbl03 th,
.tbl03 td {
	padding: 15px;
	border: 1px solid #c7c7c7;
	text-align: center;
	vertical-align: middle;
}
.tbl03 th {
	font-weight: bold;
	background: #efefef;
}
.tbl03 td a img {
	display: inline-block;
	vertical-align: middle;
	margin-left: 8px;
}
@media screen and (max-width:767px){
	.tbl03 th,
	.tbl03 td {
		padding: 10px;
	}
}

/* tbl04
------------------------------- */
.tbl04 {
	width: auto;
	table-layout: auto;
	border: 6px solid #d9e7f8;
}
.tbl04 tr th,
.tbl04 tr td {
	font-size: 114.3%;
}
.tbl04 tr th {
	padding: 4px 20px 4px 25px;
	font-weight: bold;
	color: #004672;
}
.tbl04 tr td {
	padding: 4px 25px 4px 0;
}
.tbl04 tr:first-of-type th,
.tbl04 tr:first-of-type td {
	padding-top: 20px;
	vertical-align: top;
	
}
.tbl04 tr:last-of-type th,
.tbl04 tr:last-of-type td {
	padding-bottom: 20px;
	
}
@media screen and (max-width:767px){
	.tbl04,
	.tbl04 tbody,
	.tbl04 tr,
	.tbl04 th,
	.tbl04 td {
		display: block;
	}
	.tbl04 tr th {
		padding: 0 15px 3px 15px!important;
	}
	.tbl04 tr td {
		padding: 0 15px 15px 15px!important;
	}
	.tbl04 tr:first-of-type th:first-of-type {
		padding-top: 15px!important;
	}
}


/* table common
------------------------------- */
table.vaM th,table.vaM td {
	vertical-align: middle;
}
table.alnC th,table.alnC td {
	text-align: center;
}

/* noborder */
.tblNoBdr{ border: none !important;}
.tblNoBdr th,
.tblNoBdr td {
	border: none !important;
	vertical-align: top;
	background: #fff;
}
.tblNoBdr th { padding: 4px 15px 4px 0;}
.tblNoBdr td { padding: 4px 0;}
table .tblNoBdr th { padding-top: 6px;}
@media screen and (max-width:767px){
	.tblNoBdr td { padding-top: 2px;}
	table .tblNoBdr th { padding-top: 5px;}
}

@media screen and (max-width:767px){
	.sp_tblcol_clear > tbody,
	.sp_tblcol_clear > tbody > tr,
	.sp_tblcol_clear > tbody > tr > th,
	.sp_tblcol_clear > tbody > tr > td {
		display: block;
		padding: 0;
	}
	.sp_tblcol_clear > tbody > tr {
		padding-top: 5px;
	}
	.sp_tblcol_clear > tbody > tr:first-child {
		padding-top: 0;
	}
}

/* job
------------------------------- */
.job {
	margin-bottom: 100px;
}
.jobList {
	display: flex;
	flex-wrap: wrap;
}
.jobList li {
	width: calc((100% - 50px) / 3);
	border: 1px solid #ccc;
	margin: 0 25px 20px 0;
}
.jobList li:nth-child(3n) {
	margin-right: 0;
}
.jobList li h3 {
	padding: 10px;
	text-align: center;
	background: #f5f5f5;
	font-size: 140%;
	font-weight: bold;
	border-bottom: none!important;
}
.jobList li ul,
.jobList li p {
	margin: 30px 30px 40px;
}
.jobList li ul li {
	width: 100%;
	border: none;
	margin: 0 0 10px;
	font-weight: bold;
}
.jobList li ul li i {
	font-size: 113.4%;
	margin-right: 10px;
}
.jobList a{
	text-decoration: underline;
}
@media screen and (max-width:767px){
	.job {
		margin-bottom: 20px;
	}
	.jobList {
		flex-direction: column;
	}
	.jobList li {
		width: 100%;
		margin: 0 0 20px;
	}
	.jobList li h3 {
		padding: 10px;
		font-size: 120%;
	}
	.jobList li ul,
	.jobList li p {
		margin: 20px 20px 30px;
	}
}


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

- Form Style
(input要素の幅は適宜調整する)

---------------------------------------- */
input.txt,
textarea.txt,
select.txt {
	padding: 5px;
	border: 1px solid #ddd;
	border-radius: 3px;
	max-width: 100%;
}
input.txt:focus,
textarea.txt:focus {
	background: #fff5d6;
}
textarea.txt {
	width: 100%;
}
input.check {
	position: relative;
	top: 2px;
	margin-right: 3px;
}

/* error */
input.err,
textarea.err,
select.err {
	border-color: #ff6060;
	background: #fff0f0;
}
input.err:focus,
textarea.err:focus {
	border-color: #ee5959;
}
.errorTxt {
	margin-top: 10px;
	color: #ff0000;
	line-height:1.1;
}

/*  option and required  */
td.required,
td.option {
	font-weight: 400;
	color: #fff;
	vertical-align: middle;
}
td.required p,
td.option p {
	width: 3.5em;
	margin: 0 auto;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
	text-align: center;
}
td.option			{ background: #f5f5f5;}
td.option p		{ background: #a6a6a6;}
td.required		{ background: #fff0f0;}
td.required p	{ background: #ff6060;}

@media screen and (max-width:767px){
	select.txt {
		border-color: #ccc;
		background: #fff;
	}
}

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

- Text Style

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

.lead {
	margin-bottom: 20px;
}
.note01 {
	color: #715e5e;
}
table .note01 {
	margin-top: 5px;
}
.fw400 { font-weight: 400 !important;}

.txt_indent {
	padding-left: 1.15em;
	text-indent: -1.15em;
}
.txt_indent_mark {
	margin-right: .15em;
}
.tagbox_004672{
	display: inline-block;
    min-width: 90px;
    padding: 0 3px;
    height: 26px;
    line-height: 26px;
    text-align: center;
    color: #fff;
    flex-shrink: 0;
    margin: 0 18px 0 0;
    background: #004672;
}
.right-txtbox.back-num {
	margin-bottom: 20px;
}
@media screen and (max-width:767px){
	.tagbox_004672{
		margin: 0;
	}
}

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

- link

---------------------------------------- */
.link {
	text-decoration: underline;
}
@media (hover: hover) {
  .link:hover {
    text-decoration: none;
  }
}
@media (hover: none) {
  .link:active {
    text-decoration: none;
  }
}
.icon_external{
	margin-left: 0.5em;
	vertical-align: middle;
}

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

- scroll

---------------------------------------- */
.scrollMark{
  display: none;
}
@media only screen and (max-width: 767px) {
  .scroll {
    overflow: auto;
    white-space: nowrap;
    margin-bottom: 20px;
    position: relative;
    /*width: calc(820px - 0%);*/
  }
  .scrollMark {
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(102, 102, 102, 0.5);
    top: 0;
    /*left: -40%;*/
    padding-top: 5%;
    padding-left: 5%;
    position: absolute;
    box-sizing: border-box;
    z-index: 3;
  }
  .scrollMark img {
    max-height: 85%;
    max-width: 100px;
  }
}


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

- entryBody

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

.entryBody div,
.entryBody form,
.entryBody p,
.entryBody ul,
.entryBody ol,
.entryBody dl,
.entryBody address,
.entryBody img,
.entryBody h2,
.entryBody h3,
.entryBody h4 {
	margin: 0 0 20px;
}
.entryBody a{
	color: #555555;
}
.entryBody ul {
	padding-left: 8px;
}
.entryBody ul li {
	background: url(/files/img/common/ico_circle_01.png) left 0.6em no-repeat;
	padding-left: 16px;
	line-height: 1.571;
	margin-bottom: 7px;
}
.entryBody ol {
	padding-left: 25px;
}
.entryBody ol li {
	list-style-type: decimal;
	line-height: 1.571;
	margin-bottom: 7px;
}
.entryBody ul.btnUnit01 {
	padding-left: 0;
	margin: 30px 0;
}
.entryBody dl dd {
	margin-bottom: 5px;
}
.entryBody dl dt,
.entryBody strong {
	font-weight: 700;
}
.entryBody em {
	font-style: italic;
}
.entryBody blockquote{
	border-left: solid 4px #e3e3e3;
	padding-left: 22px;
}
.entryBody del{
	text-decoration:line-through;
}
.entryBody h2{
	font-size: 142.9%;
	font-family: "ヒラギノ角ゴ Pro W6","HiraKakuProN-W6", "メイリオ", Meiryo;
	font-weight: 700;
	padding: 10px 15px;
	background: #1ca7dc;
	line-height: 1.3;
	margin-bottom: 16px;
	color: #fff;
	box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.2);
}
.entryBody h3{
	font-size: 128.6%;
	font-family: "ヒラギノ角ゴ Pro W6","HiraKakuProN-W6", "メイリオ", Meiryo;
	font-weight: 700;
	padding-left: 13px;
	line-height: 1.3;
	margin-bottom: 20px;
	color: #262626;
	border-left: solid 5px #4bbdec;
}
.entryBody h4{
	font-size: 114.3%;
	font-family: "ヒラギノ角ゴ Pro W6","HiraKakuProN-W6", "メイリオ", Meiryo;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 10px;
	color: #2699c9;
}
/* ----------------------------------------

- Width

---------------------------------------- */
.w50     { width: 50px !important;}
.w150    { width: 150px !important;}
.w100    { width: 100px !important;}
.w200    { width: 200px !important;}
.w250    { width: 250px !important;}
.w300    { width: 300px !important;}
.w350    { width: 350px !important;}
.w5per  { width: 5% !important;}
.w8per  { width: 8% !important;}
.w10per  { width: 10% !important;}
.w15per  { width: 15% !important;}
.w20per  { width: 20% !important;}
.w25per  { width: 25% !important;}
.w30per  { width: 30% !important;}
.w35per  { width: 35% !important;}
.w40per  { width: 40% !important;}
.w45per  { width: 45% !important;}
.w50per  { width: 50% !important;}
.w60per  { width: 60% !important;}
.w70per  { width: 70% !important;}
.w80per  { width: 80% !important;}
.w90per  { width: 90% !important;}
.w100per { width: 100% !important;}
.w5em    {  width: 5em !important;}
.w10em   {  width: 10em !important;}
.w15em   {  width: 15em !important;}
.w20em   {  width: 20em !important;}
@media screen and (max-width:767px){
  .spwAuto    { width: auto !important;}
	.sp_w50     { width: 50px !important;}
	.sp_w150    { width: 150px !important;}
	.sp_w100    { width: 100px !important;}
	.sp_w200    { width: 200px !important;}
	.sp_w250    { width: 250px !important;}
	.sp_w300    { width: 300px !important;}
	.sp_w350    { width: 350px !important;}
	.sp_w5per   { width: 5% !important;}
	.sp_w8per   { width: 8% !important;}
	.sp_w10per  { width: 10% !important;}
	.sp_w15per  { width: 15% !important;}
	.sp_w20per  { width: 20% !important;}
	.sp_w25per  { width: 25% !important;}
	.sp_w30per  { width: 30% !important;}
	.sp_w35per  { width: 35% !important;}
	.sp_w40per  { width: 40% !important;}
	.sp_w45per  { width: 45% !important;}
	.sp_w50per  { width: 50% !important;}
	.sp_w60per  { width: 60% !important;}
	.sp_w70per  { width: 70% !important;}
	.sp_w80per  { width: 80% !important;}
	.sp_w90per  { width: 90% !important;}
	.sp_w100per { width: 100% !important;}
	.sp_w5em    { width: 5em !important;}
	.sp_w10em   { width: 10em !important;}
	.sp_w15em   { width: 15em !important;}
	.sp_w20em   { width: 20em !important;}
}

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

- Stopgap Class
(以下は暫定的、又はイレギュラーな場合のみ使用。通常は使用しない)

---------------------------------------- */
.clear {
	clear: both;
}
.hidden {
	height: 0;
	width: 0;
	overflow: hidden;
}
.mgt0 { margin-top: 0 !important;}
.mgt3 {	margin-top: 3px !important;}
.mgt5 {	margin-top: 5px !important;}
.mgt10 {	margin-top: 10px !important;}
.mgt13 {	margin-top: 13px !important;}
.mgt15 {	margin-top: 15px !important;}
.mgt20 {	margin-top: 20px !important;}
.mgt30 {	margin-top: 30px !important;}
.mgt40 {	margin-top: 40px !important;}
.mgb0 { margin-bottom: 0 !important;}
.mgb3 {	margin-bottom: 3px !important;}
.mgb5 {	margin-bottom: 5px !important;}
.mgb10 {	margin-bottom: 10px !important;}
.mgb13 {	margin-bottom: 13px !important;}
.mgb15 {	margin-bottom: 15px !important;}
.mgb20 {	margin-bottom: 20px !important;}
.mgb25 {	margin-bottom: 25px !important;}
.mgb30 {	margin-bottom: 30px !important;}
.mgb40 {	margin-bottom: 40px !important;}
.mgb50 {	margin-bottom: 50px !important;}
.mgb60 {	margin-bottom: 60px !important;}
.mgb70 {	margin-bottom: 70px !important;}
.mgb80 {	margin-bottom: 80px !important;}
.alnC { text-align: center !important;}
.alnR { text-align: right !important;}
.alnL{ text-align: left !important;}
.nowrap { white-space: nowrap;}
.breakWord { word-wrap: break-word;}
.fs12 {font-size: 85.8%;}
.fs11 {font-size: 78.6%;}

@media screen and (max-width:767px){
	.sp_mgt0 { margin-top: 0 !important;}
	.sp_mgt5 {	margin-top: 5px !important;}
	.sp_mgt10 {	margin-top: 10px !important;}
	.sp_mgt15 {	margin-top: 15px !important;}
	.sp_mgt20 {	margin-top: 20px !important;}
	.sp_mgt30 {	margin-top: 30px !important;}
	.sp_mgt40 {	margin-top: 40px !important;}
	.sp_mgb0 { margin-bottom: 0 !important;}
	.sp_mgb5 {	margin-bottom: 5px !important;}
	.sp_mgb10 {	margin-bottom: 10px !important;}
	.sp_mgb15 {	margin-bottom: 15px !important;}
	.sp_mgb20 {	margin-bottom: 20px !important;}
	.sp_mgb30 {	margin-bottom: 30px !important;}
	.sp_mgb40 {	margin-bottom: 40px !important;}

	.spNone { display: none !important; }
	
	.sp_fs11 { font-size: 78.6%;}
}

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

clearfix

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

/* Modern Browsers
------------------------------- */
.clearfix:after {
	display: block;
	visibility: hidden;
	clear: both;
	height: 0;
	content: ".";
	line-height: 0;
}

/* Legacy IE
------------------------------- */
.clearfix {
	*zoom: 1;
}

.box02.box--02{
	margin-bottom: 40px;
}

.movieWrapper{
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.movieWrapper iframe{
	position: absolute;
	top: 0;
	right: 0;
	width: 100% ;
	height: 100% ;
}

/* 余白用
------------------------------- */
.sm_blank{
	height: 10px;
}

/* SNSアイコン
------------------------------- */
.sns_container {
	display: flex;
	width: 90px;
	max-width: 100%;
	height: auto;
	margin-bottom: 40px;
	box-sizing: border-box;
}
.sns_icon {
	flex: 1;
    padding-right: 25px;
    max-width: 100%;
    height: auto;
}

.sns_table {
	border: 1px solid #c7c7c7;
	width: 100%;
}
.sns_table img {
	height: 130px;
	/* width: 100px; */
	padding: 10px;
}
.sns_table th,
.sns_table td {
	border: 1px solid #c7c7c7;
	text-align: center;
}
.sns_table th {
	padding: 5px;
	background: #efefef;
}
.sns_table td a {
	text-decoration: underline;
	color: #1ca7dc;
}
.square_text {
	/* color: black;
	margin-bottom: 10px; */
	font-size: 107.2%;
    font-weight: bold;
    letter-spacing: 0.06em;
    line-height: 1.55;
	margin-top: 20px;
}
.txt_indent2 {
	margin-left: 1.4rem;
} 
.mgb_txt {
	margin-bottom: 20px;
}
@media screen and (max-width:767px){
	.sns_table.mgb30 {
		font-size: 10px;
	}
	.sns_table img {
		height: 60px;
	}
	.sns_table td a {
		padding: 5px;
	}
}

/* cookie
------------------------------- */
#gdpr_area {
	display: none;
	position: fixed;
	z-index: 9999;
	bottom: 0;
	width: 100%;
	box-sizing: border-box;
	background-color: #333333;
	color: white;
	line-height: 1.8;
  }
  #gdpr_area a {
	text-decoration: underline;
  }
  #gdpr_area .gdpr_area_inner {
	position: relative;
	width: 900px;
	margin: 0 auto;
	padding: 15px 40px 15px 0;
  }
  #gdpr_area .gdpr_area_inner a {
	color: #fff;
  }
  #gdpr_area .gdpr_area_inner span.break {
	display: block;
  }
  #gdpr_area .gdpr_link_sp {
	display: none;
  }
  #gdpr_area .gdpr_btn_agree {
	cursor: pointer;
	position: absolute;
	top: 17px;
	right: 0;
	display: block;
	width: 18px;
	height: 18px;
	text-indent: -9999px;
	background-color: #999;
  }
  #gdpr_area .gdpr_btn_agree:after,
  #gdpr_area .gdpr_btn_agree:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 8px;
	display: block;
	width: 2px;
	height: 15px;
	background-color: #f5f5f5;
	transform: rotate(45deg);
  }
  #gdpr_area .gdpr_btn_agree:before {
	transform: rotate(-45deg);
  }
  
  @media screen and (max-width: 767px) {
	#gdpr_area .gdpr_area_inner {
	  width: 100%;
	  padding: 15px 30px 15px 15px;
	}
  }