@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	共通css

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/* ================================================================================

	サイトスタイル

================================================================================ */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

*:before,
*:after {
	 -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	position: relative;
	color: #000000;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: none;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	font-weight: 400;
	line-height: 1.7;
	word-wrap: break-word;
	/* 明朝 */ font-family: 'Noto Serif JP','游明朝',YuMincho,'ヒラギノ明朝 ProN W2','Hiragino Mincho ProN','HG明朝B',serif;
	/* ゴシック */ font-family: 'メイリオ', Meiryo, sans-serif;
	background:#FFF;
	padding:0;
	margin:0;
}

#wrapper {
	position: relative;
	max-width: none;
	/* max-width: 1920px; 固定幅レイアウト時 */
	width: 100%;
	margin: 0 auto;
	min-height: 100vh;
	display: block;
	overflow: hidden;
}

h1{
	margin: 0;
	font-weight: 300;
}
h2, h3, h4 {
	margin: 0;
	font-weight: 700;
}

img {
	vertical-align: bottom;
}
ul{
	list-style: none;
	padding:0;
}

li,dt,dd {
	vertical-align: top;
}

iframe {
	vertical-align: bottom;
}


/* リンク：透過アクション付 */
a {
	opacity: 1;
	transition-property: opacity,color,filter;
	transition-duration: 0.3s;
	transition-timing-function: ease-in-out;
	transition-delay: 0s;
}
a:hover {
	opacity: 0.6;
}
.white a{
	color:#FFF;
	text-decoration:none;
	letter-spacing: 1.2px;
}
.blue a{
	color:#21397e;
	text-decoration:none;
}
.oubun{
	font-family: 'EB Garamond', serif;
}
.white{
	color:#FFF!important;
}
.white h2{
	color:#FFF!important;
}
.white h3{
	color:#FFF!important;
}


