@charset "UTF-8";

@media screen and not (max-width: 767px) {
	.sp {
		/* display: none !important; */
		display: none;
	}
}

@media screen and (max-width: 767px) {
    .pc {
        /* display: none !important; */
        display: none;
    }
}

body {
	margin: 0;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.7;
    letter-spacing: 1px;
    font-size: 13px;
}

/* リキッドレイアウト対応 */

html {
    font-size: 10px;
}

@media screen and (max-width: 1150px) {
    html {
        font-size: 0.86957vw;
    }
}

@media screen and (max-width: 767px) {
    html {
        font-size: 10px;
    }
}

@media screen and (max-width: 375px) {
    html {
        font-size: 2.66667vw;
    }
}

div,
dl,
dt,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
p,
blockquote,
th,
td {
    margin: 0;
    padding: 0;
}

button,
select {
	font-size: 15px;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"] {
    /* padding: 5px; */
    font-size: 15px;
}

button,
select,
input[type='button'],
input[type='submit'],
input[type='text'],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"] {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
    -webkit-border-radius: 5px;
	border: 1px solid;
	border-radius: 5px;
	border-width: 0.1rem;

	padding: 1px 6px;
}

button,
input[type="button"],
input[type='submit'] {
	cursor: pointer;
}

#yomi_hinmei,
#yomi_hinban {
	/* width: 16.0rem; */
	width: 160px;
}
#sel_index {
	/* width: 16.0rem; */
	width: 160px;
	margin-right: 51px;
}
button.hyouji {
	height: 26px;
	width: 46px;
}
button.kensaku {
	background-image: url("../image/search_32.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size:  50%;

	height: 26px;
	width: 46px;
}

.tb,
.sel {
	height: 26px;
	margin-left: 5px;
	margin-right: 5px;
}
@media screen and (max-width: 767px) {
	.btn {
		width: 9.0rem;
		height: 2.6rem;
		margin-right: 6px;
	}
	.tb {
		height: 2.6rem;
	}
	.sel {
		height: 2.6rem;
		max-width: 70vw;
	}
	.il_blk {
		display: inline-block;
	}
}

/* ハンバーガーメニュー start */

.drawer_hidden {
	display: none;
}
/* ハンバーガーアイコンの設置スペース */
.drawer_open {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	margin-left: auto;
	z-index: 100;/* 重なり順を一番上にする */
	cursor: pointer;
	width: 25px;
	height: 25px;

}
/* ハンバーガーメニューのアイコン */
.drawer_open span,
.drawer_open span:before,
.drawer_open span:after {
	content: '';
	display: block;
	height: 3px;
	width: 25px;
	border-radius: 3px;
	background: #333;
	transition: 0.5s;
	position: absolute;
}

/* 三本線の一番上の棒の位置調整 */
.drawer_open span:before {
	bottom: 8px;
}

/* 三本線の一番下の棒の位置調整 */
.drawer_open span:after {
	top: 8px;
}

/* アイコンがクリックされたら真ん中の線を透明にする */
#drawer_input:checked ~ .drawer_open span {
	background: rgba(255, 255, 255, 0);
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#drawer_input:checked ~ .drawer_open span::before {
	bottom: 0;
	transform: rotate(45deg);
}

#drawer_input:checked ~ .drawer_open span::after {
	top: 0;
	transform: rotate(-45deg);
}

.hm_kensaku {
	display: none;
}
@media screen and (max-width: 767px) {

	.hm_kensaku {
		display: flex;
		top: 26px;
		right: 0px;

		background-color: darkorange;
		padding: 6px;
		border-radius: 0 0 0 4px;
	}
}

/* メニューのデザイン*/
@media screen and (max-width: 767px) {
	.kensaku_content {
		width: 100%;
		height: calc(100vh - 138px);
		position: fixed;
		top: 136px;
		/* right: 0; */
		/* bottom: 0; */
		left: 100%; /* メニューを画面の外に飛ばす */
		z-index: 99;
		background: ivory;
		transition: 0.5s;
		padding-top: 0.2rem;
		overflow-y: auto;
		padding-left: 10px;
	}
	/* アイコンがクリックされたらメニューを表示 */
	#drawer_input:checked ~ .kensaku_content {
		/* width: 100%; */
		left: 0; /* メニューを画面に入れる */
	}
	#drawer_input:not(:checked) ~ .kensaku_content {
		visibility: hidden;
	}
}

