@charset "utf-8";

html {
	font-size: 62.5%;
}

.onlySP {
	display: none;
}
.mplus {
	font-family: 'M PLUS 1p', sans-serif;
}

#container01 {
	color: #222;
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 1.6rem;
	line-height: 1.75;
	text-align: left;
}

#container01 img {
	max-width: 100%;
	height: auto;
}

#container01 a {
	color: #222;
}

#container01 .imgOver01 img {
	transition: opacity .3s;
	backface-visibility: hidden;
}

#container01 .imgOver01 a:hover img {
	opacity: .6;
}

#container01 .pdf01::after {
	display: inline-block;
	margin-left: 10px;
	content: "";
	width: 20px;
	height: 20px;
	background: url(../img/common_icon04.svg) no-repeat 0 0 / cover;
	vertical-align: middle;
}

#container01 .youtube01::after {
	display: inline-block;
	margin-left: 10px;
	content: "";
	width: 28px;
	height: 20px;
	background: url(../img/common_icon05.svg) no-repeat 0 0 / cover;
	vertical-align: middle;
}

#container01 .link01 {
	margin-top: 20px;
	text-align: right;
}

#container01 .link01 > a {
	position: relative;
	padding-right: 18px;
	font-size: 1.4rem;
	font-weight: 700;
	text-decoration: none;
}

#container01 .link01 > a:hover {
	text-decoration: underline;
}

#container01 .link01 > a::after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	margin-top: -6px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #0052a4;
	border-right: 2px solid #0052a4;
	transform: rotate(45deg);
}

#container01 .center {
	text-align: center !important;
}
#container01 .right {
	text-align: right !important;
}
#container01 .pcCenterSpleft {
	text-align: center !important;
}

#container01 .color01 {
	color: #0049bc;
}
#container01 .color02 {
	color: #dd270a;
}

#container01 .imgBorder01 {
	border: #c1d8ef solid 1px
}

#container01 .wrap01 {
	display: flex;
	flex-wrap: wrap;
}
#container01 .wrap01.bC {
	justify-content: center;
}
#container01 .wrap01.between {
	justify-content: space-between;
}
#container01 .wrap01.aC {
	align-items: center;
}

#container01 .topMainVisual01 {
	position: relative;
	padding-top: 10px;
	opacity: 0;
	transition: opacity .6s;
	overflow: hidden;
}
#container01 .topMainVisual01.slick-initialized {
	opacity: 1.0;
}

#container01 .mainImage01 {
	position: relative;
	margin: 0 5px;
	max-width: 780px;
}

#container01 .mainImage01 img {
	border-radius: 10px;
}

@media screen and (max-width: 890px) {
#container01 .mainImage01 {
	margin: 0 10px;
}
}

#container01 .attention01 {
	margin: 20px auto 0;
	padding: 0 20px;
	max-width: 1240px;
}

#container01 .attention01:first-child {
	margin-top: 0;
}

#container01 .attentionInner01 {
	padding: 10px;
	background-color: #ff9a2e;
}

#container01 .attentionText {
	margin-top: 10px;
	color: #fff;
	font-size: 1.4rem;
}
#container01 .attentionText:first-child {
	margin-top: 0;
}

#container01 .attentionText > a {
	color: #fff;
}

#container01 .slideArea01 {
	margin: 30px auto 0;
	max-width: 900px;
}

#container01 .slideItem01 {
	background-color: #fff;
}

#container01 .frameArea01 {
	margin-top: 20px;
	padding: 60px 20px;
	background: url(../img/common_bg01.jpg) repeat-y center top / 100%;
}
#container01 .frameArea01 + .frameArea01 {
	margin-top: 0;
}
#container01 .localNavArea01 + .frameArea01 {
	margin-top: 0;
}

#container01 .frameArea01.type02 {
	background: #fff;
}
#container01 .frameArea01.type03 {
	padding: 0 20px;
	background: #fff;
}

#container01 .frameArea01 > .inner01 {
	margin: 0 auto;
	max-width: 1200px;
}

#container01 .frameArea02 {
	margin-top: 10px;
}

#container01 .frameArea02.type01 {
	padding: 20px;
	border-radius: 10px;
	background-color: #fff;
}

#container01 .frameArea02.type01 > .text01 {
	font-size: 2.0rem;
	font-weight: 700;
}

#container01 .frameArea02.type01 > .text01 > .font01 {
	font-size: 1.6rem;
}

#container01 .frameArea02.type01 > .button01 {
	display: table;
	margin: 20px auto 0;
}

#container01 .frameArea02.type01 > .button01 > a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 5px 20px 3px;
	border-radius: 20px;
	border: #0052a4 solid 2px;
	background-color: #0052a4;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	transition: all .3s;
}
#container01 .frameArea02.type01 > .button01 > a:hover {
	background-color: #fff;
	color: #0052a4;
}

#container01 .frameArea02.type01 > .button01 > a > .icon01 {
	margin-right: 10px;
	width: 22px;
	height: 22px;
	fill: #fff;
	transition: all .3s;
}

#container01 .frameArea02.type01 > .button01 > a:hover > .icon01 {
	fill: #0052a4;
}

#container01 .frameArea02.type02 > .text01 > a,
#container01 .frameArea02.type03 > .text01 > a,
#container01 .frameArea02.type04 > .text01 > a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	padding: 10px 20px;
	width: 100%;
	height: 80px;
	border-radius: 10px;
	background-color: #fff;
	font-size: 2.0rem;
	font-weight: 700;
	color: #222;
	text-decoration: none;
	transition: all .3s;
}
#container01 .frameArea02.type02 > .text01 > a:hover,
#container01 .frameArea02.type03 > .text01 > a:hover,
#container01 .frameArea02.type04 > .text01 > a:hover {
	background-color: #dbe9f7;
	color: #0052a4;
}