/* ================================================================================

	layout

================================================================================ */
/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.wrapper_inner{
		margin:0 auto;
	}
	.contents_base{
		width:1316px;
		margin:0 auto;
	}
	.sp{
		display:none;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {	
	html{
		margin:0;
		padding:0;
	}
	.wrapper_inner{
		width:100%;
		margin:0 auto;
	}
	.pc{
		display:none;
	}
}

/* ================================================================================

	HEAD

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	.header_area{
		background-color:#21397e;
		padding-bottom: 1px;
	}
	.header_base{
		width: 1200px;
		margin:0 auto;
	}
	.header_logo{
		font-weight: 900;
		font-size: 20px;
		padding: 15px 0px;
	}
	.header_logo_en{
		font-size: 12px;
		font-weight: 500;
		margin-top: -4px;
	}
	.header_navi > ul{
		right: 0;
		margin: -63px 30px 0 620px;
	}
	.header_navi > ul > li{
		display:inline-block;
		text-align: center;
	}
	.pc_subnavigation{
		background-color:#FFF;
	}
	/* search */
	dl.search{
		position:relative;
		background-color:#fff;
		border:1px solid #aaa;
		-webkit-border-radius:6px;
		-moz-border-radius:6px;
		-o-border-radius:6px;
		-ms-border-radius:6px;
		border-radius:6px;
		margin-right: 10px;
	}
	dl.search dt{
		margin-right:40px;
		padding: 4px 0 4px 18px;
	}
	dl.search dt input{
		width:100%;
		height:24px;
		line-height:24px;
		background:none;
		border:none;
	}
	dl.search dd{
		position:absolute;
		top:0;
		right:0;
	}
	dl.search dd button{
		display:block;
		padding:10px;
		background:none;
		border:none;
	}
	dl.search dd button span {
		display: block;
		width: 20px;
		height: 20px;
		background: url('/web/20230506015226im_/https://bibliotheque.itembox.design/item/img/search.png') no-repeat scroll -69px 0;
	}
	li.header_navi_icon{
		padding: 0 10px;
	}
	.h_navi_icon_text{
		font-size: 9px;
	}
	.humburger_navi{
		margin:0 auto;
	}
	.hamburger-button path {
		fill: #fff!important;
	}
	
	.pc_navigation{
		text-align:center;
		margin-top: 24px;
	}
	.pc_navigation ul{
		display: block;
	}
	.pc_navigation li{
		display: inline-block;
		border-right: 1px solid #FFF;
		padding: 0 50px;
	}
	.pc_navigation li:last-child{
		border:0;
	}
	.pc_subnavigation{
		text-align:right;
		width: 1200px;
		margin: 0 auto;
	}
	.pc_subnavigation ul{
		padding: 0;
		margin: 0;
	}
	.pc_subnavigation li{
		display: inline-block;
		padding: 0 10px;
		margin:0;
	}
	.pc_subnavigation li a{
		line-height: 50px;
		font-size: 15px;
	}
	li.head_contact{
		padding:0 0;
	}
	.head_contact a{
		display: block;
		background: #679bd5;
		color: #FFF;
		width: 162px;
		height: 50px;
		text-align: center;
		line-height: 53px;
	}
	.head_contact a:after{
		background:#679bd5;
		
	}
	.fs-p-searchForm__button::before {
	    font-family: 'fs-icon' !important;
	    speak: none;
	    font-style: normal;
	    font-weight: normal;
	    font-variant: normal;
	    text-transform: none;
	    line-height: 1;
	    -webkit-font-smoothing: antialiased;
	    -moz-osx-font-smoothing: grayscale;
	    content: "\e932";
	    display: block;
	    font-size: 2.2rem;
	    line-height: 1.2;
	    position: absolute;
	    text-indent: 0;
	    top: 4px;
	    right: 0;
	    bottom: 0;
	    left: 0;
	}
	.fs-p-headerUtilityMenu__list a::before {
	    display: none;
	}
	a. fs-pt-menu__link--lv1 {
	    margin: 0!important;
	    padding: 0!important;
	    text-decoration: none;
	    background: #1E3A7DDB;
	    color: #FFF !important;
	}

	.fs-p-headerUtilityMenu__list {
	    list-style: none;
	    font-size: 10px!important;
	}
	.fs-p-headerUtilityMenu__list > li + li {
	    margin-left: 0!important;
	}
	.fs-p-headerUtilityMenu__list a:link {
	    color: #FFF!important;
	}
	.fs-p-headerUtilityMenu__list a:visited {
	    color: #FFF!important;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	header{
		background-color:#21397e;
		padding-bottom: 1px;
	}
	.header_base{
		margin:0 auto;
	}
	.header_logo{
		font-weight: 900;
		font-size: 4vw;
		padding: 3vw 0 0 4vw;
	}
	.header_logo_en{
		font-size: 2vw;
		font-weight: 500;
		margin-top: -1vw;
	}
	.header_navi{
		margin: 2vw 0px 0 0;
		background: #1C2C5E;
	}
	.header_navi > ul{
		margin: 0;
		margin-left: 3vw;
		height: 11.8vw;
		padding-top: 2vw;
		width: 96vw;
	}
	.h_navi_icon{
		margin-top:-0.3vw:
	}
	.header_navi > ul > li{
		display:inline-block;
		text-align: center;
	}
	.pc_subnavigation{
		background-color:#FFF;
	}
	/* search */
	dl.search{
		position:relative;
		background-color:#fff;
		border:1px solid #aaa;
		-webkit-border-radius:6px;
		-moz-border-radius:6px;
		-o-border-radius:6px;
		-ms-border-radius:6px;
		border-radius: 4px;
		margin-right: 5vw;
		margin-top: 0vw;
	}
	dl.search dt{

	}
	dl.search dt input{
		width: 47vw;
		line-height: 8vw;
		background: none;
		border: none;
		padding: 0vw 2vw;
	}
	dl.search dd{
		position:absolute;
		top:0;
		right:0;
	}
	dl.search dd button{
		display:block;
		padding:2vw;
		background:none;
		border:none;
	}
	dl.search dd button span {
		display: block;
		width: 3.7vw;
		height: 3.7vw;
		background: url('/web/20230506015226im_/https://bibliotheque.itembox.design/item/img/search.png') no-repeat scroll 1vw 0.6vw;
	}
	li.header_navi_icon{
		padding: 0vw 0vw 0 2vw;
	}
	.h_navi_icon_text{
		font-size: 2vw;
		margin-top: -0.6vw;
	}
	.humburger_navi{
		margin:0 auto;
	}
	.hamburger-button path {
		fill: #fff!important;
	}
	
	.pc_navigation{
		text-align:center;
		display: none;
	}
	.pc_navigation ul{
		display: block;
	}
	.pc_navigation li{
		display: inline-block;
		border-right: 1px solid #FFF;
		padding: 0 50px;
	}
	.pc_navigation li:last-child{
		border:0;
	}
	.pc_subnavigation{
		text-align:center;
		margin: 0 auto;
		font-size:0;
	}
	.pc_subnavigation ul{
		padding: 0;
		margin: 0;
	}
	.pc_subnavigation li{
		display: inline-block;
		padding: 0 10px;
		margin:0;
		width : calc(100% / 2) ;
	}
	.pc_subnavigation li a{
		line-height: 7vw;
		font-size: 2.8vw;
	}
	li.head_contact{
		padding:0 0;
	}
	.head_contact a{
		display: block;
		background: #679bd5;
		color: #FFF;
		text-align: center;
	}
	.pc_subnavigation li:nth-child(6) a{
		display: block;
		background: #266fc0;
		color: #FFF;
		text-align: center;
	}

	.head_contact a:after{
		background:#679bd5;
		
	}
	.fs-p-headerUtilityMenu__list a::before {
	    display: none;
	}
	.fs-pt-menu a {
	    margin: 0!important;
	    padding: 0!important;
	    text-decoration: none;
	    background: #1E3A7DDB;
	    color: #FFF !important;
	}
	.fs-p-headerUtilityMenu__list {
	    list-style: none;
	    font-size: 10px!important;
	}
	.fs-p-headerUtilityMenu__list > li + li {
	    margin-left: 0!important;
	}
	.fs-pt-menu a {
	    margin: 0 !important;
	    padding: 0 !important;
	    text-decoration: none;
	    background: transparent!important;
	    color: #FFF !important;
	}
}