@media screen and (max-width: 767px) {
	.kensaku_item {
		margin-bottom: 0.1rem;
	}
	.kensaku_item.item_page {
		margin-bottom: 1.0rem;
	}
	.kensaku_item.item_kekka_sp {
		margin-top: 1.2rem;
	}
}

.kensaku_item a {
	color: #fff;
	/* text-decoration: none; */
}


/* ハンバーガーメニュー end   */


.logo_pc {
	height: 35px;
	width: auto;
}
.logo_sp {
	height: 26px;
	width: 100%;
	border: 0;
}

div.logo_kaiteibi {
	width: 278px;
}
@media screen and (max-width: 767px) {
	div.logo_kaiteibi {
		height: 135px;
		width: 100%;
	}
}

div.kaiteibi {
	display: flex;
}

@media screen and not (max-width: 767px) {
	ul.kaiteibi {
		list-style: none;
		padding-inline-start: 0px;
		border-spacing: 0px;
		width: 130px;
		line-height: 1.3;
		margin: auto;
	}
	ul.kaiteibi li.kaiteibi_midasi {
		font-size:14px;
		font-weight: bold;
		text-align: center;
		border-radius: 6px 6px 0 0;
		border: 1px solid;
		background-color: lightskyblue;
	}
	ul.kaiteibi li.kaiteibi_hiduke {
		font-size:14px;
		text-align: center;
		border-radius: 0 0 6px 6px;
		border: 1px solid;
		background-color: white;
	}
}
@media screen and (max-width: 767px) {
	ul.kaiteibi {
		display: flex;
		list-style: none;
		padding-inline-start: 0px;
		border-spacing: 0px;
		line-height: 1.8;
		margin-left: 10px;
		margin-top: 4px;
		margin-bottom:4px;
		width: 200px;
	}
	ul.kaiteibi li.kaiteibi_midasi {
		width: 54%;
		font-size:13px;
		font-weight: bold;
		text-align: center;
		border-radius: 6px 0 0 6px;
		border: 1px solid;
		background-color: lightskyblue;
	}
	ul.kaiteibi li.kaiteibi_hiduke {
		width: 44%;
		font-size:13px;
		text-align: center;
		border-radius: 0 6px 6px 0;
		border: 1px solid;
		background-color: white;
	}
}
.kaiteibi_hidden {
	visibility: hidden;
}

#outer_frame {
	height: 100vh;
}
@media screen and not (max-width: 767px) {
	#outer_frame {
		display: flex;
		flex-flow: row;
	}
}
@media screen and (max-width: 767px) {
	/* #outer_frame {
		display: flex;
		flex-flow: column;
		text-align: center;
	} */
}

.header {
	background-color: ivory;
	z-index: 99;
}
@media screen and not (max-width: 767px) {
	.header {
		padding: 8px;
		width: 280px;
		height: calc(100% - 16px);
		border-right: 2px solid;
		overflow-y: auto;
	}
}
@media screen and (max-width: 767px) {
	.header {
		position: fixed;
		border-bottom: 1px solid;
	}
	.main {
		position: fixed;
		width: 100%;
		top: 135px;
	}
}

@media screen and not (max-width: 767px) {
	#view_frame {
		display: flex;
		flex-flow: column;
		height: 100vh;
		/* width: calc(100% - 300px); */
		width: 100%;
	}
}
@media screen and (max-width: 767px) {
	#view_frame {
		/* height: calc(100vh - 45px); */
		width: 100%;
	}
}

@media screen and not (max-width: 767px) {
	#func_box {
		width:  calc(100vw - 314px);
		height: 30px;
		background-color: ghostwhite;
		padding: 4px 8px 4px 8px;
		text-align: center;
	}
}
@media screen and (max-width: 767px) {
	#func_box {
		width:  100%;
		height: 30px;
		background-color: ghostwhite;
		padding-top: 6px;
		padding-bottom: 3px;
		text-align: center;
	}
}

@media screen and not (max-width: 767px) {
	#picture_box {
		display: flex;
		justify-content: center;
		width:  calc(100vw - 314px);
		height: calc(100vh - 45px);
		background-color: darkgray;
		padding: 6px 8px 0px 8px;
	}
}
@media screen and (max-width: 767px) {
	#picture_box {
		display: flex;
		flex-flow: row;
		width:  auto;
		/* height: calc(100vh - 54px); */
		height: calc(100vh - 175px);
		justify-content: center;
		background-color: darkgray;
		position: relative;

		text-align: center;
	}
}

