@charset "utf-8";
/*------------------------------------------------------------
	トープページ
------------------------------------------------------------*/

@media (min-width: 0) and (min-width: 770px){
#gHeader .inner {margin-bottom: 10px; padding-left: 0;}
.sp_links,.sp_width,.menu{display:none!important;}
}
.mv {margin-bottom: 26px; max-width: none;}
.mv img {width: 100%; max-width: 100%; object-fit:contain;}
.mv .slider-slick:not(.slick-initialized) > .slick-slide:not(.slick-active){display: none}
.mv a:hover {opacity: 0.7;}

.mv2 {max-width: none; max-width: 1000px; margin:0 auto;}
.mv2 img {width: 100%; max-width: 100%;}

@media screen and (max-width: 768px){
	.mv2 {margin: 0 auto 5px;}
	.mv2 img{width: 100%;height: auto;}
}

.jsBox {box-shadow:-6px 6px 0 #fcfcfc, 6px -6px 0 #fcfcfc, 6px 6px 0 #fcfcfc, -6px -6px 0 #fcfcfc;}

#main .scrollBox {margin-right: 0;}
#main .scrollBox .scroll {height: 205px; overflow: auto;}

#main .news {font-size: 13px; line-height: 23px;}
#main .news dt {padding: 4px 4px 3px; float: left; clear: left;}
#main .news dd {padding: 5px 4px 3px; padding-left: 200px; font-size: 13px; line-height: 22px;}
#main .news dd a {color: #003a81; text-decoration: underline;}
#main .news dd a:hover {text-decoration: none;}
#main .news dt span {margin-left: 15px; margin-top: 2px; display: inline-block; vertical-align: top; min-width: 90px; font-size: 11px; line-height: 20px; color: #fff; text-align: center;}
#main .news dt .tag01 {background-color: #3d9bcf;}
#main .news dt .tag02 {background-color: #ec7771;}
#main .news dt .tag03 {background-color: #8fae14;}

#main .sec01 {margin: 46px 0 28px; padding: 28px 26px 20px 32px; background: url(../img/index/bg01.png) repeat center top;}
#main .sec01 li {margin-top: 37px; float: left; width: 474px;}
#main .sec01 li:nth-child(2n) {float: right; width: 442px;}
#main .sec01 li:nth-child(2) p:first-child {padding-top: 14px;}
#main .sec01 li:nth-child(2) p {margin-bottom: 3px;}
#main .sec01 li:nth-child(2) p img {width: 442px; height: 55px;}
#main .sec01 li:nth-child(1),#main .sec01 li:nth-child(2) {margin-top: 0;}


#main .sec01 h3 {margin: -7px 0 10px;}
#main .sec01 p {margin-bottom: 19px; color: #003a81;}
#main .sec01 p a:hover {opacity: 0.7;}

#main .sec01 .sub01 {border-radius: 3px; padding: 42px 22px 8px; background-color: #fff;}
#main .sec01 .sub01 span {margin-right: 10px; display: inline-block; vertical-align: middle; font-size: 12px; line-height: 24px; width: 24px; font-weight: bold; text-align: center; border-radius: 12px; background-color: #c7d9dd;}
#main .sec01 .sub01 a {display: inline; vertical-align: middle; color: #003a81; text-decoration: underline;}
#main .sec01 .sub01 a:hover {opacity: 1; text-decoration: none;}
#main .sec01 .sub01 {border-radius: 3px; padding: 42px 22px 10px; background-color: #fff;}
#main .sec01 .scroll {height: 220px; overflow: auto;}
#main .sec01 .sub01 span {margin-right: 10px; display: inline-block; vertical-align: middle; font-size: 12px; line-height: 24px; width: 24px; font-weight: bold; text-align: center; border-radius: 12px; background-color: #c7d9dd;}
#main .sec01 .sub02 {border-radius: 3px; padding: 21px 22px 12px; background-color: #fff;}
#main .sec01 .sub02 p {margin-bottom: 0; color: #636363;}
#main .sec01 .sub02 .red {color: #dd4b4b;}
#main .sec01 .sub02 a {display: inline-block; vertical-align: middle; color: #003a81; text-decoration: underline;}
#main .sec01 .sub02 a:hover {text-decoration: none;}
#main .sec02 {padding: 25px 0 73px; background: url(../img/index/bg02.png) no-repeat center top; width:100vw; margin-left: calc(-50vw + 50%);}
#main .sec02 h3 {margin: 13px 0 23px; font-size: 40px; letter-spacing: -0.055em; font-weight: normal; line-height: 56px; color: #003a81;}
#main .sec02 p {line-height: 30px; color: #0e050a;}
#main .sec02 p a {margin-top: 32px; margin-right: 10px; display: inline-block; vertical-align: top; width: 170px; font-weight: bold; line-height: 34px;	color: #003a81;	text-align: center;	border: 1px solid #003a81; cursor: pointer;}
#main .sec02 p a:hover {opacity: 0.7; text-decoration: none;}
#main .sec03 {padding: 19px 0 16px;}
#main .sec03 .ttl {margin-bottom: 21px;}
#main .sec03 .imgBox {float: left; width: 50%;}
#main .sec03 .imgBox .pho {float: left;}
#main .sec03 .imgBox .text {overflow: hidden; padding-left: 18px;}
#main .sec03 .imgBox h3 {margin-bottom: 5px; font-size: 18px; line-height: 34px; color: #202020;}
#main .sec03 .imgBox p {line-height: 25px; color: #202020;}
#main .sec03 .imgBox a {line-height: 25px; color: #003a81; text-decoration: underline;}
#main .sec03 .imgBox a:hover {text-decoration: none;}
#main .topcont {display:none; width: 1000px; margin: 0 auto;}

@media all and (min-width: 0) and (max-width: 767px) {
.mv {margin: 0 auto 5px;}
.sp_links {display: flex; justify-content: space-around; padding: 0; margin: 5px auto; flex-wrap: wrap; width: 100%; box-sizing:border-box;}
.tabBox {margin-bottom: 10px;}
.jsBox {box-shadow: none;}
.picBox {margin: 0 10px; padding: 15px 0 20px;}
.picBox + .picBox {padding: 6px 0 13px;}
.picBox + .picBox .text02 {display: none;}
.picBox + .picBox .pho img {width: 80px;}
.picBox .pho {padding-top: 0; width: 90px; text-align: left;}
.picBox .text01 {padding-top: 12px; float: none; width: auto; overflow: hidden;}
.picBox .text02 {padding-top: 9px; margin: 0 -4px 0 7px; float: none; width: auto; clear: both;}
.picBox .text02 img {width: auto;}
.picBox h3 {margin-bottom: 5px; font-size: 14px;}
.picBox p {font-size: 12px; line-height: 16px;}
.btmBox {margin: 0 14px; padding: 7px 14px 16px;}
.btmBox p {margin-right: 0;	float: none; font-size: 18px;}
.btmBox p span {font-size: 14px; line-height: 26px; display: inline-block; vertical-align: bottom;}
.btmBox .lv li {margin-top: 6px; padding: 0; min-width: 46px; font-size: 10px; line-height: 21px;}
.btmBox .lv li:nth-child(5n) {margin-right: 0;}

#main .scrollBox {margin:0; background#f9f9f9; padding-bottom:10px;}
#main .scrollBox .scroll {height: 220px; overflow: auto; padding:10px 0; background:#f9f9f9; box-sizing:border-box;}
#main .news {margin: 0 20px 30px; font-size: .9rem; line-height:1.5;}
#main .news dt {padding:10px 0 5px; float: none;}
#main .news dd {padding: 0 4px 5px; padding-left: 0; line-height: 20px; border-bottom:1px solid #ccc;}
#main .news dd a {text-decoration: none;}
#main .news dt span {margin-left: 15px; margin-top: 2px; min-width: 76px; font-size: 9px; line-height: 16px;}
#main .sec01 {margin: 20px -10px 0; padding: 18px 13px 10px; background-size: 3px auto;}
#main .sec01 .scroll {height: 200px; overflow: auto; display: flex; flex-wrap: wrap;}	
#main .sec01 li {margin: 26px 0 0; float: none; width: auto;}
#main .sec01 h3 {margin: -10px 0 12px;}
#main .sec01 li:nth-child(2n) {float: none;	width: auto;}
#main .sec01 li:nth-child(2) {text-align: center;}
#main .sec01 .video {text-align: center;}
#main .sec01 p {margin: 0 3px 13px;}
#main .sec01 .video img {min-height: 162px;}
#main .sec01 li:nth-child(2) p:first-child {padding-top: 11px;}
#main .sec01 li:nth-child(2) p {margin: 0 auto 2px;}
#main .sec01 li:nth-child(1),#main .sec01 li:nth-child(2) {margin: 0 4px;}
#main .sec01 li:nth-child(2) p img {width: 100%; height: auto;}
#main .sec01 .sub01 {padding: 20px 10px 8px 11px;}
#main .sec01 .sub01 span {margin-right: 10px; font-size: 8px; line-height: 18px; width: 18px; height:18px; border-radius: 9px;}
#main .sec01 .sub01 a {font-size: .9rem; display:block; width:calc(100% - 28px);}
#main .sec01 .sub01 p {margin-bottom: 1rem; display:inline-flex; flex-wrap:wrap; width:100%;}
#main .sec01 .sub01 a:hover {opacity: 1; text-decoration: underline;}
#main .sec01 .sub02 {padding: 20px 10px 8px;}
#main .sec01 .sub02 p {margin-bottom: 0; font-size: 11px; line-height: 15px;}
#main .sec01 .sub02 a:hover {text-decoration: underline;}
#main .sec01 .sub02 .taRight {margin-top: 10px; text-align: center !important;}
#main .sec01 .sub02 .taRight img {width: 145px;}
#main .sec02 {padding: 30px 12px 18px; background: url(../img/index/sp_bg02.webp) no-repeat right top; background-size: cover; box-sizing:border-box;}
#main .sec02 h3 {margin: 6px 0 16px; font-size: 18px; line-height: 25px;}
#main .sec02 p {font-size:.8rem; line-height:1.5; padding-right: 28vw; text-align:justify;}
#main .sec02 p + p {padding-right: 0; margin: 0 -5px;}
#main .sec02 p a {margin: 0 3px; margin-top: 32px; width: 140px; line-height: 27px; font-size: 11px; background:#fff;}
#main .sec03 {margin: 0 -10px; position: relative; padding:25px 0 0;}
#main .sec03 .ttl {margin-bottom: 0; position: absolute; left: 10px; top: 10px;}
#main .topcont {width: 100%;}

.tabBox {overflow: scroll; margin-bottom: 10px; height: 400px;}
.btmBox.btmbox2 .lv li {display: flex; margin: 2%; padding: 2px; min-width: 44%; font-size: 4vw; flex-wrap: wrap; justify-content: space-around;}
.btmBox.btmbox2 .lv li {float: left; font-weight: bold; line-height: 28px; text-align: center; border: 1px solid #ccc; background-color: #fff; margin-right: 0;}
.btmBox.btmbox1 .lv li {width: 92%;	padding: 2px; font-size: 4vw;}
.btmBox .lvt li {display: flex; margin: 2%; padding: 2px; min-width: 100%; font-size: 15px; flex-wrap: wrap; justify-content: space-around;}
}