#container01 .frameArea02.type02 > .text01 > a::before,
#container01 .frameArea02.type03 > .text01 > a::before,
#container01 .frameArea02.type04 > .text01 > a::before {
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	margin-top: -12px;
	width: 20px;
	height: 20px;
	border-top: 3px solid #0052a4;
	border-right: 3px solid #0052a4;
	transform: rotate(45deg);
	transition: all .3s;
}

#container01 .frameArea02.type02 > .text01 > a > .font01,
#container01 .frameArea02.type03 > .text01 > a > .font01,
#container01 .frameArea02.type04 > .text01 > a > .font01 {
	font-size: 1.6rem;
}

#container01 .frameArea02.type04 > .text01 > a > .icon01 {
	margin-left: 10px;
	width: 45px;
	height: 45px;
}
#container01 .frameArea02.type04 > .text01 > a > .icon02 {
	margin-left: 5px;
	width: 45px;
	height: 45px;
}

@media screen and (max-width: 960px) {
#container01 .frameArea02.type04 > .text01 > a > .icon01,
#container01 .frameArea02.type04 > .text01 > a > .icon02 {
	width: 30px;
	height: 30px;
}
}

#container01 .frameArea02.type05 {
	padding: 20px;
	border-radius: 10px;
	background-color: #fff;
}

#container01 .frameArea02.type05 > .text01 {
	font-size: 2.0rem;
	font-weight: 700;
}

#container01 .frameArea02.type05 > .text01 > .font01 {
	font-size: 1.6rem;
}

#container01 .frameArea03 {
	margin-top: 60px;
	padding: 20px;
	border-radius: 20px;
	background: url(../img/common_bg02.jpg) repeat-y center top / 100%;
}

#container01 .frameArea03 > .inner01 {
	padding: 40px;
	border-radius: 10px;
	background-color: #dbe9f7;
}

#container01 .frameArea03 > .inner01 > .text01 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	font-weight: 700;
}

#container01 .frameArea03 > .inner01 > .text01::before {
	display: block;
	margin-right: 15px;
	content: "";
	width: 1px;
	height: 24px;
	background-color: #222;
	transform: rotate(-20deg);
}

#container01 .frameArea03 > .inner01 > .text01::after {
	display: block;
	margin-left: 15px;
	content: "";
	width: 1px;
	height: 24px;
	background-color: #222;
	transform: rotate(20deg);
}

@media screen and (max-width: 960px) {
#container01 .frameArea03 {
	margin-left: -20px;
	margin-right: -20px;
	border-radius: 0;
}

#container01 .frameArea03 > .inner01 {
	padding: 40px 30px;
}
}

#container01 .frameArea04 {
	padding: 4px;
	background-color: #ff9a2e;
}

#container01 .frameArea04 > .titleWrap01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 7px 20px;
}

#container01 .frameArea04 > .titleWrap01 > .title01 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	color: #fff;
	font-size: 2.1rem;
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 800;
	letter-spacing: .05;
}

#container01 .frameArea04 > .titleWrap01 > .title01 > .icon01 {
	margin-right: 10px;
	width: 31px;
	height: 28px;
}

#container01 .frameArea04 > .titleWrap01 > .text01 > a {
	position: relative;
	padding-right: 20px;
	color: #fff;
	font-size: 1.4rem;
	text-decoration: none;
}

#container01 .frameArea04 > .titleWrap01 > .text01 > a:hover {
	text-decoration: underline;
}

#container01 .frameArea04 > .titleWrap01 > .text01 > a::after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	margin-top: -6px;
	width: 12px;
	height: 12px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}

#container01 .frameArea04 > .inner01 {
	padding: 20px;
	background-color: #fff;
}

#container01 .frameArea05 {
	margin-top: 40px;
	padding-top: 60px;
	border-top: #dbe9f7 solid 2px;
}

#container01 .frameArea06 {
	padding: 20px;
	border-top: #dbe9f7 solid 2px;
}

#container01 .frameArea07 {
	padding: 30px;
	border-radius: 10px;
	background: url(../img/common_bg01.jpg) repeat-y center top / 100%;
}

#container01 .frameArea08 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 60px;
	padding: 30px;
	border: #c1d8ef solid 1px;
	border-radius: 10px;
}

#container01 .frameArea08 .heading03 {
	padding: 0;
	background: none;
}

#container01 .serchArea01 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	margin-top: 20px;
	padding: 4px 4px 4px 10px;
	width: 100%;
	border: #c1d8ef solid 1px;
	border-radius: 25px;
	background-color: #dbe9f7;
}

#container01 .serchArea01 > .icon01 {
	margin-right: 10px;
	width: 24px;
	height: 24px;
	fill: #0052a4;
}

#container01 .serchArea01 > .searchText01 {
	border: none;
	background-color: #dbe9f7;
	padding: 0 8px;
	width: calc(100% - 120px);
	font-size: 16px;
}

#container01 .serchArea01 > .searchSubmit01 {
	display: inline-block;
	margin-left: 10px;
	padding: 7px 15px;
	width: 75px;
	border: #0052a4 solid 2px;
	border-radius: 25px;
	background-color: #0052a4;
	font-weight: 700;
	color: #fff;
	font-size: 16px;
	text-align: center;
	-webkit-appearance: button;
	cursor: pointer;
	transition: all .3s;
}