@media print {
	@page {
		size: A4;
/*		margin: 0;*/
	}
	body {
		width:   auto;
		height:  auto;
		margin:  0;
		padding: 0;
		transform: scale(0.9);
	}
}

.wrap {
	overflow: auto;
	white-space: nowrap;
}

.hihyouji {
	display: none !important;
}

/* 画像表示倍率 */
.catalog_dsp {
	margin-left:  0.5vw;
	margin-right: 0.5vw;
}
.catalog_dsp100 {
	width:  auto;
	height: calc(100vh - 52px);
}
.catalog_dsp150 {
	width:  auto;
	height: calc(150vh - 52px);
}
.catalog_dsp200 {
	width:  auto;
	height: calc(200vh - 52px);
}
@media screen and (max-width: 767px) {
	.catalog_dsp100 {
		width: calc(100vw - 40px);
		height: auto;
	}
	.catalog_dsp150 {
		width:  calc(150vw - 40px);
		height: auto;
	}
	.catalog_dsp200 {
		width:  calc(200vw - 40px);
		height: auto;
	}
}

a {
	cursor: pointer;
}
a:link {
	color: #993300;
}
a:visited {
	color: #800080;
}
a:hover {
	color: #FF0000;
}

.dsp_page_no_nav {
	/* width: 5.5rem; */
	width: 55px;
}
#page_no {
	/* display: inline-block; */
	vertical-align: super;
	margin-left: 3%;
	margin-right: 3%;
}
#dsp_page_no {
	/* width: 5.5rem; */
	width: 55px;
}

#dsp_page_btn {
	vertical-align: text-bottom;
}
@media screen and not (max-width: 767px) {
	#dsp_page_btn {
		display: none;
	}
}



#resize_minus {
	height: 27px;
	width: auto;
}
@media (any-hover: hover) {
	#resize_minus:hover {
		opacity: 0.6;
	}
}
#resize_minus:disabled {
	opacity: 0.2;
}
#resize_plus {
	height: 27px;
	width: auto;
}
@media (any-hover: hover) {
	#resize_plus:hover {
		opacity: 0.6;
	}
}
#resize_plus:disabled {
	opacity: 0.2;
}
#dl_btn {
	height: 27px;
	width: auto;
	margin-left: 0.5%;
	margin-right: 0.5%;
}
@media (any-hover: hover) {
	#dl_btn:hover {
		opacity: 0.6;
	}
}
#print_btn {
	height: 27px;
	width: auto;
	margin-left: 0.5%;
	margin-right: 0.5%;
}
@media (any-hover: hover) {
	#print_btn:hover {
		opacity: 0.6;
	}
}
@media screen and (max-width: 767px) {
	#print_btn {
		display: none;
	}
}

.page_idou {
	writing-mode: vertical-rl;
	text-orientation: upright;
	text-align: center;
}

.mv_btn {
	margin-top: auto;
	margin-bottom: auto;
}

@media screen and (max-width: 767px) {
	.mv_btn_left {
		position: absolute;
		top: 35%;
		left: 1px;
	}
	.mv_btn_right {
		position: absolute;
		top: 35%;
		right: 1px;
	}
}

@media (any-hover: hover) {
	.mv_btn:hover {
		cursor:pointer;
	}
}

.h_h {
	display: flex;
	margin-top: 8px;
	margin-bottom: 8px;
}
@media screen and not (max-width: 767px) {
	.h_h {
		width: 250px;
		justify-content: flex-end;
	}
}
@media screen and (max-width: 767px) {
	/* .h_h {
		width: 4rem;
		text-align: right;
	} */
	.h_k {
		width: 7rem;
		text-align: right;
	}
	.h_k_eng {
		width: 9rem;
		text-align: right;
	}
}

input.hinban {
	width: 140px;
}

input.hinmei {
	width: 140px;
}

.msg_err {
	font-size: small;
	color: red;
}
.msg_inf {
	font-size: small;
	color: black;
}
@media screen and (max-width: 767px) {
	.msg_err {
		font-size: 1.1rem;
	}
	.msg_inf {
		font-size: 1.1rem;
	}
}

@media screen and not (max-width: 700px) {
	br .sp_dsp {
		display: none;
	}
}

