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



/*--------------------
01.共通
02.情報公開トップ
--------------------*/



/*----------
01.共通
----------*/

/*
.breadcrumb ul {
	width: max-content;
}
.breadcrumb {
	padding: 20px 0;
	overflow-x: scroll;
}
*/

.breadcrumb ul li{
    vertical-align: top;
}

.cnt_area .contents_in{
    max-width: 980px;
}

.kv_area{
    margin-top: 90px;
    width: 100%;
    height: 208px;
    position: relative;
    background: repeating-linear-gradient(135deg, #f2f2f2, #f2f2f2 2px, transparent 2px, transparent 4.8px );
    background-size: 100%;
}

.cnt_area{
    position: relative;
    padding-bottom: 50px;
}

h2{
    font-size: 38px;
    margin-bottom: 40px;
}

h3{
   font-size: 32px; 
}
h3 span{
    font-size: 24px;
    display: block;
}

h4{
    color: var(--color-blue);
    position: relative;
    border-bottom: 1px solid #fff;
    border-image: linear-gradient(to left, var(--color-blue) 30px, #ddd 30px);
    border-image-slice: 1;
    padding-bottom: 12px;
    margin-top: 32px;
}

h5{
    font-size: 16px;
}

p.dc_ttl{
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 8px;
}

a, 
a:link{
    
}


.m_txt, .disclosure-list{
    margin-bottom: 24px;
}

.dc_txt{
    padding-left: 2.5em;
    text-indent: -2.5em;
    margin-bottom: 8px;
}
.dc_txt2{
    padding-left: 1em;
    text-indent: -1em;
    font-size: 14px;
    margin-bottom: 8px;
}

.dc_txt3 a{
    display: inline-block;
    position: relative;
    margin-left: 18px;
    color: var(--color-blue);
/*
    text-decoration: underline;
    text-underline-offset: 2px;
*/
}

/*
.dc_txt3 a::before{
    content: '';
    display: block;
    width: 8px;
    height: 1px;
    background: var(--color-blue);
    position: absolute;
    top: 1em;
    left: -18px;
}
.dc_txt3 a:hover::before{
    animation: navLine02 .8s forwards ease;
}
*/

.dc_txt3 a::before{
    content: '';
    display: block;
    background-color: var(--color-blue);
    -webkit-mask-image: url(../images/arrow01.svg);
    -webkit-mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: 0 0;
    mask-image: url(../images/arrow01.svg);
    mask-size: 100% 100%;
    mask-repeat: no-repeat;
    mask-position: 0 0;
    width: 5px;
    height: 10px;
    position: absolute;
    top: .75em;
    left: -16px;
    transition: .3s ease;
}

.dc_txt3 a:hover::before{
    left: -13px;
}

.dc_txt3 a.inactive::before{
    background-color:#aaaaaa;
}

.disclosure-list.link_list li{
    margin-bottom: 10px;
}

ol.link_list a.pdf::after, 
.dc_txt3 a.pdf::after{
    content: 'PDF';
    display: inline-block;
    font-size: 10px;
    line-height: 12px;
    color: #d40d0d;
    border: 1px solid #d40d0d;
    border-radius: 4px;
    margin-left: 8px;
    padding: 0 4px 1px;
    transform: translateY(-0.2em);
/*
    content: '';
    display: inline-block;
    background-color: var(--color-blue);
    -webkit-mask-image: url(../images/icon_form.png);
    -webkit-mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: 0 0;
    mask-image: url(../images/icon_form.png);
    mask-size: 100% 100%;
    mask-repeat: no-repeat;
    mask-position: 0 0;
    width: 22px;
    height: 20px;
    transform: translateY(0.25em) rotate(180deg);
    margin-left: 0.3em;
*/
}


@keyframes navLine02 {
    0% {

        width: 8px;
    }
    20% {
        transform: translateX(8px);
        width: 0px;
    }
    30% {
        transform: translateX(0px);
        width: 0px;
    }
    100% {
        transform: translateX(0);
        width: 8px;
    }
}

ol{
    counter-reset: item;
    list-style-type: none;
}
ol li{
    margin-bottom: 32px;
    padding-left: 30px;
    position: relative;
}
ol li:before {
    counter-increment: item;
    content: counter(item) '.';
    margin-right: 8px;
    font-size: 16px;
    font-weight: 500;
    position: absolute;
    left: 0;
    top: 0;
}

ol.link_list a{
    display: inline-block;
    position: relative;
    color: var(--color-blue);
}

.disclosure-list.bg{
    padding: 18px;
    background: #f5f5f5;
}

li > .disclosure-list.bg{
    margin-left: 2.5em;
}

.tomu_img .img {
    max-width: 600px;
    display: block;
    width: 100%;
    margin-bottom: 24px;
}

.tomu_img a.img{
    transition: .3s ease;
}
.tomu_img a.img:hover{
    opacity: .6;
}

.btn_ptn03{
    margin: 0 auto 50px;
    max-width: 250px;
}
.btn_ptn03 a{
    padding: 21px 44px 21px 20px;
/*    text-align: start;*/
}

a.inactive{
	color: #999999!important;
	pointer-events: none;
}

.flexTB{
    display: flex;
    gap: 20px;
    max-width: 780px;
}

.tomuTB caption{
    font-size: 12px;
    margin-bottom:6px;
}
.tomuTB caption.title{
    font-size: 14px;
    text-align: start;
}

.tomuTB{
    width: 100%;
    max-width: 460px;
    margin-bottom: 24px;
}

.tomuTB tbody{
    width: 100%;
    border: solid 1px var(--color-blue);
    text-align: center;
    font-size: 14px;
    line-height: 1.4;
}
.tomuTB th {
    border-left: solid 1px var(--color-blue);
    background-color: #6694ad;
    padding: 10px;
    color: #fff;
    vertical-align: middle;
}
.tomuTB td{
    border-left: dashed 1px var(--color-blue);
    padding: 20px 10px;
    width: 33.33%;
    vertical-align: middle;
}
.tomuTB td.gray{
    background: #99b7c7;
    color: #fff;
    padding: 10px;
}
.tomuTB th:first-child,
.tomuTB td:first-child{
    border-left: none;
}
/*
.tomuTB td:last-child{
    border-left: solid 1px var(--color-blue);
    width: 32%;
}
*/

.tomuTB.tb02 td{
    border-bottom: dashed 1px var(--color-blue);
    border-left: none;
    padding: 10px;
}

.tomuTB td.border_r_dashed{
    border-right: dashed 1px var(--color-blue);
}




@media all and (max-width: 768px){
    
    
/*----------
01.共通 768
----------*/

    h2{
        font-size: 26px;
    }
    
    h3{
        font-size: 24px;
        margin-bottom: 20px;
    }
    h3 span{
        font-size: 16px;
        display: block;
    }
    
    h4{
        font-size: 18px;
    }

    h5 {
        font-size: 15px;
    }
	

    .kv_area{
        height: 145px;
        margin-top: 56px;
        background: repeating-linear-gradient(135deg, #f2f2f2, #f2f2f2 3px, transparent 3px, transparent 6px );
    }

    section + section .contents_in{
        padding-top: 0;
    }

    p.m_txt, .dc_txt, .dc_txt2, .dc_txt3{
        font-size: 14px;
    }
    
    .disclosure-list.bg{
        padding: 12px;
    }
    
    .btn_ptn03{
        margin: 0 auto 50px;
        max-width: 250px;
    }
    .btn_ptn03 a {
        padding: 18px 42px 18px 20px;
    }

    .flexTB{
        display: block;
    }
    
}




/*----------
02.情報公開トップ
----------*/

.disclosure_top .cnt_area {
    background: #efefef;
}


.disclosure_btn_g{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.disclosure_btn_g .disclosure_btn a{
	padding: 20px 70px 20px 20px;
	background: #fff;
	display: flex;
	justify-content: flex-start;
    align-items: center;
    font-size: 18px;
    color: var(--color-blue);
	line-height: 1.6;
	height: 100%;
	min-height: 120px;
	position: relative;
}

.disclosure_btn_g .disclosure_btn a .small{
	font-size: 0.85em;
}

.disclosure_btn_g .disclosure_btn a::before {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    background: #e2e2e2;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    transition: .3s ease;
}
.disclosure_btn_g .disclosure_btn a:hover::before {
    background: var(--color-blue);
}

.disclosure_btn_g .disclosure_btn a::after{
content: '';
    display: block;
    width: 6px;
    height: 12px;
    background-color: #fff;
    -webkit-mask-image: url(../images/arrow01.svg);
    -webkit-mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: 0 0;
    mask-image: url(../images/arrow01.svg);
    mask-size: 100% 100%;
    mask-repeat: no-repeat;
    mask-position: 0 0;
    position: absolute;
    top: 50%;
    right: 32px;
    transform: translateY(-50%);
}

.disclosure_btn_g .disclosure_btn a.pdf::before {
	content: "";
    display: block;
    width: 20px;
    height: 26px;
    position: absolute;
    top: 50%;
    right: 27px;
    transform: translateY(-50%);
    background: url(../images/icon_pdf.png) no-repeat;
    background-size: contain;
    border-radius: 0;
}
.disclosure_btn_g .disclosure_btn a.pdf:hover::before {
    opacity: 0.5;
}
.disclosure_btn_g .disclosure_btn a.pdf::after{
	display: none;
}

.disclosure_btn_g .disclosure_btn a.inactive::before,
.disclosure_btn_g .disclosure_btn a.inactive::after{
    display: none;
}

@media all and (max-width: 768px){
	
	.disclosure_btn_g{
		grid-template-columns: repeat(1, 1fr);
		gap: 15px;
	}
	.disclosure_btn_g .disclosure_btn a{
		padding: 10px 50px 10px 15px;
		font-size: 16px;
		min-height: 100px;
	}
	.disclosure_btn_g .disclosure_btn a::before{
		right: 10px;
	}
	.disclosure_btn_g .disclosure_btn a::after{
		right: 22px;
	}
	.disclosure_btn_g .disclosure_btn a.pdf::before{
		right: 16px;
	}
	
}