#container01 .serchArea01 > .searchSubmit01:hover {
	background-color: #fff;
	color: #0052a4;
}

#container01 .serchArea02 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	padding: 4px 4px 4px 10px;
	width: 51.6%;
	border: #c1d8ef solid 1px;
	border-radius: 25px;
	background-color: #fff;
}

#container01 .serchArea02 > .icon01 {
	margin-right: 10px;
	width: 24px;
	height: 24px;
	fill: #0052a4;
}

#container01 .serchArea02 > .searchText01 {
	border: none;
	background-color: #fff;
	padding: 0 8px;
	width: calc(100% - 120px);
	font-size: 16px;
}

#container01 .serchArea02 > .searchSubmit01 {
	display: inline-block;
	margin-left: 10px;
	padding: 7px 15px;
	width: 75px;
	border: #0052a4 solid 2px;
	border-radius: 25px;
	background-color: #0052a4;
	font-weight: 700;
	color: #fff;
	font-size: 16px;
	text-align: center;
	-webkit-appearance: button;
	cursor: pointer;
	transition: all .3s;
}

#container01 .serchArea02 > .searchSubmit01:hover {
	background-color: #fff;
	color: #0052a4;
}

#container01 .block01 {
	margin-top: 60px;
}

#container01 .block01:first-child {
	margin-top: 0;
}

#container01 .col01 {
	margin-top: 10px;
	width: 57.9%;
}

#container01 .col02 {
	margin-top: 10px;
	width: 41.2%;
}

#container01 .col03 {
	margin: 20px 0 0 2.5%;
	width: 23%;
}
#container01 .col03:nth-child(4n+1) {
	margin-left: 0;
}

#container01 .col03 > .icon01 {
	display: inline-block;
	margin-top: 10px;
	padding: 5px;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.0;
}

#container01 .col03 > .icon01.type01 {
	background-color: #fe8900;
}
#container01 .col03 > .icon01.type02 {
	background-color: #2281e1;
}
#container01 .col03 > .icon01.type03 {
	background-color: #a962d6;
}
#container01 .col03 > .icon01.type04 {
	background-color: #1ba253;
}

#container01 .col03 > .text01,
#container01 .col04 > .text01 {
	margin-top: 10px;
	font-size: 1.4rem;
}

#container01 .col03 > .day01 + .text01,
#container01 .col04 > .day01 + .text01 {
	margin-top: 0;
}

#container01 .col03 > .text01 > a,
#container01 .col04 > .text01 > a {
	color: #222;
}

#container01 .col03 > .text02,
#container01 .col04 > .text02 {
	margin-top: 10px;
	font-weight: 700;
}

#container01 .col03 > .day01,
#container01 .col04 > .day01 {
	margin-top: 10px;
	color: #999;
	font-size: 1.4rem;
	font-weight: 700;
}

#container01 .col04 {
	margin: 30px 0 0 2.5%;
	width: 31.6%;
}
#container01 .col04:nth-child(3n+1) {
	margin-left: 0;
}

@media screen and (max-width: 960px) {
#container01 .col03 {
	margin: 20px 0 0 2.5%;
	width: 31.5%;
}
#container01 .col03:nth-child(4n+1) {
	margin-left: 2.5%;
}
#container01 .col03:nth-child(3n+1) {
	margin-left: 0;
}

#container01 .col04 {
	margin-left: 4%;
	width: 48%;
}
#container01 .col04:nth-child(3n+1) {
	margin-left: 4%;
}
#container01 .col04:nth-child(2n+1) {
	margin-left: 0;
}
}

#container01 .col05 {
	margin-top: 30px;
	width: 65.8%;
}

#container01 .col06 {
	margin-top: 30px;
	width: 31.6%;
}

@media screen and (max-width: 960px) {
#container01 .col05,
#container01 .col06 {
	width: 100%;
}
}

#container01 .col07 {
	margin-left: 2.5%;
	width: 31.6%;
}

#container01 .col07:nth-child(3n+1) {
	margin-left: 0;
}

#container01 .col07 > .inner01 {
	display: block;
	text-decoration: none;
}

#container01 .col07 > .inner01 > .image01 > img {
	border-radius: 10px 10px 0 0;
	transition: opacity .3s;
}

#container01 .col07 > .inner01:hover > .image01 > img {
	opacity: .6;
}

#container01 .col07 > .inner01 > .text01 {
	position: relative;
	padding: 20px;
	border-radius: 0 0 10px 10px;
	background-color: #fff;
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 800;
	font-size: 2.1rem;
	transition: all .3s;
}

#container01 .col07 > .inner01:hover > .text01 {
	background-color: #e7f2fc;
	color: #0052a4;
}

#container01 .col07 > .inner01 > .text01::after {
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	margin-top: -10px;
	width: 20px;
	height: 20px;
	border-top: 3px solid #0052a4;
	border-right: 3px solid #0052a4;
	transform: rotate(45deg);
	transition: all .3s;
}

#container01 .col08 {
	padding: 50px 5.8% 60px;
	width: 50%;
}

#container01 .col08:nth-child(odd) {
	border-right: #dbe9f7 solid 1px;
}
#container01 .col08:nth-child(even) {
	border-left: #dbe9f7 solid 1px;
}

@media screen and (max-width: 960px) {
#container01 .col08 {
	margin: 60px auto 0;
	padding: 0 10px;
	width: 460px;
}

