@charset "UTF-8";

/*******************************
common
*******************************/
#access #contents {
	width: 1000px;
	padding-top: 4rem;
}

#access .btn01 a {
	display: block;
	background: #00336a;
	color: #fff;
	box-shadow: 2px 2px 0 #000;
	font-size: 150%;
	font-weight: 500;
	text-align: center;
	padding: 0.875em 0;
	letter-spacing: 0.05em;
	position: relative;
}

#access .btn01 a div {
	display: inline-block;
	margin-left: 2em;
}

#access .btn01 a span {
	font-size: 80%;
}

#access .btn01 a::after {
    content: '';
    display: inline-block;
    width: 0.65em;
    height: 0.75em;
    background-image: url(/common/images/arrow_13.svg);
    background-size: 100%;
    vertical-align: middle;
    margin: 0 0 0.15em 0.85em;
}

/*******************************
route
*******************************/
#route h2 {
	color: #00336a;
	font-size: 175%;
	font-weight: 500;
	margin-bottom: 0.75em;
}

#route h2 .tab {
	display: none;
}

#route h2 strong {
	font-size: 140%;
	padding: 0 0.2em;
}

#route .txt01 {
	font-size: 137.5%;
	color: #000;
	margin-bottom: 1.35em;
}

#route .routeBox01 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-left: -45px;
}

/*******************************
building
*******************************/
.building {
	margin-top: 4rem;
	border: 1px solid #00336a;
	padding: 30px 30px 35px 50px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.building section {
	width: 47.6%;
	color: #000;
}

.building section h2 {
	font-weight: 700;
	color: #00336a;
	font-size: 225%;
	border-bottom: 1px solid #00336a;
	padding-bottom: 0.75em;
	margin-bottom: 0.65em;
}

.building section .buildingBox01 dt {
	margin-top: 1.5em;
	background: #f5f3f2;
	padding: 0.05em 0.65rem 0.1em;
	margin-bottom: 0.2em;
}

.building section .buildingBox01 dd{
	padding-left: 0.65rem;
}

.building section .buildingBox01 .tel01 {
	font-size: 112.5%;
	padding: 0 0.65rem;
	line-height: 1.56;
}

.building section .buildingBox01 .tel02 {
	font-size: 187.5%;
}

.building section .buildingBox01 .faculty01 ul {
	line-height: 1.5;
	margin-top: 0.65em;
}

.building section .buildingBox01 .faculty01 ul li {
	display: inline-block;
	margin-right: 0.1em;
}

.building section .buildingBox01 .faculty01 ul li:first-child {
	margin-right: 2.07em;
}

.building section .buildingBox01 .faculty01 ul li span {
	margin-right: 0.25em;
}

.building section .buildingBox01 .faculty02 ul {
	line-height: 1.5;
	margin-top: 0.65em;
}

.building section .buildingBox01 .faculty02 ul li span {
	margin-right: 0.25em;
}

.building section .buildingBox01 .faculty02 ul li ul {
	margin: 0 0 0 1.25em;
}

.building section .buildingBox01 .facility {
	font-size: 112.5%;
}

.building .map {
	width: 49.5%;
}

.building .map .iframeWrap {
	overflow: hidden;
}

.building .map iframe {
	width: 100%;
	height: 390px;
	display: block;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
}

.building .map .btn01 {
	margin-top: 1.75rem;
}

.building .map .btn01 a img.btn01Icon01 {
	position: absolute;
	bottom: 0;
	left: 17px;
	width: 72px;
}

.building .map .btn01 a img.btn01Icon02 {
	position: absolute;
	bottom: 0;
	left: 11px;
	width: 80px;
}

/*******************************
headquarters
*******************************/
#headquarters {
	margin-top: 4rem;
	border: 1px solid #00336a;
	padding: 2em 50px 35px;
	color: #000;
}

#headquarters h2 {
	font-weight: 700;
	color: #00336a;
	font-size: 225%;
	border-bottom: 1px solid #00336a;
	padding-bottom: 0.75em;
	margin-bottom: 0.65em;
}

#headquarters .headquartersBox01 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 1.8em;
}

#headquarters .headquartersBox01 dl {
	width: 49%;
}

#headquarters .headquartersBox01 dl dt {
	font-size: 112.5%;
	background: #f5f3f2;
	padding: 0 0.65rem 0.1em;
	margin-bottom: 0.25em;
	line-height: 1.5;
}