.kensaku_kekka_message_field {
	margin: 6px 0;
}
/* @media screen and not (max-width: 767px) { */
	#kensaku_kekka_list_pc {
		table-layout: fixed;
		word-wrap: break-word;
		border-collapse: collapse;
		border: 1px solid;
		background-color: field;
		height: calc(100% - 100px);

		display: block;
		overflow-y: auto;
	}

	#kensaku_kekka_list_pc th,
	#kensaku_kekka_list_pc td {
		border: 1px solid;
		padding-left: 0.3em;
		padding-right: 0.3em;
	}

	/* #kensaku_kekka_list_pc thead {
		display: block;
	}
	#kensaku_kekka_list_pc tbody {
		display: block;
		overflow-y: scroll;
		height: 100%;
	} */

	#kensaku_kekka_list_pc td.hinban {
		font-size: small;
	}
	
	#kensaku_kekka_list_pc td.hinmei {
		font-size: small;
	}
	
	#kensaku_kekka_list_pc td.jumppage {
		font-size: small;
	}
/* } */
@media screen and (max-width: 767px) {
	#jump_page_list {
		list-style: none;
		display: inline-block;
		padding-inline-start: 0px;
		margin-block-start: 0px;
		margin-block-end: 0px;
	}
	#jump_page_list li {
		display: inline-block;
		list-style: none;
	}
	#jump_page_list a {
		margin-left: 1em;
		text-decoration: underline;
	}
	#jump_page_list span.link {
		margin-left: 1em;
		text-decoration: underline;
	}
}

@media screen and not (max-width: 767px) {
	.message01 {
		margin-top: 6px;
		margin-bottom: 4px;
		font-size: 90%;
		border-bottom: 1px solid slategray;
	}
}
@media screen and (max-width: 767px) {
	.message01 {
		margin-top: 2px;
		margin-bottom: 8px;
		margin-left: 10px;
		margin-right: 10px;
		font-size: 90%;
		border-bottom: 1px solid slategray;
		display: inline-block;
	}
}

.msg_frame_red {
	display: inline-block;
	height: 9px;
	width: 28px;
	top: 0.1rem;
	position: relative;
	border: 2px solid red;
	margin: 0 0.15rem;
}

/* .keyword_highlight {
	background: linear-gradient(transparent 0%, #f6ff5f 0%);
} */

input.infomation_link,
input.kago_link {
	width: 120px;
	margin-top: 12px;
	margin-left: 2px;
	margin-right: 2px;
}

.hilight {
	background-color: yellow;
}

.chushi {
	color: #FF0000;
}
td.suu {
	text-align: right;
}
input.suu {
	width: 46px;
	text-align: right;
}


.kensaku_kekka_frame {
	width: 0;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;	/* メニューを画面の外に飛ばす */
	z-index: 90;
	background-color: ivory;
	transition: 0.5s;
	padding: 1px 6px;
	overflow-y: auto;
}

/* アイコンがクリックされたらメニューを表示 */
#drawer_input_jump:checked ~ .kensaku_kekka_frame {
	width: auto;
	max-width: calc(100vw - 280px);
	left: 298px;	/* メニューを画面に入れる */
}
#drawer_input_jump:not(:checked) ~ .kensaku_kekka_frame {
	visibility: hidden;
}

.kensaku_kekka_close_btn {
	background-image: url("../image/tarrow_left_48.png");
	background-repeat: no-repeat;
	background-size: 90%;
	background-position: center;
	background-color: darkorange;
	width: 48px;
	height: 48px;
}

@media screen and (max-width: 767px) {
	.kensaku_kekka_frame {
		width: 100%;
		height: 0;
		top: 0;
		left: 0;	/* メニューを画面の外に飛ばす */
	}
	#drawer_input_jump:checked ~ .kensaku_kekka_frame {
		width: 100%;
		max-width: 100%;
		/* top: calc(100vh - 138px); */
		top: 138px;
	}
		
	.kensaku_kekka_close_btn {
		background-image: url("../image/tarrow_up_48.png");
	}
}

span.link {
	cursor: pointer;
	/* color: blue; */
	color: #993300;
	text-decoration: underline;
}
span.link:link {
	color: #993300;
}
span.link:visited {
	color: #800080;
}
@media (any-hover: hover) {
	span.link:hover {
		color: #FF0000;
	}
}