#container01 .col08 + .col08 {
	margin-top: 20px;
}
#container01 .col08:last-child {
	padding-bottom: 60px;
}

#container01 .col08:nth-child(odd) {
	border-right: none;
}
#container01 .col08:nth-child(even) {
	border-left: none;
}
}

#container01 .col09 {
	padding-right: 40px;
	width: calc(100% - 193px);
}

#container01 .col09 > .btn01 {
	margin-left: 0;
	margin-right: 0;
}

#container01 .col10 {
	width: 193px;
}

#container01 .heading01 {
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 800;
	font-size: 3.2rem;
	letter-spacing: .05;
	text-align: center;
	line-height: 1.5;
}

#container01 .heading02 {
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 800;
	font-size: 2.1rem;
	letter-spacing: .05;
	text-align: center;
	line-height: 1.5;
}

#container01 .heading03 {
	padding: 15px 30px;
	border-radius: 10px;
	background: url(../img/common_bg01.jpg) repeat-y center top / 100%;
	font-weight: 700;
	font-size: 2.0rem;
	line-height: 1.5;
}

#container01 .heading03 > .font01 {
	font-size: 1.6rem;
}

#container01 .wrap01 .heading03 {
	padding: 0;
	width: 30%;
	border-radius: 0;
	background: none;
}

#container01 .hgroup01 {
	position: relative;
	background: url(../img/h1_bg01.jpg) top center no-repeat;
	background-size: cover;
}

#container01 .hgroup01 > .title01 {
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	height: 170px;
	width: 100%;
	text-align: center;
}

#container01 .hgroup01 > .title01>.titleMain01 {
	display: inline-block;
	position: relative;
	margin-top: 55px;
	color: #444;
	font-size: 3.6rem;
	font-weight: 700;
}

#container01 .hgroup01 > .title01>.titleMain01::before {
	content:"";
	position:  absolute;
	top:50%;
	left:-150px;
	width:120px;
	height:1px;
	background-color: #0052a4;
	transform:translateY(-50%);
}
#container01 .hgroup01 > .title01 > .titleMain01::after {
	content:"";
	position:  absolute;
	top: 50%;
	right:-150px;
	width:120px;
	height:1px;
	background-color: #0052a4;
	transform:translateY(-50%);
}

#container01 .hgroup01 > .title01 > .text01 {
	display: block;
	padding-top: 0;
	font-size: 1.4rem;
	color: #444;
}

#container01 .txt01:not(:first-child) {
	margin-top: 20px;
}

#container01 .localNavArea01 {
	margin-top: 1px;
	padding: 15px 20px;
	background-color: #0052a4;
}

#container01 .localNavi01 {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	max-width: 1200px;
}

#container01 .localNavi01 > li {
	margin-right: 35px;
}

#container01 .localNavi01 > li > a {
	position: relative;
	padding-right: 20px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 700;
	text-decoration: none;
	transition: all .3s;
}
#container01 .localNavi01 > li > a:hover {
	color: #adc8e3;
}

#container01 .localNavi01 > li > a::after {
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	margin-top: -6px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

#container01 .localNavi01 > li > a:hover::after {
	border-top: 2px solid #adc8e3;
	border-right: 2px solid #adc8e3;
}

#container01 .btn01 {
	display: table;
	margin: 40px auto 0;
	min-width: 240px;
}

#container01 .btn01 > a {
	display: block;
	position: relative;
	padding: 15px 70px 15px 30px;
	border: #0052a4 solid 2px;
	border-radius: 25px;
	background-color: #0052a4;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	line-height: 1.2;
	transition: all .3s;
}

#container01 .btn01 > a:hover {
	background-color: #fff;
	color: #0052a4;
}

#container01 .btn01 > a::before {
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	margin-top: -7px;
	width: 14px;
	height: 14px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

#container01 .btn01 > a:hover::before {
	border-top: 3px solid #0052a4;
	border-right: 3px solid #0052a4;
}

#container01 .bnrList01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-top: 40px;
}

#container01 .bnrList01 > li {
	margin: 0 15px;
	max-width: 300px;
}

#container01 .bnrList01 > li img {
	width: 100%;
}

#container01 .bnrList02 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 10px;
}

#container01 .bnrList02 > li {
	margin-top: 20px;
	width: 47.7%;
}

#container01 .bnrList02 > li.large01 {
	width: 100%;
}

#container01 .bnrList02 > li > a {
	display: block;
	border: #ccc solid 1px;
}

#container01 .bnrList02 > li img {
	width: 100%;
}

#container01 .dataList01 {
	display: flex;
	flex-wrap: wrap;
}

#container01 .dataList01 > dt {
	margin-top: 15px;
	width: 108px;
	color: #999;
	font-size: 1.4rem;
	font-weight: 700;
}

#container01 .dataList01 > dt:first-child {
	margin-top: 0;
}

#container01 .dataList01 > dd {
	margin-top: 15px;
	width: calc(100% - 108px);
	font-size: 1.4rem;
}

#container01 .dataList01 > dt:first-child + dd {
	margin-top: 0;
}

#container01 .dataList02 {
	display: flex;
	flex-wrap: wrap;
	margin-top: 10px;
}

#container01 .dataList02 > dt {
	display: flex;
	flex-wrap: wrap;
	padding: 20px 0 20px 20px;
	width: 125px;
	color: #999;
	font-size: 1.4rem;
	font-weight: 700;
	text-align: center;
}
#container01 .dataList02.type02 > dt {
	width: 220px;
}

