@charset "utf-8";
/* CSS Document */
* {
	box-sizing: border-box;
	margin: 0;
	padding: 0
}

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	box-sizing: border-box;
	-moz-tab-size: 4;
	tab-size: 4;
	word-break: normal
}

body {
	color: #333;
	font-family: "Meiryo", sans-serif;
	min-height: 100vh;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

li {
	list-style: none;
}

a {
  color: #333;
  text-decoration: none;
  transition: all 0.5s ease;
}

a:hover {
  opacity: 0.8;
  transition: all 0.5s ease;
}

.inner {
    width: 100%;
    max-width: 1040px;
    margin: 0 auto;
}

.pc_none {
    display: none;
}


@media screen and (max-width: 1024px) {
    .inner {
        padding: 0 24px;
    }
    
    .pc_none {
        display: block;
    }

}

@media screen and (max-width: 767px) {
    .inner {
        padding: 0 8px;
    }
}

#header {
    width: 100%;
    border-bottom: 4px solid #4B62A5;
    height: 80px;
    margin-bottom: 64px;
    display: flex;
    align-items: center;
}

#header .logo {
    display: inline-block;
}

#header .logo a {
    display: flex;
    align-items: flex-end;
}

#header .logo img {
    width: 240px;
    height: 100%;
    margin-right: 12px;
}

#header .logo p {
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
    #header {
        height: 64px;
        margin-bottom: 36px;
    }

    #header .logo img {
        width: 140px;
    }
    
    #header .logo p {
        font-size: 12px;
    }
}


/*--------------------------------
部署ごとの体裁
--------------------------------*/
#each {
    padding-bottom: 64px;
}

#each .main_title {
    display: flex;
    width: 100%;
    align-items: center;
    margin-bottom: 42px;
}

#each .main_title img {
    background-color: #4B62A5;
    width: 98px;
    margin-right: 24px;
    padding: 8px;
    border-radius: 8px;
}

@media screen and (max-width: 767px) {
    #each .main_title p {
        font-size: 18px;
    }
    
    #each .main_title img {
        width: 74px;
        margin-right: 12px;
        padding: 4px;
    }

}


/*--------------------------------
フッター
--------------------------------*/
#footer {
    border-top: 4px solid #4B62A5;
    padding: 40px 0;
}

#footer .footer_heading {
    display: flex;
    margin-bottom: 48px;
    justify-content: space-between;
    align-items: flex-end;
}

#footer .footer_heading .logo {
    display: inline-block;
}

#footer .footer_heading .logo a {
    display: flex;
    align-items: flex-end;
}

#footer .footer_heading .logo img {
    width: 240px;
    height: 100%;
    margin-right: 12px;
}

#footer .footer_heading .logo p {
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 1px;
}

#footer .footer_heading .corporate {
    border: 1px solid #333;
    line-height: 1;
    display: flex;
    align-items: center;

}
#footer .footer_heading .corporate a {
    padding: 12px 36px;
}

#footer .footer_list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 42px;
}

#footer .footer_list li {
    width: calc(100%/4);
    padding: 14px 8px;
}

#footer .footer_list li a {
    border-bottom: 1px solid #333;
}

#footer .footer_list li a:hover {
    border-bottom: none;
    color: #4B62A5;
}

#footer  .copyright {
    text-align: center;
    font-size: 14px;
}


@media screen and (max-width: 1024px) {
    #footer .footer_list li {
        width: calc(100%/3);
    }

    #footer .footer_list li:last-of-type {
        width: calc(100%/1);
    }
}



@media screen and (max-width: 767px) {
    #footer {
        padding: 24px 0;
    }
    
    #footer .inner {
        display: flex;
        flex-direction: column;
    }

    #footer .footer_heading {
        margin-bottom: 26px;
        align-items: flex-start;
        flex-direction: column;
    }

    #footer .footer_heading .logo {
        display: inline-block;
        margin-bottom: 18px;
    }

    #footer .footer_heading .logo a {
        display: flex;
        align-items: flex-end;
    }

    #footer .footer_heading .logo img {
        width: 140px;
    }

    #footer .footer_heading .logo p {
        font-size: 12px;
    }
    
    #footer .footer_heading .corporate {
        margin-left: auto;
    }
    
    #footer .footer_heading .corporate a {
        padding: 8px 26px;
        font-size: 14px;
    }
    
    #footer .footer_list li {
        width: calc(100%/2);
    }
    #footer .footer_list li:last-of-type {
        width: calc(100%/1);
    }
    
    #footer .footer_list li a {
        font-size: 14px;
    }
    
    #footer  .copyright {
        text-align: center;
        font-size: 12px;
    }
}