#headquarters .headquartersBox01 dl dd.tel {
	font-size: 187.5%;
	padding: 0 0 0 0.65rem;
}

#headquarters .headquartersBox01 dl dd.chairman {
	font-size: 150%;
	padding: 0.2em 0 0 0.65rem;
}

#headquarters .btn01Wrap {
	margin: 3rem -15px 0 0;
	display: flex;
	flex-direction: row-reverse;
}

#headquarters .btn01Wrap .btn01 {
	width: 49.5%;
}

/*******************************
go/go2
*******************************/
#go #contents {
	width: 1000px;
    max-width: 90%;
	padding-bottom: 2rem;
}

#go #contents #link01 {
	background: #F5F5F0;
	padding: 2rem 2.5%;
	display: flex;
	justify-content: center;
	margin-bottom: 3.5rem;
}

#go #contents #link01 li {
	width: 42%;
	margin: 0 2%;
}

#go #contents #link01 li a {
	display: block;
	background: #fff;
	color: #00336A;
	border: 1px solid #00336A;
	box-shadow: 4px 4px 0 #00336A;
	font-size: 137.5%;
	font-weight: 700;
	text-align: center;
	padding: 0.875em 0;
}

#go #contents #link01 li a::after{
	content: '';
	display: inline-block;
	width: 0.9em;
	height: 0.8em;
	background-image: url(/common/images/arrow_11.svg);
	background-size: 103% auto;
	vertical-align: middle;
	margin: 0 0 0.25em 0.35em;
}

#go #contents section {
	margin-bottom: 3.5rem;
}

#go #contents section h2 {
    padding: 0 0 0.5em 1.25em;
    border-bottom: 1px solid #00336A;
    margin-bottom: 2.5em;
    text-indent: -1.25em;
    width: 980px;
    max-width: 95%;
}

#go #contents section h2 span {
    font-size: 212.5%;
    font-weight: 700;
    color: #00336A;
    border-left: 6px solid #BEAF73;
    padding: 0 0 0 0.5em;
    letter-spacing: 0.05em;
}

#go #contents section .way {
	width: 860px;
	max-width: 100%;
	margin: 0 auto;
}

#go #contents section .way dl {
	display: flex;
	align-items: center;
}

#go #contents section .way dl:not(:last-child) {
	border-bottom:  1px solid #B4B4B4;
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
}

#go #contents section .way dl dt {
	width: 200px;
	margin-right: 2%;
}

#go #contents section .way dl dd .txt01 {
	font-weight: 700;
	margin-bottom: 1em;
	color: #033f7e;
}

#go #contents .printBtn01 button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
	background: #00336a;
	color: #fff;
	box-shadow: 2px 2px 0 #000;
	display: block;
	padding: 0.75em 0;
	width: 20em;
	max-width: 100%;
	font-size: 125%;
	font-weight: 500;
	margin: 0 auto;
	cursor: pointer;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

#go #contents .printBtn01 button:hover {
	opacity: 0.8;
}

/*******************************
information
*******************************/
#route .information {
    margin: 2.5em auto 3.5em;
    text-align: center;
    width: 30em;
    max-width: 92%;
}
#route .information a {
    display: block;
    background-color: #D93A49;
    padding: 1.25em;
    border-radius: 8px;
    line-height: 1.4;
    box-sizing: border-box;
    /*img {
        width: 100%;
        height: auto;
    }*/
}
#route .information__subTtl {
    padding: 2px 24px 4px;
    background-color: #000;
    color: #fff;
    border-radius: 500px;
    max-width: 20em;
    margin: 0 auto;
    font-weight: 900;
    font-size: 125%;
}
#route .information__ttl {
    margin-top: 0.5em;
    font-size: 1.625em;
    font-weight: 700;
    color: #fff;
    line-height: 1.4;
}
#route .information__ttl span {
    display: block;
    font-size: 60%;
}
#route .information__inner {
    margin-top: 0.5em;
}
#route .information .txt01 {
    color: #fff;
    text-decoration: underline;
    font-weight: 700;
    text-align: center;
    font-size: 137.5%;
    margin: 0;
}
#route .information .btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding: 0.5em;
    color: #00336A;
    font-size: 1em;
    font-weight: bold;
    border-radius: 6px;
    width: 360px;
    margin: 0.75em auto 0;
    max-width: 100%;
    box-sizing: border-box;
    background: #fff;
}
#route .information .btn .arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
}