#container01 .dataList02 > dt:nth-child(4n-3) {
	background-color: #f5f5f5;
}

#container01 .dataList02 > dt > .icon01 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin-left: 10px;
	width: 106px;
	height: 40px;
	border: #0052a4 solid 1px;
	color: #0052a4;
	font-size: 1.2rem;
	line-height: 1.3;
	text-align: center;
}

#container01 .dataList02 > dd {
	padding: 20px 20px 20px 0;
	width: calc(100% - 125px);
	font-size: 1.4rem;
}
#container01 .dataList02.type02 > dd {
	width: calc(100% - 220px);
}

#container01 .dataList02 > dd:nth-child(4n-2) {
	background-color: #f5f5f5;
}

#container01 .btnList01 {
	border-top: #dfdfdf solid 4px;
}

#container01 .btnList01 > li {
	margin-top: 2px;
	padding-bottom: 2px;
	border-bottom: #dfdfdf solid 4px;
}

#container01 .btnList01 > li > a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	padding: 25px 50px 25px 20px;
	background-color: #fff;
	font-weight: 700;
	text-decoration: none;
	transition: all .3s;
}

#container01 .btnList01 > li > a::after {
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	margin-top: -10px;
	width: 20px;
	height: 20px;
	border-top: 3px solid #0052a4;
	border-right: 3px solid #0052a4;
	transform: rotate(45deg);
	transition: all .3s;
}

#container01 .btnList01 > li > a:hover {
	background-color: #dbe9f7;
	color: #0052a4;
}

#container01 .btnList01 > li > a > .icon01 {
	margin-right: 10px;
	width: 25px;
	height: 25px;
	fill: #a6a6a6;
	transition: all .3s;
}

#container01 .btnList01 > li > a:hover > .icon01 {
	fill: #0052a4;
}

@media screen and (max-width: 960px) {
#container01 .btnList01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-top: none;
}

#container01 .btnList01 > li {
	margin-top: 0;
	width: 48.3%;
	padding-top: 2px;
	padding-bottom: 2px;
	border-top: #dfdfdf solid 4px;
	border-bottom: #dfdfdf solid 4px;
}
}

#container01 .releaseList01 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 40px;
	width: 100%;
	border-bottom: 2px solid #0052a4;
}

#container01 .releaseList01 > li {
	margin-bottom: -2px;
	width: 31.6%;
}

#container01 .releaseList01 > li > a {
	position: relative;
	display: block;
	border: 2px solid #0052a4;
	background-color: #0052a4;
	padding: 15px 17px;
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	transition: all .3s;
}

#container01 .releaseList01 > li > a:hover,
#container01 .releaseList01 > li > a.current {
	border-bottom-color: #fff;
	background-color: #fff;
	color: #0052a4;
}

#container01 .tabContents01 {
	display: none;
}

#container01 .snsList01 {
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
}

#container01 .snsList01 > li {
	margin: 10px 0 0 2.5%;
	width: 31.6%;
}

#container01 .snsList01 > li > a {
	display: block;
	position: relative;
	padding: 25px 20px 25px 80px;
	border: #c1d8ef solid 1px;
	border-radius: 10px;
	background-color: #fff;
	font-family: 'M PLUS 1p', sans-serif;
	font-size: 2.1rem;
	font-weight: 800;
	text-decoration: none;
	line-height: 1.5;
	transition: all .3s;
}

#container01 .snsList01 > li > a:hover {
	background-color: #dbe9f7;
}

#container01 .snsList01 > li:nth-child(3n+1) {
	margin-left: 0;
}

#container01 .snsList01 > li.youtube > a::before {
	position: absolute;
	top: 50%;
	left: 20px;
	margin-top: -18px;
	content: "";
	width: 50px;
	height: 36px;
	background: url(../img/common_icon05.svg) no-repeat 0 0 / cover;
}

#container01 .snsList01 > li.twitter > a::before {
	position: absolute;
	top: 50%;
	left: 20px;
	margin-top: -25px;
	content: "";
	width: 50px;
	height: 50px;
	background: url(../img/common_icon06.svg) no-repeat 0 0 / cover;
}

#container01 .snsList01 > li.facebook > a::before {
	position: absolute;
	top: 50%;
	left: 20px;
	margin-top: -25px;
	content: "";
	width: 50px;
	height: 50px;
	background: url(../img/common_icon07.svg) no-repeat 0 0 / cover;
}

@media screen and (max-width: 960px) {
#container01 .snsList01 > li {
	margin: 10px auto 0;
	width: 80%;
}

#container01 .snsList01 > li:nth-child(3n+1) {
	margin: 10px auto 0;
}
}

#container01 .list01 {
	display: flex;
	flex-wrap: wrap;
	margin-top: 15px;
}

#container01 .list01 > li {
	margin: 5px 0 0 .7%;
	width: 24.4%;
}

#container01 .list01 > li:nth-child(4n+1) {
	margin-left: 0;
}

#container01 .list01 > li img {
	border: #c1d8ef solid 1px;
	border-radius: 10px;
}

@media screen and (max-width: 960px) {
#container01 .list01 > li {
	margin-left: 1.2%;
	width: 32.2%;
}

#container01 .list01 > li:nth-child(4n+1) {
	margin-left: 1.2%;
}
#container01 .list01 > li:nth-child(3n+1) {
	margin-left: 0;
}
}

#container01 .list02 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#container01 .list02 > li {
	margin-top: 30px;
	width: 48.7%;
}

