@charset "utf-8";
/*============================================================================*\
   $Foundation
\*============================================================================*/
/*! de-style.css v1.0.5 | MIT License | https://github.com/nicolas-cusan/destyle.css */
*{-webkit-box-sizing:border-box;box-sizing:border-box}
::before,::after{-webkit-box-sizing:inherit;box-sizing:inherit}
html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
body{margin:0}
main{display:block}
p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}
h1,h2,h3,h4,h5,h6{font-size:inherit;line-height:inherit;font-weight:inherit;margin:0}
ul,ol{margin:0;padding:0;list-style:none}
dt{font-weight:700}
dd{margin-left:0}
hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible;border:0;border-top:1px solid;margin:0;clear:both}
pre{font-family:monospace,monospace;font-size:inherit}
address{font-style:inherit}
a{background-color:transparent;text-decoration:none;color:inherit}
abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}
b,strong{font-weight:bolder}
code,kbd,samp{font-family:monospace,monospace;font-size:inherit}
small{font-size:80%}
sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
sub{bottom:-.25em}
sup{top:-.5em}
img{border-style:none;vertical-align:bottom}
embed,object,iframe{border:0;vertical-align:bottom}
button,input,optgroup,select,textarea{vertical-align:middle;color:inherit;font:inherit;border:0;background:transparent;padding:0;margin:0;outline:0}
select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0}
button,input{overflow:visible}
button,select{text-transform:none}
button,[type='button'],[type='reset'],[type='submit']{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}
button[disabled],[type='button'][disabled],[type='reset'][disabled],[type='submit'][disabled]{cursor:default}
button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner{border-style:none;padding:0}
button:-moz-focusring,[type='button']:-moz-focusring,[type='reset']:-moz-focusring,[type='submit']:-moz-focusring{outline:1px dotted ButtonText}
fieldset{margin:0;padding:0;border:0;min-width:0}
legend{color:inherit;display:table;max-width:100%;padding:0;white-space:normal}
progress{vertical-align:baseline}
textarea{overflow:auto}
[type='checkbox'],[type='radio']{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}
[type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button{height:auto}
[type='search']{-webkit-appearance:textfield;outline-offset:-2px}
[type='search']::-webkit-search-decoration{-webkit-appearance:none}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}
::-webkit-input-placeholder{font:inherit}
:-ms-input-placeholder{font:inherit}
::-ms-input-placeholder{font:inherit}
::placeholder{font:inherit}
label[for]{cursor:pointer}
details{display:block}
summary{display:list-item}
table{border-collapse:collapse;border-spacing:0}
caption{text-align:left}
td,th{vertical-align:top}
th{text-align:left;font-weight:700}
template{display:none}
[hidden]{display:none}
html {
	font-size: 62.5%;
}
body {
	overflow-x: hidden;
	background: #fff;
	color: #212121;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-size: 1.4em;
	line-height: 1.625;
	letter-spacing: 0.01em;
	-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a {
	color: #2b52a0;
}
a:focus,
a:hover {
	color: rgb(43, 114, 255);
}
a:active {
	color: rgb(43, 46, 51);
}
/* Typography Base Setting */
ol, ul {
	padding-left: 2em;
}
ol {
	list-style: decimal outside none;
}
ul {
	list-style: square outside none;
}
li ol, li ul {
	margin-bottom: 0;
}
nav ol, nav ul {
	list-style: none;
	padding-left: 0;
}
em {
	font-style: normal;
}
rp, rt {
	line-height: 1;
	font-size: .688em;
}
table {
	empty-cells: show;
	font-size: 1em;
}
iframe {
	display: block;
	width: 100%;
}
img {
	height: auto;
}
img, iframe, button, input, select, textarea {
	max-width: 100%;
}
a, area, button, [role="button"], input:not([type=range]), label, select, summary, textarea {
	-ms-touch-action: manipulation;
	touch-action: manipulation;
}
textarea {
	height: auto;
	resize: vertical;
}
/*============================================================================*\
   $Layout
\*============================================================================*/
/*------------------------------------*\
    ヘッダー
\*------------------------------------*/
body {
	padding-top: 61px;
}
.header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 61px;
	border-bottom: 1px solid #bbb;
	background: #fff;
}
.header__logo {
	position: absolute;
	left: 5px;
	top: 5px
}
.header__logo img {
	width: 50px;
}
/*------------------------------------*\
    フッター
\*------------------------------------*/
.footer {
	border-top: 3px solid #fff;
	background: #e8e8e8;
	text-align: center;
}
.footer__nav {
	width: 90%;
	max-width: 640px;
	margin: 0 auto;
	padding: 30px 0 20px;
	font-size: 1.3rem
}
.footer__nav ul {
		display: inline-block;
		padding-left: 0;
		text-align: left;
	}
