@charset "utf-8";
@import 'foundation.css';
/*@import 'lightbox.css';*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap');
@import url('https://use.fontawesome.com/releases/v5.9.0/css/all.css');
/*@import 'footer.css';*/

/*-- Reset Foundation.. --------------------------------------------------------------------------*/

html { font-size: 62.5%; }
body { font-size: 1.6rem; color: #333333; }
body, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { display: block; line-height: 1.2; margin: 0; }
.h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small, h1 small, h2 small, h3 small, h4 small, h5 small, h6 small, label { color: #333333; }
h3.with-border, .h3.with-border { padding: 0 0 2.2rem; border-bottom: .2rem solid #CCCCCC; }
ul, ol, dl, ul ul, ol ul, ul ol, ol ol { line-height: 1; margin: 0; list-style: none; }
dl dt, strong, b, em { font-weight: normal; line-height: 1; margin: 0; }
em { font-style: normal; }
button, input, optgroup, select, textarea { line-height: 1; margin: 0; }
div, p { margin: 0; line-height: 1; }

thead, tbody, tfoot, tbody tr:nth-child(even) { color: inherit; background-color: #FFFFFF; border: none; }
tfoot td, tfoot th, thead td, thead th, tbody td, tbody th { font-weight: normal; border: .1rem solid #CCCCCC; text-align: center; padding: 1.6rem 0; }
thead th, tbody th { color: #010101; }
tbody th { background-color: #eaf5fc; }

small, label { font-size: 1.4rem; line-height: 1; }

hr { margin: 0 auto; border-bottom: 1px solid #cccccc; }

table { margin: 0; }


select { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 100%; height: 5rem; background: transparent; padding: 1.2rem 0 1.2rem 3.2rem; border: .2rem solid #CCCCCC; font-size: 1.6rem; color: #333333; }
.select { position: relative; }
.select::after { content: ""; width: .8rem; height: .8rem; border-bottom: solid 2px #333333; border-right: solid 2px #333333; -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; top: 50%; right: 2rem; margin-top: -.4rem; }

a, a:hover, a:focus { color: #333333; }
a:hover { opacity: .8; }

h1, .h1 { font-size: 3.6rem; }
h1 small, .h1 small { font-size: 2.4rem; }
h2, .h2 { font-size: 3rem; }
h2 small, .h2 small { display: block; padding-top: 2rem; color: #0A4A9A; font-size: 1.8rem; line-height: 1; }
h3, .h3 { font-size: 2.4rem; }
h4, .h4 { font-size: 2rem; }
h5, .h5 { font-size: 1.6rem; }
h6, .h6 { font-size: 1.4rem; }
h6.shrink { letter-spacing: -.2rem; }

h5.forte, .h5.forte, p.forte { font-size: 1.8rem; }
p.piano { font-size: 1.4rem; }

[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea { font-size: 1.6rem; }

a figure { overflow: hidden; position: relative; }
a figure::before { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 2; background-color: #FFFFFF; opacity: 0; transition: all 500ms; }
a:hover figure::before { opacity: 0.5; }
a figure img { width: 100%; height: auto; transition: all 500ms; position: relative; z-index: 1; }
a:hover figure:not(.no-scale) img { transform: scale(1.1); }
a p.title { position: relative; }
a p.title::after { content: ""; position: absolute; bottom: 1.2rem; left: 0; width: 100%; height: .2rem; background: #0A4A9A; opacity: 0; visibility: hidden; transition: all .3s; }
a p.title i.fas { font-size: 1.2rem; padding-left: 0.6rem; position: relative; }
a:hover p.title { color: #0A4A9A; }
a:hover p.title::after { bottom: 0rem; opacity: 1; visibility: visible; }

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	body { font-size: calc(24 * (100vw / 750)); }

	small, label { font-size: calc(20 * (100vw / 750)); }

	tfoot td, tfoot th, thead td, thead th, tbody td, tbody th { padding: 5.6338% 0; }

	h1, .h1 { font-size: calc(36 * (100vw / 750)); }
	h1 small, .h1 small { font-size: calc(28 * (100vw / 750)); }
	h2, .h2 { font-size: calc(34 * (100vw / 750)); }
	h2 small, .h2 small { font-size: calc(24 * (100vw / 750)); }
	h3, .h3 { font-size: calc(32 * (100vw / 750)); }
	h3, .h3 { font-size: calc(28 * (100vw / 750)); }
	h4, .h4 { font-size: calc(26 * (100vw / 750)); }
	h5, .h5 { font-size: calc(24 * (100vw / 750)); }

	h5.forte, .h5.forte, p.forte { font-size: calc(28 * (100vw / 750)); }

	h2 small, .h2 small { padding-top: 2.66667%; }
	h3.with-border, .h3.with-border { padding: 0 0 3.2%; border-width: .2rem; }

	[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number], [type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea { font-size: calc(24 * (100vw / 750)); }
	select { font-size: calc(24 * (100vw / 750)); height: calc(86 * (100vw / 750)); padding: calc(24 * (100vw / 750))  0 calc(24 * (100vw / 750)) calc(64 * (100vw / 750)); }
}

/*-- ..Reset Foundation --------------------------------------------------------------------------*/
.btn { display: block; width: 100%; padding: 2rem; text-align: center; position: relative; font-size: 1.8rem; cursor: pointer; transition: all .2s; }
.btn::after { content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: 900; -webkit-font-smoothing: antialiased; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; position: absolute; top: calc(50% - .9rem); right: 2rem; transition: all .2s; }
.btn:hover::after { right: 1.5rem; }
.btn.btn-down::after { content: "\f078"; }
.btn.btn-down:hover::after { right: 2rem; }
.btn.btn-left::after { content: "\f053"; right: auto; left: 2rem; }
.btn.btn-left:hover::after { right: auto; left: 1.5rem; }


.btn.tall { padding: 3rem 2rem; }

.btn { border: .2rem solid #CCCCCC; color: #333333; background-color: #FFFFFF; }
.btn:hover { color: #0A4A9A; border-color: #0A4A9A; }
.btn.color-0a4a9a { color: #FFFFFF; background-color: #0A4A9A; border-color: #0A4A9A; }
.btn.color-0a4a9a:hover { color: #0A4A9A; background-color: #FFFFFF; }
.btn.color-e39600 { color: #FFFFFF; background-color: #E39600; border-color:#E39600; }
.btn.color-e39600:hover { color: #E39600; background-color: #FFFFFF; }
.btn.color-dd6ea2 { color: #FFFFFF; background-color: #DD6EA2;  border-color: #DD6EA2; }
.btn.color-dd6ea2:hover { color: #DD6EA2; background-color: #FFFFFF; }
.border-radius-round { border-radius: 30rem; }

.border-top { border-bottom: .1rem solid #CCCCCC; }
.border-bottom { border-bottom: .1rem solid #CCCCCC; }

.underline { text-decoration: underline; }

.icon-pdf { position: relative; display: inline-block; width: 2rem; height: 1.6rem; }
.icon-pdf::before { content: ""; background: url(../img/common/icon-pdf.png) left center no-repeat; position: absolute; top: -.4rem; right: 0; bottom: -.4rem; left: 0; }

.icon-pdf-m { position: relative; display: inline-block; width: 2rem; height: 2.6rem; }
.icon-pdf-m::before { content: ""; background: url(../img/common/icon-pdf-l.png) left center no-repeat; background-size: contain; position: absolute; top: -.4rem; right: 0; bottom: -.4rem; left: 0; }

.icon-pdf-l { position: relative; display: inline-block; width: 3.2rem; height: 4.2rem; }
.icon-pdf-l::before { content: ""; background: url(../img/common/icon-pdf-l.png) left center no-repeat; position: absolute; top: -.4rem; right: 0; bottom: -.4rem; left: 0; }

.btn.color-0a4a9a .icon-pdf::before { background-image: url(../img/common/icon-pdf-white.png); }
.btn.color-0a4a9a:hover .icon-pdf::before { background-image: url(../img/common/icon-pdf.png); }

.icon-exclamation-circle { display: inline-block; width: 4.2rem; height: 4.2rem; background: url(../img/common/icon-exclamation-circle.png) left center no-repeat; background-size: contain; }
.icon-angle-down2bottom { display: inline-block; width: 2.3rem; height: 1.7rem; background: url(../img/common/icon-angle-down2bottom.png) left center no-repeat; background-size: contain; }

.icon-image { position: relative; display: inline-block; width: 3.5rem; height: 2.4rem; }
.icon-image::before { content: ""; background: url(../img/common/icon-image.png) left center no-repeat; position: absolute; top: -.4rem; right: 0; bottom: -.4rem; left: 0; }

.icon-excel { position: relative; display: inline-block; width: 2.6rem; height: 2.6rem; }
.icon-excel::before { content: ""; background: url(../img/common/icon-excel.png) left center no-repeat; position: absolute; top: -.4rem; right: 0; bottom: -.4rem; left: 0; }

.icon-word { position: relative; display: inline-block; width: 2.6rem; height: 2.6rem; }
.icon-word::before { content: ""; background: url(../img/common/icon-word.png) left center no-repeat; position: absolute; top: -.4rem; right: 0; bottom: -.4rem; left: 0; }

.icon-print { position: relative; display: inline-block; width: 2.6rem; height: 2.6rem; }
.icon-print::before { content: ""; background: url("../img/common/icon-print_02.png") no-repeat left center/contain; position: absolute; top: -.4rem; right: 0; bottom: -.4rem; left: 0; }

.color-01 { color: #010101; }
.bg-color-f1 { background-color: #F1F1F1; }

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	.btn { font-size: calc(28 * (100vw / 750)); padding: 0; line-height: 3.428; }
	.btn::after { top: calc(50% - ((28 * (100vw / 750)) / 2)); }

	.icon-pdf { width: calc(36 * (100vw / 750)); height: calc(36 * (100vw / 750)); }
	.icon-pdf::before { background-image: url(../img/common/icon-pdf-l.png); background-size: contain; top: 0; bottom: 0; }
}

/*----------------------------------------------------------------------------*/
header div.title {
	padding: 2.4rem 1rem 0;
	margin: 0 auto;
}
header div.title::after {
	content: "";
	display: block;
	width: 100%;
	padding-top: 2.5rem;
	border-bottom: 1px solid #CCCCCC;
}
header div.title h1 img { width: 25.5rem; }
header div.title ul {
	padding: 1.4rem 0 0.8rem;
}
header div.title ul li a, header div.title ul li span.readspeaker { font-size: 1.3rem; height: 1.9rem; line-height: 1.9rem; padding-left: 3rem; display: block; position: relative; cursor: pointer; }
header div.title ul li a.language { margin: 0 0 0 2.6rem; z-index: 4; padding-right: 4rem; }
header div.title ul li a.magnifier { border-left: 1px solid #CCCCCC; padding: 0; width: 3rem; position: absolute; top: 0; left: 0; }
header div.title ul > li > a::before, header div.title ul li span.readspeaker::before {
	content: "";
	background-position: left center;
	background-repeat: no-repeat;
	width: 3rem;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
}
header div.title ul li a.readspeaker::before, header div.title ul li span.readspeaker::before { background: url(../img/common/icon-readspeaker.png) left center no-repeat; }
header div.title ul li a.language::before { background: url(../img/common/icon-language.png) left center no-repeat; }
header div.title ul > li:nth-child(3) {
	position: relative;
}
.language-list {
    padding: 5rem 0 0;
    position: absolute;
    left: 1.3rem;
    top: -1.5rem;
    background-color: #fff;
    width: 12rem;
    z-index: 3;
	box-shadow: 0 0 4px rgba(0,0,0,.2);
	display: none;
}
header div.title ul li a.language-list-item {
    padding-left: .5rem;
    text-align: center;
	line-height: 3rem;
	height: 3rem;
}
header div.title ul li a.language::after {
    content: "";
    border-bottom: .2rem solid #333;
    border-left: .2rem solid #333;
    position: absolute;
    width: .6rem;
    height: .6rem;
    -ms-transform: rotate(-45deg) translateY(-50%);
    -webkit-transform: rotate(-45deg) translateY(-50%);
    transform: rotate(-45deg);
    top: .6rem;
    right: 2rem;
}
header div.title ul li a.language-list-item:hover {
	background-color: #0A4A9A;
    color: #fff;
}
header div.title ul li a.magnifier::before { background: url(../img/common/icon-magnifier.png) left center no-repeat; background-position: right center; }
#readspeaker_button1 { position: absolute; top: 0; left: 0; z-index: 1; opacity: 0; }

header div.title ul li a.readspeaker,
#header div.title ul li span.readspeaker { display: none; }

header div.title ul li:nth-child(4) { width: 3rem; padding-left: 3rem; position: relative; overflow: hidden; transition: all .3s; }
header div.title ul li.open:nth-child(4) { width: 25rem; padding-left: 3.5rem; }
header div.title ul li:nth-child(4) form { opacity: 0; transition: all .4s; }
header div.title ul li.open:nth-child(4) form { opacity: 1; transition: all 0.6s ease .2s; }
header div.title ul li:nth-child(4) input { height: 2.6rem; border-width: 0; border-bottom: .1rem solid #CCCCCC; padding: 0 0 0 .4rem; }
header div.title ul li:nth-child(4) input:focus { outline: 0; border-color: #0A4A9A; }
header div.title ul li:nth-child(4) button { display: none; }

header nav { margin: 0 auto; padding: 0 1rem; position: relative; }
header nav a { display: block; line-height: 7.4rem; }
.gloval-nav-menuLink { position: relative; /*pointer-events: none;*/ }
.gloval-nav-menuLink::after {
    content: "";
    border-bottom: .2rem solid #0A4A9A;
    border-left: .2rem solid #0A4A9A;
    position: absolute;
    width: .8rem;
	height: .8rem;
	-ms-transform: rotate(-45deg) translateY(-50%);
    -webkit-transform: rotate(-45deg) translateY(-50%);
    transform: rotate(-45deg) translateY(-50%);
    bottom: 1rem;
    left: 50%;
}
header nav .on { background-color: #0A4A9A; }
header nav .on > .gloval-nav-menuLink { color: #fff; }
header nav .on > .gloval-nav-menuLink::after { border-bottom: .2rem solid #fff; border-left: .2rem solid #fff; }
header nav ul > li { overflow: hidden; padding: 0 1.56rem; font-weight: bold }
/*Edge*/
@supports (-ms-ime-align: auto) {
	header nav ul > li {
        padding: 0 1.4rem;
    }
}
/*IE11*/
_:-ms-lang(x)::-ms-backdrop, header nav ul > li {
        padding: 0 1.41rem;
}
/*firefox*/
@-moz-document url-prefix() {
    header nav ul > li {
        padding: 0 1.31rem;
    }
}
/* safari */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    _::-webkit-full-page-media, _:future, :root header nav ul > li {
        padding: 0 1rem;
    }
}


header nav section h3::after, header nav section h5::after, header nav section a[href="close"]::before { content: "\f054"; font-style: normal; font-variant: normal; font-weight: 900; font-family: "Font Awesome 5 Free"; text-rendering: auto; -webkit-font-smoothing: antialiased; }

header nav section { position: absolute; right: 0; left: 0; background: #F1F1F1; display: none; margin-left: calc(-50vw + 50%); margin-right: calc(-50vw + 50%); z-index: 100; }
header nav section > div { padding: 0 1rem; margin: 0 auto; position: relative; }
header nav section h3 { background: #FFFFFF; width: 24rem; margin: 0; height: 100%; line-height: 4rem; font-weight: bold }
header nav section h3 span { display: block; padding: 4rem 0 2rem; line-height: 1.3; text-align: center; }
header nav section h3::after { display: block; color: #FFFFFF; background-color: #0A4A9A; width: 4rem; height: 4rem; border-radius: 4rem; margin: 0 auto; text-align: center; font-size: 1.6rem; line-height: inherit; }
header nav section ul { margin: 3rem 0 0 3rem; }
header nav section ul.grid-x { margin-bottom: 5rem; }
header nav section ul.grid-x li:nth-child(n+2) { margin-left: 2rem; }
header nav section ul.grid-x li a { height: auto; line-height: 1; }
/*飼い主向情報非活性
header nav li:nth-child(3) section ul.grid-x li:nth-child(1) a { pointer-events: none; }
header nav li:nth-child(3) section ul.grid-x li:nth-child(1) a h5 { opacity: .5; }*/

header nav section ul.grid-x li a h5 { padding: 1.6rem 0 0; font-weight: bold }
header nav section ul.grid-x li a h5::after { display: inline-block; margin-left: 1.2rem; }
header nav section ul.grid-x li a h5 i.fas { top: -.2rem; padding-left: 0.6rem;}
header nav section ul.grid-y li { margin: 0 0 1.7rem; }
header nav section ul.grid-y li a { height: auto; line-height: 1; width: 24rem; padding: 0 .8rem 0 0; }
header nav section ul.grid-y li a h5 { position: relative; line-height: 1.4; font-weight: bold;}
header nav section ul.grid-y li a h5::after { position: absolute; top: 0; right: 0; }

header nav section a[href="close"] { position: absolute; right: 1rem; bottom: 1.5rem; background-color: #FFFFFF; width: 11rem; height: 3rem; line-height: 3rem; border-radius: 3rem; text-align: center; }
header nav section a[href="close"]::before { content: "\f00d"; margin-right: .8rem; }

header nav section ul.grid-x li.ex_link a h5::after { display: none; }

/*グローバルナビゲーション下部*/
header nav section ul.grid-x.navi_btm { margin: -3rem 0 3rem 3rem; }

.gloval-nav-item:hover { background-color: #c9ecfc;}
.gloval-nav-item a:hover { color: #333333 !important;}
/*.gloval-nav-item:hover > .gloval-nav-menuLink { color: #fff; opacity: 1; }
.gloval-nav-item:hover > .gloval-nav-menuLink::after {
    border-bottom: .2rem solid #fff;
    border-left: .2rem solid #fff;
}*/

.page-title:not(.no-border) { border-bottom: .1rem solid #CCCCCC; }
.page-title::before {
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	background-color: #CCCCCC;
	position: relative;
	top: -.1rem;
}

.breadcrumb { margin: 0 auto; padding: 1.6rem .6rem 0; }
.breadcrumb li:nth-child(n+2)::before { content: "\03e"; display: inline-block; padding: 0 .8rem; }
.breadcrumb li, .breadcrumb li::before, .breadcrumb a, .breadcrumb span { display: inline-block; font-size: 1.2rem; color: #333333; }

.page-title h1 { margin: 0 auto; padding: 3.6rem .6rem; line-height: 1.4; font-weight: bold;}

.page-title .members { position: relative; margin: 0 auto; }
.page-title .members div { position: absolute; }
.page-title .members li, .page-title .members a { font-size: 1.4rem; }

header .humberger { display: none; }

@media only screen and (min-width: 768px), only screen and (min-width: 897px) and (orientation: landscape) {
	header { min-width: 120rem; }
	header div.title, header nav, header nav section > div, .breadcrumb, .page-title h1, .page-title .members { width: 120rem; }
	.page-title .members div { top: 0; right: 1rem; width: 44rem; }
	.page-title .members li { width: 21rem; }
}

@media only screen and (max-width: 1199px) {
	header nav section {
		margin: 0;
	}
}

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	header { position: relative; }
	header div.title h1 { position: relative; z-index: 1; }
	header div.title h1 img { width: 42.26667vw; }
	header div.title { padding: 1.86667vw 0 0 2.8vw; margin: 0; }
	header div.title ul { display: none; }
	header div.title::after { padding-top: 2.13333vw; }

	header nav { display: none; }
	.breadcrumb { padding: 3.2% 0 0 3.2%; }
	.breadcrumb li, .breadcrumb li::before, .breadcrumb a, .breadcrumb span { font-size: calc(20 * (100vw / 750)); }

	.breadcrumb { overflow-x: auto; }
	.breadcrumb ul { /*display: table;*/ }
	.breadcrumb li { /*display: table-cell;*/ white-space: nowrap; line-height: 1.6; }
	.breadcrumb li:nth-child(n+2)::before { padding: 0 .4rem; }


	.page-title h1 { padding: 7.2% 4% 7.2% 4%; }
	.page-title h1 a { display: block; }
	.page-title .members div { width: 100%; }
	.page-title .members div ul { display: block; }
	.page-title .members li, .page-title .members a { font-size: calc(24 * (100vw / 750)); }
	.page-title .members li a { display: block; width: 78.66667%; margin: auto; }

	header .humberger { display: block; position: absolute; top: 0; right: 0; left: 0; }
	header .humberger button { display: block; float: right; width: 12vw; height: 12vw; }
	header .humberger button:not(.open) img[src*="times"] { display: none; }
	header .humberger button.search { background-color: #ffffff; border-left: .2rem solid #cccccc; }
	header .humberger button.search.open img[src*="magnifier"] { display: none; }
	header .humberger button.menu { background-color: #333333; }
	header .humberger button.menu.open img[src*="bars"] { display: none; }
	header .humberger img[src*="magnifier"] { width: 3.8667vw; }
	header .humberger img[src*="bars"] { width: 4.66667vw; }
	header .humberger img[src*="times"] { width: 4.53333vw; }
	header .humberger .trigger::after { content: ""; display: block; clear: both; }
	header .humberger ul { display: none; border-top: .2rem solid #cccccc; box-shadow: 0 3px 8px rgba(0,0,0,0.15); }
	header .humberger ul.search { /*border-bottom: .2rem solid #cccccc;*/ position: relative; z-index: 65535; }
	header .humberger ul.search li { position: relative; background-color: #eeeeee; padding: 3.86667vw 2.66667vw 4.26667vw; }
	header .humberger ul.search li::after { content: ""; background: url(../img/common/sp/icon-magnifier.png) center center no-repeat; background-size: contain; padding: 2.4vw; position: absolute; top: 6.53333vw; right: 5.86667vw; }
	header .humberger ul.search li [type="text"] { font-size: calc(28 * (100vw / 750)); border-width: 0; border-radius: 12rem; background-color: #ffffff; height: 10.66667vw; margin: 0; padding: 3.6vw 10vw 3.5vw 7.2vw; }
	header .humberger ul.menu { z-index: 65535; background-color: #eeeeee; }
	/*header .humberger ul.menu li { background-color: #eeeeee; }*/
	header .humberger ul.menu li em { display: block; position: relative; font-size: calc(32 * (100vw / 750)); line-height: 3; font-weight: bold; /*background-color: #ffffff;*/ padding: 0 12.4vw 0 2.7vw; border-bottom: .2rem solid #cccccc; }
	header .humberger ul.menu li em::after { content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: 3.33333vw; padding: 2.2vw; background: url(../img/common/sp/icon-angle-down2bottom.png) center center no-repeat; background-size: contain; }
	header .humberger ul.menu li em.open::after { background-image: url(../img/common/sp/icon-angle-down2upper.png); }
	header .humberger ul.menu li div { display: none; padding: .4vw 0; background-color: #ffffff; }
	header .humberger ul.menu li a { display: block; position: relative; font-size: calc(28 * (100vw / 750)); font-weight: bold; line-height: 2.85714; color: #333333; background-color: #eeeeee; width: 94.66667vw; margin: 2.66667vw auto; padding: 0 5.33333vw; }
	header .humberger ul.menu li a.float-left, header .humberger ul.menu li a.float-right { width: 46vw; line-height: 1.28571; margin: 0; padding: 4vw 0 14.4vw;  }
	header .humberger ul.menu li a.full { width: 100%; line-height: 1.28571; margin: 0; padding: 4vw 0 14.4vw; }
	header .humberger ul.menu li a small { font-size: calc(20 * (100vw / 750)); }
	header .humberger ul.menu li a::after { content: "\f054"; font-family: "Font Awesome 5 Free"; -webkit-font-smoothing: antialiased; font-style: normal; font-weight: 900; font-variant: normal; text-rendering: auto; line-height: 1; position: absolute; top: 50%; transform: translateY(-50%); right: 2.66667vw; }
	header .humberger ul.menu li a.float-left::after, header .humberger ul.menu li a.float-right::after, header .humberger ul.menu li a.full::after { top: unset; transform: unset; right: 0; bottom: 4.8vw; left: 0; width: 7.2vw; height: 7.2vw; margin: 0 auto; border-radius: 100%; line-height: 1.92857; color: #ffffff; background-color: #02489c; }
	header .humberger ul.menu li .clearfix { display: block; width: 94.66667vw; margin: 2.66667vw auto; }
	/*header .humberger ul.menu li:nth-child(3) span a:nth-child(1) { opacity: .4; pointer-events: none; }*/
	header .humberger ul.menu li:last-child { background-color: #eeeeee; padding: 5.86667vw .1rem 8.66667vw; }
	header .humberger ul.menu li:last-child a { display: inline-block; width: auto; margin: 0; padding: 0 4.4vw 0 5.6vw; font-size: calc(32 * (100vw / 750)); line-height: 1.4375; }
	header .humberger ul.menu li:last-child a:nth-child(odd) { border-right: .2rem solid #cccccc; }
	header .humberger ul.menu li:last-child a:nth-child(even) { border-left: .2rem solid #cccccc; }
	header .humberger ul.menu li:last-child a::after { display: none; }
}

/*----------------------------------------------------------------------------*/
main .width-118 { width: 120rem; padding: 0 1rem; margin: 0 auto; }
main .width-100 { width: 102rem; padding: 0 1rem; margin: 0 auto; }

main section h2 { text-align: center; }

main .summary { width: 100%; background-color: #e4f0fc; display:-webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
main .summary ul { min-height: 7rem; padding: 0 0 0; margin: 0 auto; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center;   -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; }
main .summary ul li { padding: 1.5rem 3rem; }
main .summary ul li a { display: block; font-size: 1.8rem; padding-right: 2.5rem; position: relative; line-height: 1.4; }
main .summary ul li a::after { content: "\f107"; font-family: "Font Awesome 5 Free"; font-weight: 900; -webkit-font-smoothing: antialiased; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; position: absolute; top: calc(50% - 1rem); right: 0; }
main .summary ul::after { content: ""; display: block; clear: both; }

main ul.list-style li { position: relative; padding-left: 1.6rem; }
main ul.list-style li::before { content: "・"; position: absolute; top: 0; left: 0; }

main ul.list-style-decimal li { position: relative; padding-left: 2.4rem; }
main ul.list-style-decimal li::before { position: absolute; top: 0; left: 0; }
main ul.list-style-decimal li:nth-child(1)::before { content: "1."; }
main ul.list-style-decimal li:nth-child(2)::before { content: "2."; }
main ul.list-style-decimal li:nth-child(3)::before { content: "3."; }
main ul.list-style-decimal li:nth-child(4)::before { content: "4."; }
main ul.list-style-decimal li:nth-child(5)::before { content: "5."; }
main ul.list-style-decimal li:nth-child(6)::before { content: "6."; }
main ul.list-style-decimal li:nth-child(7)::before { content: "7."; }
main ul.list-style-decimal li:nth-child(8)::before { content: "8."; }
main ul.list-style-decimal li:nth-child(9)::before { content: "9."; }
main ul.list-style-decimal li:nth-child(10)::before { content: "10."; }
main ul.list-style-decimal li:nth-child(11)::before { content: "11."; }

main ul.list-style-decimal.garnish li { padding-left: 4.2rem; }
main ul.list-style-decimal.garnish li:nth-child(1)::before { content: "（1）"; }
main ul.list-style-decimal.garnish li:nth-child(2)::before { content: "（2）"; }
main ul.list-style-decimal.garnish li:nth-child(3)::before { content: "（3）"; }
main ul.list-style-decimal.garnish li:nth-child(4)::before { content: "（4）"; }
main ul.list-style-decimal.garnish li:nth-child(5)::before { content: "（5）"; }
main ul.list-style-decimal.garnish li:nth-child(6)::before { content: "（6）"; }
main ul.list-style-decimal.garnish li:nth-child(7)::before { content: "（7）"; }
main ul.list-style-decimal.garnish li:nth-child(8)::before { content: "（8）"; }
main ul.list-style-decimal.garnish li:nth-child(9)::before { content: "（9）"; }

main nav .header { background-color: #e4f0fc; text-align: center; }
main nav .header span { font-size: 1.8rem; color: #050505; line-height: 5rem; }
main nav .header span i { margin-right: 1.6rem; }
main nav h2, main nav .column-4 { width: 102rem; margin: 0 auto; padding: 0 1rem; }
main nav h2 { border-bottom: .1rem solid #CCCCCC; padding: 5.2rem 0 4rem; margin-bottom: 5.4rem; }
main nav h2::after, main nav dt a::after { content: "\f054"; font-style: normal; font-variant: normal; font-weight: 900; font-family: "Font Awesome 5 Free"; text-rendering: auto; -webkit-font-smoothing: antialiased; display: inline-block;}
main nav h2::after { margin-left: 2rem; font-size: 2.2rem; }
main nav .column-4 { padding: 0 0 5.2rem; }
main nav dt { padding-bottom: 2.4rem; }
main nav dt:nth-of-type(n+2) { padding-top: 1.8rem; }
main nav dt a { font-size: 1.8rem; color: #050505; line-height: 1.3; position: relative; }
main nav dt a::after { margin-left: 1.5rem; font-size: 1.4rem; }
main nav dt.eyenote a::after { position: absolute; top: 0; left: 9rem; line-height: 3.2rem; }
main nav dd { padding-bottom: 1.8rem; }
main nav dd a { font-size: 1.4rem; color: #050505; }
main nav dd a::before { content: "-"; display: inline-block; margin-right: 1.2rem; position: relative; left: -.1rem; color: #020202; }
main .icon-pdf { margin-left: 0.8rem; }

main .contact-method  { background-color: #F1F1F1; }
main .contact-method .number { color: #0A4A9A; display: inline-block; }
main .contact-method a.number { font-size: 5.6rem; }
main .contact-method span.number { font-size: 4.4rem; }
main .contact-method .column-2 { padding: 5rem 0; margin: 0 auto; }
main .contact-method .column-2 li:first-child { width: 36rem; }
main .contact-method .column-2 li:first-child em { display: block; font-size: 3rem; padding: 7.2rem 0 0 8.8rem; }
main .contact-method .column-2 li:last-child { width: 82rem; }
main .contact-method .column-2 li:last-child em { display: block; font-size: 2rem; color: #333333; padding: 0 0 2rem; }
main .contact-method .column-2 li:last-child p { padding: 0 0 2rem; }
main .contact-method .column-2 li:last-child p .fax { font-size: 2rem; color: #333333; display: inline-block; }
main .contact-method .column-2 li:last-child p a { margin-right: 5rem; }
main .contact-method .column-2 li:last-child small { display: block; font-size: 1.4rem; color: #333333; }
main .contact-method .column-2 li:last-child small:first-of-type { padding: 0 0 2rem; }
main .contact-method .column-2 li:last-child small:last-of-type { line-height: 1.8; white-space: normal; }
main .contact-method .column-2 li:last-child small:last-of-type::before { content: "※"; }

main .paginate div { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
main .paginate a { border: .1rem solid #CCCCCC; border-radius: .4rem; text-align: center; line-height: 4.3rem; width: 4.5rem; margin: 0 .6rem; white-space: nowrap; color: #333333; }
main .paginate a.prev, main .paginate a.next { width: 7.5rem; }
main .paginate a.prev { margin: 0 1.2rem 0 0; }
main .paginate a.next { margin: 0 0 0 1.2rem; }
main .paginate span { font-size: 1.8rem; line-height: 4.5rem; text-align: center;  padding: 0 .6rem; }
main .paginate p { text-align: center; color: #333333; padding: 3.2rem 0; }

main a.magnify { display: block; position: relative; }
main a.magnify::after { content: "\f002"; position: absolute; z-index: 1; right: 0; bottom: 0; font-size: 1.2rem; font-weight: 900; font-family: "Font Awesome 5 Free"; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; color: #FFFFFF; background-color: #0A4A9A; padding: .4rem; }
main a.magnify.search::after { content: "\f00e"; font-size: 2.4rem; padding: 1rem; }

main button.print { position: relative; border: .2rem solid #CCCCCC; border-radius: 4rem; font-size: 1.4rem; line-height: 3.6rem; padding: 0 2.6rem 0 5.2rem; cursor: pointer; }
main button.print::before { content: ""; background: url(../img/common/icon-print.png) center center no-repeat; width: 2.7rem; position: absolute; top: 0; bottom: 0; left: 1.8rem; }

main .table-wrap.alignment-left th, main .table-wrap.alignment-left td { text-align: left; padding-left: 3.2rem; }
main .table-wrap.alignment-left th { width: 29.8rem; }

main .bracket *, main .bracket-s * { color: #333333; }
main .bracket { padding: 4rem 5rem; }
main .bracket h4 { margin-bottom: 2rem; }
main .bracket p { line-height: 1.6; }
main .bracket.enclosure { border: .1rem solid #CDCDCD; }
main .bracket.column-2 { padding: 0; }
main .bracket.column-2 li:nth-child(odd) { width: 62rem; padding: 4rem 0 4rem 5rem; }
main .bracket.column-2 li:nth-child(even) { width: 34rem; padding: 2.4rem 3rem 2.4rem 0; }
main .bracket-s.column-2 li { width: 48rem; }
main .bracket-s section { margin-bottom: 2rem; }
main .bracket-s section::after { content: ""; display: block; clear: both; }
main .bracket-s section div:nth-child(1) { float: left; width: 19rem; }
main .bracket-s section div:nth-child(2) { float: right; width: 27rem; }
main .bracket-s h5 { margin: 1rem 0 1.6rem; }

main .bracket-s.enclosure li { border: .1rem solid #CDCDCD; padding: 3rem 3rem 1rem 3rem; }
main .bracket-s.enclosure section div:nth-child(2) { width: 21rem; }

main .mb-30 { margin-bottom: 3rem !important; }
main .mb-32 { margin-bottom: 3.2rem !important; }
main .mb-36 { margin-bottom: 3.6rem !important; }
main .mb-40 { margin-bottom: 4rem !important; }
main .mb-46 { margin-bottom: 4.6rem !important; }
main .mb-50 { margin-bottom: 5rem !important; }
main .mb-60 { margin-bottom: 6rem !important; }
main .mb-70 { margin-bottom: 7rem !important; }
main .mb-80 { margin-bottom: 8rem !important; }
main .mb-90 { margin-bottom: 9rem !important; }
main .mb-100 { margin-bottom: 10rem !important; }
main .mb-120 { margin-bottom: 12rem !important; }

@media only screen and (min-width: 768px), only screen and (min-width: 897px) and (orientation: landscape) {
	main { min-width: 120rem; }
	main .summary ul, main .contact-method .column-2 { width: 120rem; }
}

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	main .width-118, main .width-100 { width: 100%; }
	main .summary ul { min-height: 9.33333vw; }
	main .summary ul li { padding: 2vw .26667vw; margin: 0 3.2vw; }
	main .summary ul li a { font-size: calc(24 * (100vw / 750)); padding-right: 4vw; }
	main .summary ul li a::after { top: 50%; transform: translateY(-50%); }
	main .contact-method .column-2 { padding: 7.2% 0; }
	main .contact-method .column-2 li:first-child { width: 100%; }
	main .contact-method .column-2 li:first-child em { padding: 0; text-align: center; font-size: calc(38 * (100vw / 750)); }
	main .contact-method .column-2 li:last-child { width: 100%; }
	main .contact-method .column-2 li:last-child em { padding: 5.6% 0 3.2%; text-align: center; font-size: calc(28 * (100vw / 750)); }
	main .contact-method .column-2 li:last-child p { text-align: center; }
	main .contact-method .column-2 li:last-child p a { display: block; margin: 0; font-size: calc(86 * (100vw / 750));  }
	main .contact-method .column-2 li:last-child p .fax { font-size: calc(24 * (100vw / 750)); }
	main .contact-method span.number { padding: 4% 0 5.6%; font-size: calc(60 * (100vw / 750)); }
	main .contact-method .column-2 li:last-child small:first-of-type { text-align: center; padding: 0; margin: 0; font-size: calc(24 * (100vw / 750)); }
	main .contact-method .column-2 li:last-child small:last-of-type { text-align: left; margin: 5.6% 6% 0 9.6%; padding: 0 0 0 calc(24 * (100vw / 750)); font-size: calc(24 * (100vw / 750)); position: relative; }
	main .contact-method .column-2 li:last-child small:last-of-type::before { position: absolute; top: 0; left: 0; }

	main nav { display: none; }
	main .mb-30 { margin-bottom: 4% !important; }
	main .mb-32 { margin-bottom: 4.26667% !important; }
	main .mb-36 { margin-bottom: 4.8% !important; }
	main .mb-40 { margin-bottom: 5.33333% !important; }
	main .mb-46 { margin-bottom: 6.13333% !important; }
	main .mb-50 { margin-bottom: 6.66667% !important; }
	main .mb-60 { margin-bottom: 8% !important; }
	main .mb-70 { margin-bottom: 9.33333% !important; }
	main .mb-80 { margin-bottom: 10.66667% !important; }
	main .mb-90 { margin-bottom: 12% !important; }
	main .mb-100 { margin-bottom: 1.33333% !important; }
	main .mb-120 { margin-bottom: 16% !important; }
}


/*----------------------------------------------------------------------------*/
footer nav li a { display: block; }
footer nav li a:hover { color: #fff; }

footer .banner { padding: 2rem 0 2.2rem; }
footer .banner li { width: 31.5rem; }
footer .banner li a { display: block; }

footer .ln { border-top: .1rem solid #CCCCCC; }
footer .ln ul { width: 100rem; margin: 0 auto; padding: 1.4rem 0.4rem 1.3rem; }
footer .ln li, footer .ln li a { font-size: 1.3rem; line-height: 2.8; }
footer .ln li a { display: block; position: relative; }
footer .ln li a:hover { color: #0A4A9A; }

footer .ln li a::after { content: ""; position: absolute; bottom: -.2rem; left: 0; width: 100%; height: .2rem; background: #0A4A9A; opacity: 0; visibility: hidden; transition: all .3s; }
footer .ln li a:hover::after { bottom: -.8rem; opacity: 1; visibility: visible; }

footer .ln li.ft_cud { width: 10.5rem; line-height: 6rem; margin-left: 3rem; }
footer .ln li.ft_cud a::after { display: none;}

footer .copyright { font-size: 1.3rem; color: #333; background-color: #e5e5e5; text-align: center; white-space: nowrap; padding: 2.2rem 0; }


@media only screen and (min-width: 768px), only screen and (min-width: 897px) and (orientation: landscape) {
	footer { min-width: 120rem; }
	footer nav { background-color: #0A4A9A; padding: 3.3rem 0; }
	footer nav ul { width: 60rem; margin: 0 auto; padding: 0 .6rem; }
	footer nav li, footer nav li a { font-size: 1.4rem; color: #fff; }
	footer .banner li:nth-child(n+2) { border-left: .1rem solid #CCCCCC; }
}

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	footer nav li { width: 50%; padding: .1rem 0; }
	footer nav li:nth-child(odd) { padding-right: .1rem; }
	footer nav li:nth-child(even) { padding-left: .1rem; }
	footer nav li a { background-color: #e4f0fc; padding-left: 8.55614%; }
	footer nav li, footer nav li a { font-size: calc(24 * (100vw / 750)); line-height: 4.5; }
	footer .ln ul { width: 100%; padding: 2.66667%; }
	footer .ln li { width: 50%; padding: .1rem 0; }
	footer .ln li:nth-child(odd) { padding-right: .1rem; }
	footer .ln li:nth-child(even) { padding-left: .1rem; }
	footer .ln li, footer .ln li a { font-size: calc(20 * (100vw / 750)); line-height: 3; }
	footer .ln li a::after { display: none; }
	footer .ln li.ft_cud { width: 50%; margin-left: 0; }
	footer .ln li.ft_cud figure { width: 50%; }
	footer .banner { padding: 0 2.66667%; }
	footer .banner li { width: 100%; }
	footer .banner li:nth-child(n+2) { border-top: .2rem solid #CCCCCC; }
	footer .copyright { font-size: calc(16 * (100vw / 750)); padding: 3.6% 0 4.93333%; }
}

/*----------------------------------------------------------------------------*/
.cover.carousel .cursor a::before, .column-3.carousel .cursor a::before, .scroll-top, .text-link li a::after { font-family: "Font Awesome 5 Free"; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; font-style: normal; font-variant: normal; text-rendering: auto; }


.column-2 ul, .column-3 ul, .column-4 ul, .column-5 ul, .archive-headline li a, .archive-headline li .href_none, .tabbed-pane .header ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; }
.column-2 ul, .column-3 ul, .column-4 ul, .column-5 ul { -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }
.column-2.center ul, .column-3.center ul, .column-4.center ul, .column-5.center ul { -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
.column-2.left ul, .column-3.left ul, .column-4.left ul, .column-5.left ul { -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; }

.column-1 {}
.column-2 li { width: 47%; }
.column-3 li { width: 33.33333%; }
.column-4 li { width: 25%; }
.column-5 li { width: 20%; }
.paragraph {}


@media only screen and (max-width: 767px) {
	.column-3 li , senju-sense { width: 80%; }
}

.column-1.align.w100 li { width: 74rem; margin: 0 auto; }
.column-2.align.w100 li { width: 48rem; }
.column-2.align.w118 li { width: 57rem; }
.column-3.align.w100 li { width: 31rem; }
.column-3.align.w100-x li { width: 32rem; }
.column-3.align.w118 li { width: 57rem; }

.column-2.align.w100.lf-rt li:nth-child(odd) { width: 45rem; }
.column-2.align.w100.lf-rt li:nth-child(even) { width: 51rem; }
.column-2.align.w100.rt-lf li:nth-child(odd) { width: 51rem; }
.column-2.align.w100.rt-lf li:nth-child(even) { width: 45rem; }
.column-1.align.btn-center li { width: 32rem; margin: 0 auto; }

.column-1 p.title, .column-2 p.title, .column-3 p.title, .column-4 p.title { display: inline-block; font-size: 1.7rem; padding: 1.6rem 0; color: #333333; }


.column-1 small, .column-2 small, .column-3 small, .column-2 h5, .column-3 h6 { display: block; white-space: normal; /*overflow: hidden;*/ text-overflow: ellipsis; }
.column-1 small { margin: 1.6rem 0;}
.column-1 h4 { margin: 3rem 0 2.4rem;}
.column-2 h4 { margin: .2rem 0 2.6rem; }
.column-2 h5 { margin: 2rem 0; }
.column-2 small, .column-3 small { margin: 2.2rem 0; }
.column-3 h5 { margin: .8rem 0 1.6rem; }
.column-3 h6 { margin: 2.4rem 0; }
.column-3.carousel h5 { color: #333333; margin: 2rem 0; }
.column-2.lf-rt h3, .column-2.rt-lf h3 { margin-bottom: 2.6rem; }
.column-2.lf-rt small, .column-2.rt-lf small { color: #333333; margin: 1.8rem 0; }
.column-2.lf-rt p, .column-2.rt-lf p { line-height: 1.8; color: #333333; }

.archive-headline li a, .archive-headline li .href_none { align-items: baseline;  }
.archive-headline li { position: relative; padding: 1.8rem 0; border-bottom: .1rem solid #CCCCCC; }
.archive-headline li:first-child { border-top: .1rem solid #CCCCCC; }
.archive-headline .category { color: #0A4A9A; border: .1rem solid #6984B6; padding: 1rem; text-align: center; white-space: nowrap; width: 10%; font-size: 1.4rem; }
.archive-headline .time { width: 17.6%; padding-left: 1.6%; }
.archive-headline .title { color: #333333; line-height: 1.625; max-width: 72%; }
.archive-headline .icon-pdf { width: 1.5em; height: 1.5em; }
.archive-headline .icon-pdf::before { height: 1.5em; top: .4rem; left: .2rem; }
.archive-headline .title .fas.fa-external-link-alt { position: relative; margin-left: .8rem; }

.cover.carousel ul { position: relative; }
.cover.carousel img { display: block; width: 100%; object-fit: cover; }
.cover.carousel .navigation { padding: 2.4rem 0; }
.cover.carousel .navigation a { display: block; width: 2rem; height: 2rem; margin: 0 .8rem; background-color: #FFFFFF; border: .1rem solid #CCCCCC; border-radius: 3rem; }
.cover.carousel .navigation a.current { border-color: #FFFFFF; background-color: #276ABA; }
.cover.carousel .cursor { position: static; }
.cover.carousel .cursor a { position: absolute; top: calc(50% - 3rem); z-index: 1001; width: 6rem; height: 6rem; border-radius: 6rem; background-color: #FFFFFF; box-shadow: 0 .5rem .3rem rgba(192, 192, 192, .4); line-height: 6rem; }
.cover.carousel .cursor a::before { display: block; font-weight: 900; font-size: 2.4rem; line-height: inherit; text-align: center; }
.cover.carousel .cursor a[href="prev"] { left: 3rem; }
.cover.carousel .cursor a[href="next"] { right: 3rem; }
.cover.carousel .cursor a[href="prev"]::before { content: "\f053"; }
.cover.carousel .cursor a[href="next"]::before { content: "\f054"; }

.column-3.carousel .cursor { position: static; }
.column-3.carousel .cursor a { position: absolute; top: calc(50% - 2.3rem); z-index: 1001; width: 4.6rem; height: 4.6rem; border-radius: 4.6rem; background-color: #F1F1F1; line-height: 4.6rem; }
.column-3.carousel .cursor a::before { display: block; font-weight: 900; font-size: 1.8rem; line-height: inherit; text-align: center; }
.column-3.carousel .cursor a[href="prev"] { left: -5rem; }
.column-3.carousel .cursor a[href="next"] { right: -5rem; }
.column-3.carousel .cursor a[href="prev"]::before { content: "\f053"; }
.column-3.carousel .cursor a[href="next"]::before { content: "\f054"; }

.scroll-top { position: fixed; right: 7rem; bottom: 15rem; z-index: 2147483641; background-color: #B3B3B3; width: 5.4rem; height: 5.4rem; border-radius: 6rem; display: none; line-height: 5.4rem; }
.scroll-top, .scroll-top:hover, .scroll-top:focus { color: #FFFFFF; }
.scroll-top::before { content: "\f077"; display: block; font-weight: 900; font-size: 1.4rem; line-height: inherit; text-align: center; }

.text-link.arrow-right li a::after { content: "\f054"; font-weight: 900; padding: 0 0 0 1.2rem; }

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	.column-1 p.title, .column-2 p.title, .column-3 p.title, .column-4 p.title { font-size: calc(25 * (100vw / 750)); padding: 3.2% 0; }
	.column-2 h4 { margin: calc(2 * (100vw / 750)) 0 calc(26 * (100vw / 750)); }

	.archive-headline li { padding: 5.07042% 0; border-width: .2rem; }
	.archive-headline .category { min-width: 16.90141%; width: auto; padding: 0; font-size: calc(20 * (100vw / 750)); border-width: .2rem; line-height: 1.6; }
	.archive-headline .time { width: auto; white-space: nowrap; padding-left: 3.38028%; }
	.archive-headline .title { display: block; width: 100%; max-width: 100%; }
	.archive-headline .icon-pdf::before { height: 100%; }
	.archive-headline .title .fas.fa-external-link-alt { margin-left: 1.067vw; top: -.1rem; }


	.cover.carousel .cursor a { width: calc(60 * (100vw / 750)); height: calc(60 * (100vw / 750)); top: calc(50% - (60 * (100vw / 750) / 2)); }
	.cover.carousel .cursor a[href="prev"] { left: calc(10 * (100vw / 750)); }
	.cover.carousel .cursor a[href="next"] { right: calc(10 * (100vw / 750)); }
	.cover.carousel .cursor a::before { font-size: calc(24 * (100vw / 750)); line-height: calc(60 * (100vw / 750)); }
	.cover.carousel .navigation { padding: 4% 0; }
	.cover.carousel .navigation a { width: calc(28 * (100vw / 750)); height: calc(28 * (100vw / 750)); margin: 0 calc(10 * (100vw / 750)); }

	.scroll-top { width: 11.33333%; height: auto; right: 2.93333%; bottom: 0; margin-bottom: 17.06667%; }
	.scroll-top::before { font-size: calc(37 * (100vw / 750)); line-height: 2.3; }
}

/*----------------------------------------------------------------------------*/
@media only screen and (min-width: 768px), only screen and (min-width: 897px) and (orientation: landscape) {
	.sp-only { display: none!important; }
}

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	.pc-only { display: none!important; }
}

@page { size: A4 portrait; }
@media print {
	body { -webkit-print-color-adjust: exact; }
	a[href]:after{ content: "" !important; }
	header nav, header div.title ul, .page-title .members div, main .summary, button.print, .sp-only, .scroll-top { display: none!important; }
}



img.pc { display: block; }
img.sp { display: none; }
@media only screen and (max-width:897px) {
  img.pc { display: none; }
  img.sp { display: block;}
}

#scrimshaw-clone-0 { margin-top: 72px; }

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	#scrimshaw-clone-0 { margin-top: 11.133333vw; }
}

/*-------------------------------------------*/
/*---　404　---*/
/*-------------------------------------------*/

main#page404::before {
	content: "";
    display: block;
    width: 100%;
    height: .1rem;
    background-color: #CCCCCC;
    position: relative;
    top: -.1rem;
}
main#page404 section { margin: 7.6rem auto 3rem; }
main#page404 h1 { text-align: center; font-weight: bold; font-size: 4.6rem; margin: 2rem .5rem; }
main#page404 h2, main#page404 p { text-align: center; }
main#page404 h2 { font-size: 3.0rem; }
main#page404 p { line-height: 1.8; }
main#page404 .local-error_img {
	background-image: url("img/404.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	margin: 0 auto;
	width: 10.5rem;
	position: relative;
}
main#page404 .local-error_img:before {
	content: '';
	display: block;
	padding-bottom: 100.96703296703296%;
}
main#page404 .return .btn{
	border:none;
	background-color: #b3b3b3;
	color:#fff;
	width: 38rem;
  padding: 2rem 2rem 2rem 4rem;
}
main#page404 .return .btn::after{
	right:inherit;
	left:2rem !important;
	-webkit-transform:rotateY(180deg);
	transform:rotateY(180deg);
}
main#page404 .column-3 ul { padding: 0 0 7.6rem; }
main#page404 .column-3 li { width: 32.20338983050847%; padding-bottom: 2rem; }

@media only screen and (max-width: 767px), only screen and (max-width: 896px) and (orientation: landscape) {
	main#page404 section { margin: 7.2% 0 4%; }
	main#page404 .local-error_img { width: calc(140 * (100vw / 750)); }
	main#page404 h1 { font-size: calc(68 * (100vw / 750)); margin: 2.11%; }
	main#page404 h2 { font-size: calc(34 * (100vw / 750)); }
	main#page404 .column-1.align.btn-center li { width: 84.50704%; margin: 2.11% auto;}
	main#page404 .return .btn{ padding: 1.5rem 0; line-height: 1.625; width: 100%; }
	main#page404 h3 { font-size: calc(32 * (100vw / 750)); }
	main#page404 .column-3 li { width: 84.50704%; margin: 0 auto 5.6338%; padding: 0; }

}

@media screen and (min-width: 768px) {
    br.br-sp {
        display: none !important;
    }
} /* min-width: 768px END */