#container01 .list02 > li > a {
	display: block;
	position: relative;
	padding: 20px;
	border-radius: 10px;
	background-color: #fff;
	font-family: 'M PLUS 1p', sans-serif;
	font-size: 2.1rem;
	font-weight: 800;
	transition: all .3s;
	text-decoration: none;
}

#container01 .list02 > li > a:hover {
	background-color: #e7f2fc;
	color: #0052a4;
}

#container01 .list02 > li > a::after {
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	margin-top: -10px;
	width: 20px;
	height: 20px;
	border-top: 3px solid #0052a4;
	border-right: 3px solid #0052a4;
	transform: rotate(45deg);
	transition: all .3s;
}

#container01 .list03 {
	display: flex;
	flex-wrap: wrap;
	margin-top: 15px;
}

#container01 .list03 > li {
	margin: 5px 0 0 .8%;
	width: 16%;
}

#container01 .list03 > li:nth-child(6n+1) {
	margin-left: 0;
}

#container01 .list03 > li img {
	border: #c1d8ef solid 1px;
	border-radius: 10px;
}

#container01 .list03 > li > a > .text01 {
	display: block;
	margin-top: 5px;
	font-size: 1.4rem;
	text-align: center;
}

@media screen and (max-width: 960px) {
#container01 .list03 > li {
	margin-left: 1.2%;
	width: 19%;
}

#container01 .list03 > li:nth-child(6n+1) {
	margin-left: 1.2%;
}
#container01 .list03 > li:nth-child(5n+1) {
	margin-left: 0;
}
}

#container01 .list04 {
	display: flex;
	flex-wrap: wrap;
	margin-top: 8px;
}

#container01 .list04 > li {
	margin-left: 2.5%;
	padding-top: 2px;
	padding-bottom: 2px;
	width: 23%;
	border-bottom: #dfdfdf solid 1px;
}

#container01 .list04 > li:nth-child(4n+1) {
	margin-left: 0;
}

#container01 .list04 > li > a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 8px;
	height: 100%;
	background-color: #fff;
	font-weight: 700;
	line-height: 1.5;
	text-decoration: none;
	transition: all .3s;
}

#container01 .list04 > li > a:hover {
	background-color: #dbe9f7;
}

#container01 .list04 > li > a > .icon01 {
	margin-right: 10px;
	width: 50px;
	height: 50px;
	border: #c1d8ef solid 1px;
	border-radius: 10px;
}

#container01 .list04 > li > a > .text01 {
	width: calc(100% - 60px);
}

#container01 .list05 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 10px;
}

#container01 .list05 > li {
	margin-top: 30px;
	width: 48.6%;
	background-color: #fff;
}

@media screen and (max-width: 767px) {
#container01 {
	font-size: 1.4rem;
	font-family: -apple-system, "HelveticaNeue", Helvetica;
}

#container01 a {
	text-decoration: underline;
}
#container01 a:hover {
	text-decoration: none;
}

#container01 img {
	width: 100%;
	height: auto;
}

#container01 .imgOver01 a:hover img {
	opacity: 1.0;
}

#container01 .link01 > a {
	font-size: 1.2rem;
}

#container01 .pcCenterSpleft {
	text-align: left !important;
}

.onlyPC {
	display: none;
}
.onlySP {
	display: block;
}
img.onlySP {
	display: inline-block;
}

#container01 .attention01 {
	padding: 0 4%;
}

#container01 .attentionInner01 {
	padding: 15px 4.3%;
}

#container01 .attentionText {
	font-size: 1.2rem;
}

#container01 .frameArea01 {
	padding: 45px 4%;
}

#container01 .frameArea02.type01 {
	padding: 15px 4.3% 30px;
	width: 100%;
}

#container01 .frameArea02.type01 > .text01 {
	font-size: 1.6rem;
}

#container01 .frameArea02.type01 > .text01 > .font01 {
	font-size: 1.4rem;
}

#container01 .frameArea02.type01 > .button01 > a:hover {
	background-color: #0052a4;
	color: #fff;
}

#container01 .frameArea02.type01 > .button01 > a:hover > .icon01 {
	fill: #fff;
}

#container01 .frameArea02.type02 > .text01 > a,
#container01 .frameArea02.type03 > .text01 > a,
#container01 .frameArea02.type04 > .text01 > a {
	height: 60px;
	font-size: 1.6rem;
}
#container01 .frameArea02.type02 > .text01 > a:hover,
#container01 .frameArea02.type03 > .text01 > a:hover,
#container01 .frameArea02.type04 > .text01 > a:hover {
	background-color: #fff;
	color: #222;
}

#container01 .frameArea02.type02 > .text01 > a::before,
#container01 .frameArea02.type03 > .text01 > a::before,
#container01 .frameArea02.type04 > .text01 > a::before {
	right: 20px;
	margin-top: -8px;
	width: 16px;
	height: 16px;
}

#container01 .frameArea02.type02 > .text01 > a > .font01,
#container01 .frameArea02.type03 > .text01 > a > .font01,
#container01 .frameArea02.type04 > .text01 > a > .font01 {
	font-size: 1.4rem;
}

#container01 .frameArea02.type04 > .text01 > a > .icon01 {
	width: 34px;
	height: 34px;
}
#container01 .frameArea02.type04 > .text01 > a > .icon02 {
	width: 34px;
	height: 34px;
}

#container01 .frameArea02.type05 {
	padding: 15px 4.3% 30px;
	border-radius: 10px;
	background-color: #fff;
}

#container01 .frameArea02.type05 > .text01 {
	font-size: 1.6rem;
}