.footer__nav li {
		display: inline-block;
		margin-bottom: .2em;
		padding-right: 1em;
		white-space: nowrap;
	}
.footer__nav a {
		display: inline-block;
		position: relative;
		padding-left: 1em;
		color: #000
	}
.footer__nav a:before {
			content: "";
			display: block;
			position: absolute;
			left: 2px;
			top: 50%;
			width: 0;
			height: 0;
			margin-top: -4px;
			border: 4px solid transparent;
			border-left: 5px solid #2b52a0;
		}
.footer__nav a:hover {
			text-decoration: underline;
		}
/* copyright */
.copyright {
	margin-top: 20px;
	background: #2b52a0;
	color: #fff;
	font-size: 1rem;
	font-weight: bold;
	line-height: 32px;
	text-align: center;
}
/*------------------------------------*\
    ページタイトル
\*------------------------------------*/
.page-title {
	display: -ms-flex;
	display: -webkit-flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-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;
	height: 80px;
	background: #628dd1 url(../img/bg_book.png) no-repeat left center;
	background-size: 64px 60px;
	color: #fff;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
.top-title {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	margin-bottom: 20px;
	padding-left: .5em;
	border-left: 5px solid #628dd1;
	font-size: 2rem;
	font-weight: bold;
}
.item-unit__shiage .top-title {
	border-left: 5px solid #e8497a;
}
.top-title span {
	display: flex;
	align-items: center;
	justify-content: left;
	gap: 0.8em;
	width: 100%;
	margin-top: 0.4em;
	font-size: 1.3rem;
}
.top-title ::before, .top-title ::after {
	flex-basis: 2em;
	flex-grow: 0;
	flex-shrink: 1;
	min-width: 0.5em;
	height: 1px;
	background-color: #212121;
	content: "";
}
@media (min-width: 40.0625em) {
	.top-title {
		flex-direction: row;
		align-items: center;
	}
	.top-title span {
		margin-top: 0;
		margin-left: 1em;
		white-space: nowrap;
		flex-grow: 1;
		width: auto;
		font-size: 1.5rem;
	}
	.top-title ::before, .top-title ::after {
		flex-basis: 4em;
	}
}
@media (min-width: 60.0625em) {
	.top-title {
		margin-bottom: 30px;
	}
}

/*------------------------------------*\
    パンくずリスト
\*------------------------------------*/
.breadcrumbs {
	padding: 5px 10px;
	background: #eee;
	font-size: 1rem
}
.breadcrumbs ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
.breadcrumbs li {
		display: inline-block;
		vertical-align: middle;
	}
.breadcrumbs li + li:before {
		content: "\e902";
		display: inline-block;
		margin-right: .2em;
		color: #628dd1;
		font-family: "icomoon";
		vertical-align: middle;
	}
.breadcrumbs a {
		display: inline-block;
		padding: 2px 0;
		color: inherit
	}
.breadcrumbs a:hover {
			opacity: .75;
		}
.breadcrumbs .icon-home {
		margin-bottom: -.1em;
		font-size: 1.2em;
		color: #628dd1;
		line-height: 1;
	}
/*------------------------------------*\
    ページトップへ戻る
\*------------------------------------*/
.pagetop a {
	display: block;
	position: fixed;
	bottom: 20px;
	right: 3%;
	z-index: 99;
	opacity: 0;
	-webkit-transform: translateY(100px);
	        transform: translateY(100px);
	-webkit-transition: all .2s ease-out;
	transition: all .2s ease-out;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #628dd1;
	color: #fff;
	text-align: center;
	-webkit-backface-visibility: hidden;
	        backface-visibility: hidden
}
.pagetop a:before {
	content: "\e903";
	position: relative;
	top: 0;
	font-family: "icomoon";
	font-size: 24px;
	line-height: 46px;
	-webkit-transition: top .2s ease-out;
	transition: top .2s ease-out;
}
.pagetop a:hover:before {
		top: -3px;
	}
.pagetop.scrolling,
.pagetop.stop {
	position: relative;
}
.pagetop.scrolling a,
.pagetop.stop a {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}
.pagetop.stop a {
	position: absolute;
	bottom: -25px;
	-webkit-transition: none;
	transition: none;
}
/*============================================================================*\
   #Object - Component
\*============================================================================*/
/*------------------------------------*\
    Buttons
\*------------------------------------*/
.btn {
	display: inline-block;
	overflow: visible;
	position: relative;
	width: 200px;
	max-width: 100%;
	margin: 0;
	padding: 0;
	border: none;
	font-weight: bold;
	text-align: center;
	text-decoration: none !important;
	vertical-align: middle;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	cursor: pointer;
}
.btn--prev:after,
.btn--next:after {
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -.5em;
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 1;
	font-family: "icomoon";
	-webkit-transition: all .2s ease-out;
	transition: all .2s ease-out;
}
.btn--prev {
	padding-left: 1em
}
.btn--prev:after {
		content: "\e901";
		left: 1em;;
	}
.btn--prev:hover:after {
		left: .8em;
	}
.btn--next {
	padding-right: 1em
}
.btn--next:after {
		content: "\e902";
		right: 1em;;
	}
.btn--next:hover:after {
		right: .8em;
	}
.btn--primary {
	width: 300px;
	height: 60px;
	border-radius: 30px;
	-webkit-box-shadow: 0 5px 0 #4766b2;
	        box-shadow: 0 5px 0 #4766b2;
	background: #ffeb31;
	color: #2b52a0!important;
	font-size: 1.8rem;
	line-height: 60px
}
.btn--primary:active {
		top: 2px;
		-webkit-box-shadow: 0 2px 0 #4766b2;
		        box-shadow: 0 2px 0 #4766b2;
	}
.btn--secondary {
	width: 200px;
	height: 36px;
	border-radius: 18px;
	background: #628dd1;
	color: #fff!important;
	line-height: 36px;
}
/* Sizes */
.btn--small {
	width: auto;
	width: 260px
}
.btn--small > span {
	padding: .5em 1em;
	font-size: .875em;
}
/*------------------------------------*\
    Icons
\*------------------------------------*/
@font-face {
	font-family: 'icomoon';
	src:  url('fonts/icomoon.eot?eaqucy');
	src:  url('fonts/icomoon.eot?eaqucy#iefix') format('embedded-opentype'),
		url('fonts/icomoon.ttf?eaqucy') format('truetype'),
		url('fonts/icomoon.woff?eaqucy') format('woff'),
		url('fonts/icomoon.svg?eaqucy#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}
[class^="icon-"], [class*=" icon-"] {
	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	-webkit-font-feature-settings: normal;
	        font-feature-settings: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.icon-external:before { content: "\e90a";}
.icon-home:before { content: "\e909";}
.icon-pencil:before { content: "\e906";}
.icon-school:before { content: "\e907";}
.icon-book2:before { content: "\e908";}
.icon-arrow-b:before { content: "\e900"; }
.icon-arrow-l:before { content: "\e901"; }
.icon-arrow-r:before { content: "\e902"; }
.icon-arrow-t:before { content: "\e903"; }
.icon-book:before { content: "\e904"; }
.icon-search:before { content: "\e905"; }

/*============================================================================*\
   #Object - Project
\*============================================================================*/
/*------------------------------------*\
    レイアウトブロック
\*------------------------------------*/
.container {
	position: relative;
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
}
.container-narrow {
	position: relative;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}
.container:after,
.container-narrow:after {
	content: "";
	display: table;
	clear: both;
}
.section {
	padding: 40px 10px 80px;
}
.section.bg {
	background: #f4efdf;
}
.section.test-image {
	padding: 20px 10px;
	text-align: center;
}
.section .inner {
	padding: 10px;
	border-radius: 10px;
	background: #fff;
}
/*------------------------------------*\
    共通見出し
\*------------------------------------*/
.heading02,
.item-heading {
	position: relative;
	margin-bottom: 20px;
	padding: 6px 12px;
	border-radius: 5px;
	background: #d2ecff;
	color: #2b52a0;
	font-size: 1.8rem;
	font-weight: bold
}
.heading02:before, .item-heading:before {
	content: "";
	display: block;
	position: absolute;
	top: 100%;
	left: 20px;
	width: 0;
	height: 0;
	border: 12px solid transparent;
}
.heading02:before, .item-heading:before {
		border-top-color: #d2ecff;
	}
.heading03 {
	margin-bottom: 15px;
	padding-bottom: 2px;;
	color: #2b52a0;
	border-bottom: 3px solid #628dd1;
	font-weight: bold;
	font-size: 2rem;
}
.heading04 {
	position: relative;
	margin-top: 1em;
	margin-bottom: .5em;
	padding-left: 14px;
	color: #000;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4
}
.heading04:before {
	content: "";
	display: block;
	position: absolute;
	top: .2em;
	bottom: .2em;
	left: 0;
	width: 0;
	border-left: 5px solid #628dd1;
}
.heading05 {
	margin-top: 1em;
	margin-bottom: .5em;
	color: #2b52a0;
	font-size: 1.8rem;
	font-weight: bold;
}
/*------------------------------------*\
    リスト
\*------------------------------------*/
.list-circle {
	list-style: none;
	padding-left: 1em
}
.list-circle li {
		position: relative;
	}
.list-circle li:before {
	content: "";
	position: absolute;
	left: -1em;
	top: .4em;
	width: calc(1em - .4rem);
	height: calc(1em - .4rem);
	border-radius: 50%;
	background: #628dd1;
}
/*------------------------------------*\
    商品一覧
\*------------------------------------*/
.item-unit {
	margin-bottom: 20px;
}
.item-unit__fuyu {
	margin-bottom: 40px;
}
.item-unit__text {
	margin: 0 5px; 
}
.item-list {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding-top: 5px;
	padding-left: 0;
	margin: 0 -5px;
}
.item-list li {
	flex: 1 0 50%;
	max-width: 50%;
	margin-bottom: 25px;
	padding: 0 5px;
}
.item-list a {
	display: block;
	position: relative;
	height: 100%;
	border-radius: 10px;
	box-shadow: 0 3px 0 rgba(0,0,0,.1);
	background: #d2ecff;
}
.item-unit__shiage .item-list a {
	background: #ffeef4;
}
.item-list__image {
	padding: 20px 10px;
	border-radius: 10px 10px 0 0;
	background: #fff
}
.item-list__image img {
	width: 100%
}
a:hover .item-list__image img {
	opacity: .75
}
.item-list__title {
	display: block;
	padding: 10px;
	color: #212121;
	font-size: 1.4rem;
	line-height: 1.42857;
}
.item-list__icon {
	position: absolute;
	top: -15px;
	width: 100px;
}
@media (min-width: 30.0625em) {
	.item-list__image {
		padding: 25px 10px;
	}
	.item-list__icon {
		width: 120px;
	}
}
@media (min-width: 40.0625em) {
	.item-list li {
		flex: 1 0 33.333333%;
		max-width: 33.333333%;
	}
	.item-list__image {
		padding: 20px 10px;
	}
	.item-list__icon {
		top: -20px;
	}
}
@media (min-width: 60.0625em) {
	.item-unit {
		margin-bottom: 40px;
	}
	.item-unit__fuyu {
		margin-bottom: 0;
	}
	.item-unit {
		display: flex;
		flex-wrap: wrap;
		padding-top: 5px;
		margin-left: -20px;
		margin-right: -15px;
		align-items: stretch;
	}
	.item-unit__fuyu, .item-unit__shiage {
		flex-basis: 50%;
		max-width: 50%;
		padding: 0 15px;
		display: flex;
		flex-direction: column;
	}
	.item-unit__fuyu {
		padding-left: 20px;
	}
	.item-unit__shiage {
		border-left: 5px dotted #ccc;
	}
	.item-list {
		height: 100%;
	}
	.item-list__icon {
		width: 100px;
	}
}

.index-banner {
	list-style: none;
	padding-left: 0
}
.index-banner li {
	float: left;
	width: 33.3333%;
	padding: 0 10px;
	line-height: 1.3;
	text-align: center;
}
.index-banner img {
	margin-bottom: 5px;
}
.top-hintokun {
	background-color: #fff;
	padding: 30px;
}
.top-hintokun a {
	text-decoration: underline;
}
.top-hintokun__img {
	margin-bottom: 20px;
	text-align: center;
}
@media (min-width: 60.0625em) {
	.top-hintokun__wrapper {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -15px
	}
	.top-hintokun__img {
		flex-basis: 35%;
		max-width: 35%;
		margin-bottom: 0;
		padding: 0 15px;
	}
	.top-hintokun__text {
		flex-basis: 65%;
		max-width: 65%;
		padding: 0 15px;
	}
}

/*------------------------------------*\
    商品詳細ページ
\*------------------------------------*/
.item__header,
.item__data {
	padding: 20px 10px;
}
.item__image {
	padding: 20px 10px 10px;
	text-align: center;
}
/* 商品基本情報 */
.item__header {
	position: relative;
	z-index: 0
}
.item__header:before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	z-index: -1;
	width: 100vw;
	margin-left: -50vw;
	background: #d2ecff;
}
.item-category1 {
	margin-bottom: 8px
}
.item-category1 .item-label {
	display: inline-block;
	min-width: 120px;
	padding: 4px 15px;
	background: #628dd1;
	color: #fff;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}
.item-category2 {
	margin-bottom: 15px;
	font-weight: bold
}
.item-category2 dt {
	display: inline-block;
	color: #2b52a0;
}
.item-category2 dd {
	display: inline-block;
	color: #000;
}
.item-category2 dd + dt {
	margin-left: 1.5em;
}
.item-title {
	color: #000;
	font-size: 2.5rem;
	font-weight: bold;
	letter-spacing: .025em;
	line-height: 1.3;
}
/* 自由編集エリア */
.item__data .heading03:not(:first-of-type) {
	margin-top: 20px;
}
.item-body {
	padding-bottom: 20px
}
.item-body :first-child {
	margin-top: 0;
}
.item-body h3 {
	position: relative;
	margin-top: 1em;
	margin-bottom: .5em;
	padding-left: 14px;
	color: #000;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4
}
.item-body h3:before {
	content: "";
	display: block;
	position: absolute;
	top: .2em;
	bottom: .2em;
	left: 0;
	width: 0;
	border-left: 5px solid #628dd1;
}
.item-body h4 {
	margin-top: 1em;
	margin-bottom: .5em;
	color: #2b52a0;
	font-size: 1.8rem;
	font-weight: bold;
}
.item-body p,
.item-body ol,
.item-body ul {
	margin-bottom: 1em;
}
.item-body li {
	margin-bottom: .2em;
}
.item-body table {
	width: 100%;
	background: #f0f0f0;
	line-height: 1.333333;
}
.item-body th,
.item-body td {
	padding: .5em;
	border-bottom: 2px solid #fff;
}
.item-body th {
	width: 20%;
	min-width: 6em;
	background: #d2ecff;
}
.item-body ul {
	list-style: none;
	padding-left: 1em;
}
.item-body li {
	position: relative;
}
.item-body li:before {
	content: "";
	position: absolute;
	left: -1em;
	top: .4em;
	width: calc(1em - .4rem);
	height: calc(1em - .4rem);
	border-radius: 50%;
	background: #628dd1;
}
.item-osusume2 dt,.item-osusume2 dd{display: block !important;}
.item-category2 dd + dt{margin-left: 0;}

.category-mainimg{
	float: none;
	width: 100%;
	max-width: 280px;
	margin: 0 auto;
	padding-bottom: 20px;
}
.category-maintext{
	float: none;
	width: 100%;
}
.category-mainimg-l{
	float: none;
	width: 100%;
	max-width: 400px;
	margin: 0 auto;
	padding-bottom: 20px;
}
.category-pointimg{
	float: none;
	width: 100%;
	max-width: 100px;
	margin: 0 auto;
}
.category-pointtext{
	float: none;
	width: 100%;
}
.category-pointbox{
	border: 2px solid #0189D8;
	background-color: #FFF8E6;
	padding: 10px;
	border-radius:10px;
}
.category-appendixtext{
	float: none;
	width: 100%;
}
.category-appendiximg{
	float: none;
	width: 100%;
	margin: 0 auto;
}
.category-appendiximg2{
	margin: 30px 0;
	text-align: center;
}
.category-appendiximg2 img{
	width: 45%;
	max-width: 200px;
	margin: 0 1%;
}
.category-appendiximg3{
	margin: 30px auto;
	text-align: center;
	max-width: 550px;
}
.category-appendiximg3-p{
	width: 48%;
	margin: 0 1%;
	float: left;
}
/* pickup */
.pickup-box {
	padding: 3%;
	border-radius: 10px;
	background: #ffea97;
}
/* 注釈ボックス */
.note {
	margin: 40px 0;
	padding: 3%;
	border-radius: 10px;
	border: 2px solid #fdef81;
	background: #fff7a9;
	color: #e81b00;
	font-size: calc(1em - .1rem);
}

/*============================================================================*\
    #Object -- Utilities（原則編集禁止）
\*============================================================================*/
/* Color */
.color-skyblue { color: #0099d9;}
/* Display */
.d-none { display: none; }
.d-block { display: block; }
.d-inline { display: inline; }
.d-inline-block { display: inline-block; }
/* Only for screen readers */
.sr-only {
	overflow: hidden;
	position: absolute !important;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	width: 1px;
}
.sr-only:focus {
	display: block;
	top: 0;
	left: 0;
	clip: auto !important;
	position: relative;
	z-index: 100000;
	width: auto;
	height: auto;
	padding: 10px 20px;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	background-color: #f1f1f1;
	color: #21759b;
	font-size: 1.4rem;
	line-height: normal;
	text-decoration: none;
}
/* Clearing */
.clr {
	clear: both;
}
.clearfix:after {
	content: "";
	display: table;
	clear: both;
}
/*  Float */
.float-left { float: left; }
.float-right { float: right; }
.float-none { float: none; }
/* Text Align & Font style */
.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }
.text-justify { text-align: justify; text-justify: inter-ideograph; }
/* widths */
.w-100 { width: 100%; }
.w-auto { width: auto; }
/* Margins */
.m-0 { margin: 0 !important;}
.mt-0,
.my-0 { margin-top: 0 !important;}
.mb-0,
.my-0 { margin-bottom: 0 !important;}
.mr-0,
.mx-0 { margin-right: 0 !important;}
.ml-0,
.mx-0 { margin-left: 0 !important;}
.m-1 { margin: calc(30px * .25) !important;}
.mt-1,
.my-1 { margin-top: calc(30px * .25) !important;}
.mr-1,
.mx-1 { margin-right: calc(30px * .25) !important;}
.mb-1,
.my-1 { margin-bottom: calc(30px * .25) !important;}
.ml-1,
.mx-1 { margin-left: calc(30px * .25) !important;}
.m-2 { margin: calc(30px * .5) !important;}
.mt-2,
.my-2 { margin-top: calc(30px * .5) !important;}
.mr-2,
.mx-2 { margin-right: calc(30px * .5) !important;}
.mb-2,
.my-2 { margin-bottom: calc(30px * .5) !important;}
.ml-2,
.mx-2 { margin-left: calc(30px * .5) !important;}
.m-3 { margin: 30px !important;}
.mt-3,
.my-3 { margin-top: 30px !important;}
.mr-3,
.mx-3 { margin-right: 30px !important;}
.mb-3,
.my-3 { margin-bottom: 30px !important;}
.ml-3,
.mx-3 { margin-left: 30px !important;}
.m-4 { margin: calc(30px * 1.5) !important;}
.mt-4,
.my-4 { margin-top: calc(30px * 1.5) !important;}
.mr-4,
.mx-4 { margin-right: calc(30px * 1.5) !important;}
.mb-4,
.my-4 { margin-bottom: calc(30px * 1.5) !important;}
.ml-4,
.mx-4 { margin-left: calc(30px * 1.5) !important;}
.m-5 { margin: calc(30px * 2) !important;}
.mt-5,
.my-5 { margin-top: calc(30px * 2) !important;}
.mr-5,
.mx-5 { margin-right: calc(30px * 2) !important;}
.mb-5,
.my-5 { margin-bottom: calc(30px * 2) !important;}
.ml-5,
.mx-5 { margin-left: calc(30px * 2) !important;}
.mr-auto,
.mx-auto { margin-right: auto !important;}
.ml-auto,
.mx-auto { margin-left: auto !important;}
/* Paddings */
.p-0 { padding-top: 0 !important;}
.pt-0,
.py-0 { padding-top: 0 !important;}
.pb-0,
.py-0 { padding-bottom: 0 !important;}
.pr-0,
.px-0 { padding-right: 0 !important;}
.pl-0,
.px-0 { padding-left: 0 !important;}
.p-1 { padding: calc(30px * .25) !important;}
.pt-1,
.py-1 { padding-top: calc(30px * .25) !important;}
.pr-1,
.px-1 { padding-right: calc(30px * .25) !important;}
.pb-1,
.py-1 { padding-bottom: calc(30px * .25) !important;}
.pl-1,
.px-1 { padding-left: calc(30px * .25) !important;}
.p-2 { padding: calc(30px * .5) !important;}
.pt-2,
.py-2 { padding-top: calc(30px * .5) !important;}
.pr-2,
.px-2 { padding-right: calc(30px * .5) !important;}
.pb-2,
.py-2 { padding-bottom: calc(30px * .5) !important;}
.pl-2,
.px-2 { padding-left: calc(30px * .5) !important;}
.p-3 { padding: 30px !important;}
.pt-3,
.py-3 { padding-top: 30px !important;}
.pr-3,
.px-3 { padding-right: 30px !important;}
.pb-3,
.py-3 { padding-bottom: 30px !important;}
.pl-3,
.px-3 { padding-left: 30px !important;}
.p-4 { padding: calc(30px * 1.5) !important;}
.pt-4,
.py-4 { padding-top: calc(30px * 1.5) !important;}
.pr-4,
.px-4 { padding-right: calc(30px * 1.5) !important;}
.pb-4,
.py-4 { padding-bottom: calc(30px * 1.5) !important;}
.pl-4,
.px-4 { padding-left: calc(30px * 1.5) !important;}
.p-5 { padding: calc(30px * 2) !important;}
.pt-5,
.py-5 { padding-top: calc(30px * 2) !important;}
.pr-5,
.px-5 { padding-right: calc(30px * 2) !important;}
.pb-5,
.py-5 { padding-bottom: calc(30px * 2) !important;}
.pl-5,
.px-5 { padding-left: calc(30px * 2) !important;}
/* Text Styles */
.font-bold { font-weight: bold; }
.font-normal { font-weight: 400; }
.font-thin { font-weight: 300; }
.font-italic { font-style: italic; }
.font-size-l {
	font-size: 1.5em;
	letter-spacing: 0;
	line-height: 1.41;
}
.font-size-m { font-size: 1.3em; }
.font-size-s { font-size: .875em; }
@media (min-width: 30.0625em) {
	.category-pointimg{
		float: left;
		width: 20%;
	}
	.category-pointtext{
		float: left;
		width: 80%;
		padding-left: 20px;
	}
	.d-sm-none { display: none !important; }
	.d-sm-block { display: block !important; }
	.d-sm-inline { display: inline !important; }
	.d-sm-inline-block { display: inline-block !important; }
}
@media (min-width: 40.0625em) {
	body {
		font-size: 1.6em;
		padding-top: 80px;
	}
	.header {
		height: 80px;
	}
	.header__logo {
		left: 10px;
		top: 10px
	}
	.header__logo img {
		width: 60px;
	}
	.footer__nav {
		padding: 40px 0 30px;
		font-size: 1.4rem;
	}
	.page-title {
		height: 130px;
		background-size: 128px 120px;
		font-size: 3rem;
	}
	.breadcrumbs {
		padding: 5px 15px;
		font-size: 1.2rem;
	}
	.section {
		padding: 60px 20px 100px;
	}
	.section.test-image {
		padding: 30px 20px;
	}
	.item__header,
	.item__image {
		padding: 30px 20px 20px;
	}
	.item__data {
		padding: 20px 20px 30px;
	}
	.item-title {
		font-size: 3.2rem;
	}
	.item-body th,
	.item-body td {
		padding: .6em 1em;
	}
	.category-mainimg{
		float: left;
		width: 25%;
	}
	.category-maintext{
		float: left;
		width: 75%;
		padding-left: 20px;
	}
	.category-mainimg-l{
		float: left;
		width: 35%;
	}
	.category-maintext-l{
		float: left;
		width: 65%;
		padding-left: 20px;
	}
	.category-maintext{
		float: left;
		width: 75%;
		padding-left: 20px;
	}
	.category-appendixtext{
		float: left;
		width: 40%;
	}
	.category-appendiximg{
		float: left;
		width: 60%;
		padding-left: 20px;
	}
	.d-md-none { display: none !important; }
	.d-md-block { display: block !important; }
	.d-md-inline { display: inline !important; }
	.d-md-inline-block { display: inline-block !important; }
}
@media (min-width: 60.0625em) {
	.d-lg-none { display: none !important; }
	.d-lg-block { display: block !important; }
	.d-lg-inline { display: inline !important; }
	.d-lg-inline-block { display: inline-block !important; }
}
/*四角*/
.square{margin:1em 0;padding:0.1em 0.35em;border:solid 5px;}
.square.blue{border-color:#4f79c1;}

/*余白調整*/
.mg0{margin:0!important;}
.mg10{margin: 10px;}
.mg20{margin: 20px;}
.mt0{margin-top: 0!important;}
.mt10{margin-top:10px;}
.mt15{margin-top:15px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}
.mt50{margin-top:50px;}
.mt60{margin-top:60px;}
.mt70{margin-top:70px;}
.mt80{margin-top:80px;}
.mt90{margin-top:90px;}
.mt100{margin-top:100px;}
.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px!important;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mb60{margin-bottom:60px;}
.mb70{margin-bottom:70px;}
.mb80{margin-bottom:80px;}
.mb90{margin-bottom:90px;}
.mb100{margin-bottom:100px;}
.ml5{margin-left:5px;}
.ml10{margin-left:10px;}
.ml15{margin-left:15px;}
.ml20{margin-left:20px;}
.mr5{margin-right:5px;}
.mr10{margin-right:10px;}
.mr15{margin-right:15px;}
.mr20{margin-right:20px;}

.pad0{padding:0;}
.pad5{padding:5px;}
.pad10{padding:10px;}
.pad15{padding:15px;}
.pad20{padding:20px;}
.pt5{padding-top: 5px;}
.pt10{padding-top: 10px;}
.pt20{padding-top: 20px;}
.pb10{padding-bottom: 10px;}
.pb20{padding-bottom: 20px;}
.pl0{padding-left:0;}
.pl5{padding-left: 5px;}
.pl10{padding-left:10px;}
.pl15{padding-left:15px;}
.pl20{padding-left:20px;}
.pl30{padding-left:30px;}
.pl35{padding-left:35px;}
.pl40{padding-left:40px;}
.pr0{padding-right:0;}
.pr5{padding-right: 5px;}
.pr10{padding-right:10px;}
.pr15{padding-right:15px;}
.pr20{padding-right:20px;}
.pr30{padding-right:30px;}
.pr40{padding-right:40px;}

/*マーカー風*/
.marker-yellow{background: linear-gradient(transparent 0, #fff100 0);}
.marker-yellow_half{background: linear-gradient(transparent 50%, #fff100 0);}

/*------------------------------------*\
    img(文字)切り替え
\*------------------------------------*/
/*パソコンで見たとき*/
.img-pc {display: block !important;}
.img-sp {display: none !important;}
/*スマートフォンで見たとき*/
@media only screen and (max-width:767px){
.img-pc {display: none !important;}
.img-sp { display: block !important;}
}