/* ================================================================================

	FOOT

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	footer{
		background:#21397e;
		padding: 6px 0 0 0;
		margin-top: 70px;
	}
	.footer_base{
		width:1366px;
		margin:0 auto;
		color:#FFF;
	}
	.footer_base a{
		color:#FFF;
		text-decoration:none;
	}
	.f_logo{
		font-weight: 900;
		font-size: 20px;
		padding: 15px 48px;
	}
	.f_logo_en{
		font-size:13px;
		font-weight:500;
		margin-top: -3px;
	}
	.f_contact_area{
		border-bottom: 1px solid #5971B7;
	}
	.f_contact_area ul{
		width: 1274px;
		margin: 0 auto;
	}
	.f_contact_area li{
		display:inline-block;
		vertical-align: middle;
	}
	.f_tel{
		font-size: 16px;
		font-weight: 500;
		margin-right: 8px;
	}
	.f_tel_number{
		font-size: 36px;
		font-weight: 600;
		line-height: 58px;
	}
	.f_time{
		font-weight:500;
		font-size:16px;
		padding-left: 20px;
	}
	.f_time a{
	    display: block;
	    background: #FFF;
	    color: #21397e;
	    width: 190px;
	    height: 52px;
	    text-align: center;
	    line-height: 52px;
	    font-weight: 500;
	}
	.f_sitemap{
		padding-bottom:32px;
	}
	.f_sitemap ul{
		display: flex;
		width: 1295px;
		margin: 47px auto 0;
	}
	.f_sitemap li{
		padding: 0 7px;
	}
	.sitemap_midashi{
		font-weight:600;
		font-size: 13px;
		margin-bottom: 10px;
		line-height: 18px;
	}
	.sitemap_komoku{
		text-indent: 16px;
		font-size: 11px;
		line-height: 24px;
	}
	.sitemap_btn a{
		display: block;
		border: 1px solid #FFF;
		width: 186px;
		font-size: 12px;
		text-align: center;
		padding: 14px 10px !important;
		margin: 0 0 10px;
	}
	.footer_links{
		background:#FFF;
		height:74px;
	}
	.footer_links a{
		color:#21397e;
		font-size:11px;
		font-size: 11px;
	}
	.footer_links li{
		display: inline-block;
		border-right: 1px solid #21397e;
		padding: 0 18px 0px 11px;
		height: 14px;
		vertical-align: middle;
		line-height: 14px;
	}
	.footer_links ul{
		width:642px;
		padding-top: 10px;
	}
	.iso{
		text-align:right;
	}
	.iso img{
		width: 122px;
		margin-top: -64px;
		position: absolute;
		margin-left: -216px;
	}
	.footer_copy{
		font-size:11px;
		color:#FFF;
		text-align:center;
		padding:10px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	footer{
		background:#21397e;
		padding: 6px 0 0 0;
	}
	.footer_base{
		margin:0 auto;
		color:#FFF;
	}
	.footer_base a{
		color:#FFF;
		text-decoration:none;
	}
	.f_logo{
		font-weight: 900;
		font-size: 20px;
		padding: 15px 48px;
	}
	.f_logo_en{
		font-size:13px;
		font-weight:500;
		margin-top: -3px;
	}
	.f_contact_area{
		border-bottom: 1px solid #5971B7;
	}
	.f_contact_area ul{
		margin: 0 auto;
		width: 80vw;
	}
	.f_contact_area li{
		display:inline-block;
		vertical-align: middle;
	}
	.f_tel{
		font-size: 4vw;
		font-weight: 500;
		margin-right: 0;
	}
	.f_tel_number{
		font-size: 7vw;
		font-weight: 600;
		line-height: 9vw;
	}
	.f_time{
		font-weight:500;
		font-size:16px;
		padding-left: 20px;
	}
	.f_time a{
		display: block;
		background: #FFF;
		color: #21397e;
		width: 68vw;
		height: auto;
		text-align: center;
		line-height: 15vw;
		font-weight: 500;
		margin-top: 3vw;
		margin-bottom: 8vw;
	}
	.f_sitemap{
		padding-bottom:32px;
	}
	.f_sitemap ul{
		margin: 13vw auto -5vw;
		width: 89vw;
	}
	.f_sitemap li{
		padding: 0 2vw 5vw;
		display: inline-block;
		width: 43%;
		margin-bottom: 3vw;
	}
	.sitemap_midashi{
		font-weight:600;
		font-size: 13px;
		margin-bottom: 10px;
		line-height: 18px;
	}
	.sitemap_komoku{
		text-indent: 16px;
		font-size: 11px;
		line-height: 24px;
	}
	.sitemap_btn a{
		display: block;
		border: 1px solid #FFF;
		width: 43vw;
		font-size: 3.2vw;
		text-align: center;
		padding: 3vw 4vw !important;
		margin: 0 0 1vw;
	}
	.footer_links{
		background:#FFF;
		height: 47vw;
	}
	.footer_links a{
		color:#21397e;
		font-size:3vw;

	}
	.footer_links li{
		display: inline-block;
		border-right: 1px solid #21397e;
		padding: 0 18px 0px 11px;
		height: 14px;
		vertical-align: middle;
		line-height: 14px;
	}
	.footer_links ul{
		padding-top: 5vw;
		width: 95vw;
		margin: 0 auto;
	}
	.iso{
		text-align:right;
	}
	.iso img{
		margin-top: -14vw;
		position: absolute;
		margin-left: -30vw;
		width: 24vw;
	}
	.footer_copy{
		font-size: 2vw;
		color: #FFF;
		text-align: center;
		padding: 4vw;
	}
}