#container01 .frameArea02.type05 > .text01 > .font01 {
	font-size: 1.4rem;
}

#container01 .frameArea03 {
	margin: 50px -4.2% 0;
	padding: 30px 4%;
}

#container01 .frameArea03 > .inner01 {
	padding: 30px 6.5%;
}

#container01 .frameArea03 > .inner01 > .text01::before {
	display: block;
	margin-right: 15px;
	content: "";
	width: 1px;
	height: 24px;
	background-color: #222;
	transform: rotate(-20deg);
}

#container01 .frameArea03 > .inner01 > .text01::after {
	display: block;
	margin-left: 15px;
	content: "";
	width: 1px;
	height: 24px;
	background-color: #222;
	transform: rotate(20deg);
}

#container01 .frameArea04 > .titleWrap01 {
	padding: 7px 2.8%;
}

#container01 .frameArea04 > .titleWrap01 > .title01 {
	font-size: 1.6rem;
}

#container01 .frameArea04 > .titleWrap01 > .text01 > a {
	font-size: 1.2rem;
}

#container01 .frameArea04 > .titleWrap01 > .text01 > a::after {
	margin-top: -7px;
	width: 10px;
	height: 10px;
}

#container01 .frameArea04 > .inner01 {
	padding: 20px 2.8%;
}

#container01 .frameArea05 {
	margin-top: 30px;
	padding-top: 50px;
}

#container01 .frameArea06 {
	padding: 20px 0;
}

#container01 .frameArea07 {
	padding: 15px 4.3%;
}

#container01 .frameArea08 {
	display: block;
	margin-top: 50px;
	padding: 20px 5.2%;
}

#container01 .serchArea01 > .searchSubmit01 {
	padding: 7px 10px;
	width: 75px;
	font-size: 14px;
	text-align: center;
}

#container01 .serchArea01 > .searchSubmit01:hover {
	background-color: #0052a4;
	color: #fff;
}

#container01 .serchArea02 {
	margin-top: 10px;
	width: 100%;
}

#container01 .serchArea02 > .searchSubmit01 {
	padding: 7px 10px;
	width: 75px;
	font-size: 14px;
	text-align: center;
}

#container01 .serchArea02 > .searchSubmit01:hover {
	background-color: #0052a4;
	color: #fff;
}

#container01 .block01 {
	margin-top: 45px;
}

#container01 .col01 {
	margin-top: 20px;
	width: 100%;
}

#container01 .col02 {
	margin-top: 0;
	width: 100%;
}

#container01 .col03 {
	margin: 30px auto 0;
	width: 75.3%;
}
#container01 .col03:nth-child(3n+1) {
	margin-left: auto;
}
#container01 .col03:nth-child(4n+1) {
	margin-left: auto;
}
#container01 .col03 > .icon01 {
	font-size: 1.2rem;
}

#container01 .col03 > .text01,
#container01 .col04 > .text01 {
	font-size: 1.2rem;
}

#container01 .col03 > .day01,
#container01 .col04 > .day01 {
	font-size: 1.2rem;
}

#container01 .col04 {
	margin: 30px 0 0;
	width: 75.3%;
}
#container01 .col04:nth-child(3n+1) {
	margin-left: 0;
}
#container01 .col04:nth-child(2n+1) {
	margin-left: 0;
}

#container01 .col07 {
	margin-top: 10px;
	margin-left: 0;
	width: 100%;
}
#container01 .col07:first-child {
	margin-top: 0;
}

#container01 .col07 > .inner01 {
	display: flex;
	flex-wrap: wrap;
}

#container01 .col07 > .inner01 > .image01 {
	width: 47.8%;
}

#container01 .col07 > .inner01 > .image01 > img {
	border-radius: 10px 0 0 10px;
}

#container01 .col07 > .inner01:hover > .image01 > img {
	opacity: 1.0;
}

#container01 .col07 > .inner01 > .text01 {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 15px;
	width: 52.2%;
	border-radius: 0 10px 10px 0;
	font-size: 1.6rem;
}

#container01 .col07 > .inner01:hover > .text01 {
	background-color: #fff;
	color: #222;
}

#container01 .col07 > .inner01 > .text01::after {
	margin-top: -7px;
	width: 14px;
	height: 14px;
}

#container01 .col08 {
	margin-top: 50px;
	padding: 0;
	width: 100%;
}

#container01 .col08 + .col08 {
	margin-top: 30px;
}
#container01 .col08:last-child {
	padding-bottom: 50px;
}

#container01 .col09 {
	padding-right: 0;
	width: 100%;
}

#container01 .col09 > .btn01 {
	margin-left: auto;
	margin-right: auto;
}

#container01 .col10 {
	margin: 30px auto 0;
	width: 62.9%;
}

#container01 .heading01 {
	font-size: 2.4rem;
}

#container01 .heading02 {
	font-size: 1.6rem;
}

#container01 .heading03 {
	padding: 15px 4.1%;
	font-size: 1.6rem;
}

#container01 .heading03 > .font01 {
	font-size: 1.4rem;
}

#container01 .wrap01 .heading03 {
	width: 100%;
}

#container01 .hgroup01 {
	background: url(../img/h1_bg01_sp.jpg) top center no-repeat;
	background-size: cover;
}

#container01 .hgroup01 > .title01 {
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
}

#container01 .hgroup01 > .title01>.titleMain01 {
	margin-top: 0;
	font-size: 2.4rem;
}

#container01 .hgroup01 > .title01>.titleMain01::before {
	width: 40px;
	left: -70px;
}
#container01 .hgroup01 > .title01 > .titleMain01::after {
	width: 40px;
	right: -70px;
}

#container01 .localNavArea01 {
	padding: 15px 4%;
}

#container01 .localNavi01 {
	justify-content: space-between;
	margin-top: -15px;
}

#container01 .localNavi01 > li {
	margin-top: 15px;
	margin-right: 0;
	width: 48.1%;
}

#container01 .localNavi01 > li > a {
	font-size: 1.2rem;
}
#container01 .localNavi01 > li > a:hover {
	color: #fff;
}

#container01 .localNavi01 > li > a:hover::after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

#container01 .btn01 {
	margin-top: 30px;
}

#container01 .btn01 > a {
	padding: 15px 45px 15px 20px;
}

#container01 .btn01 > a:hover {
	background-color: #0052a4;
	color: #fff;
}

#container01 .btn01 > a::before {
	right: 15px;
	margin-top: -5px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

#container01 .btn01 > a:hover::before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

#container01 .bnrList01 {
	margin-top: 10px;
}

#container01 .bnrList01 > li {
	margin-top: 20px;
	width: 75%;
}

#container01 .bnrList02 {
	margin-top: 5px;
}

#container01 .bnrList02 > li {
	margin-top: 15px;
}

#container01 .dataList01 > dt {
	width: 100%;
	font-size: 1.2rem;
}

#container01 .dataList01 > dd {
	margin-top: 0;
	width: 100%;
	font-size: 1.2rem;
}

#container01 .dataList01 > dt:first-child + dd {
	margin-top: 0;
}

#container01 .dataList02 {
	margin-top: 10px;
}

#container01 .dataList02 > dt,
#container01 .dataList02.type02 > dt {
	padding: 20px 4.3% 0;
	width: 100%;
	font-size: 1.2rem;
	text-align: left;
}

#container01 .dataList02 > dt > .icon01 {
	padding: 3px 5px;
	margin-left: 10px;
	width: auto;
	min-width: 150px;
	height: auto;
	font-size: 1.0rem;
}

#container01 .dataList02 > dd,
#container01 .dataList02.type02 > dd {
	padding: 5px 4.3% 20px;
	width: 100%;
	font-size: 1.2rem;
}

#container01 .btnList01 {
	margin-top: 2px;
	border-top: #dfdfdf solid 4px;
}

#container01 .btnList01 > li {
	margin-top: 2px;
	padding-top: 0;
	width: 100%;
	border-top: none;
}

#container01 .btnList01 > li > a {
	padding: 25px 30px 25px 4.3%;
}

#container01 .btnList01 > li > a:hover {
	background-color: #fff;
	color: #222;
}

#container01 .btnList01 > li > a:hover > .icon01 {
	fill: #a6a6a6;
}

#container01 .releaseList01 {
	margin-top: 30px;
}

#container01 .releaseList01 > li {
	width: 32.4%;
}

#container01 .releaseList01 > li > a {
	padding: 10px 8px;
	color: #fff;
	line-height: 1.5;
}

#container01 .snsList01 > li {
	width: 100%;
}

#container01 .snsList01 > li > a {
	padding: 20px 10px 20px 65px;
	font-size: 1.6rem;
}

#container01 .snsList01 > li > a:hover {
	background-color: #fff;
}

#container01 .snsList01 > li.youtube > a::before {
	left: 15px;
	margin-top: -15px;
	width: 42px;
	height: 30px;
}

#container01 .snsList01 > li.twitter > a::before {
	left: 15px;
	margin-top: -20px;
	width: 40px;
	height: 40px;
}

#container01 .snsList01 > li.facebook > a::before {
	left: 15px;
	margin-top: -20px;
	width: 40px;
	height: 40px;
}

#container01 .list01 {
	display: flex;
	flex-wrap: wrap;
	margin-top: 10px;
}

#container01 .list01 > li {
	margin: 5px 0 0 .7%;
	width: 24.4%;
}

#container01 .list01 > li:nth-child(3n+1) {
	margin-left: .7%;
}
#container01 .list01 > li:nth-child(4n+1) {
	margin-left: 0;
}

#container01 .list02 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#container01 .list02 > li {
	margin-top: 10px;
	width: 100%;
}

#container01 .list02 > li > a {
	padding: 15px;
	font-size: 1.6rem;
}

#container01 .list02 > li > a:hover {
	background-color: #fff;
	color: #222;
}

#container01 .list02 > li > a::after {
	margin-top: -7px;
	width: 14px;
	height: 14px;
}

#container01 .list03 > li {
	margin-left: 1.4%;
	width: 23.9%;
}

#container01 .list03 > li:nth-child(5n+1) {
	margin-left: 1.2%;
}
#container01 .list03 > li:nth-child(4n+1) {
	margin-left: 0;
}
#container01 .list03 > li > a > .text01 {
	font-size: 1.2rem;
}

#container01 .list04 {
	justify-content: space-between;
}

#container01 .list04 > li {
	margin-left: 0;
	width: 47.8%;
}

#container01 .list04 > li > a {
	font-size: 1.4rem;
}

#container01 .list04 > li > a:hover {
	background-color: #fff;
}

#container01 .list04 > li > a > .icon01 {
	width: 26px;
	height: 26px;
}

#container01 .list04 > li > a > .text01 {
	width: calc(100% - 36px);
}

#container01 .list05 {
	display: block;
	margin-top: 0;
}

#container01 .list05 > li {
	margin: 20px auto 0;
	width: 85.2%;
}


}
