@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	word-break: break-word;
}
body {
	line-height: 1;
	color: #4c4c4c;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
blockquote, q {
	quotes: none;
}
blockquote::before, blockquote::after, q::before, q::after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
ins {
	background-color: #ff9;
	color: #333;
	text-decoration: none;
}
mark {
	background-color: #ff9;
	color: #333;
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th {
	text-align: left;
}
object, embed {
	vertical-align: middle;
}
legend {
	display: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
img, abbr, acronym, fieldset {
	border: 0 none;
}
img {
	vertical-align: middle;
}
ul li {
	list-style-type: none;
}
/*----------------------------------------------------
		共通
----------------------------------------------------*/
/* スクロールバーの有無によるズレ対策 */
html {
	font-size: 62.5%;
}
input, textarea {
	/*
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	*/
}
/* for IE6 */
* html body {
	font-family: 'Meiryo', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'sans-serif';
}
* html input, * html textarea {
	font-family: 'Meiryo', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'sans-serif'
}
/* リンク
----------------------------------------------------*/
a {
	color: #4c4c4c;
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
}
/* 汎用
----------------------------------------------------*/
/* clear clerfix */
.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}
.content::after, .clearfix::after {
	content: "";
	display: block;
	clear: both;
}
.content, .clearfix {
	zoom: 1;
	/* for IE5.5 - IE7 */
}
/*box-sizing */
*, *::before, *::after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
/*----------------------------------------------------
		各ページスタイル
----------------------------------------------------*/
/*----------------------------------------------------
		PCサイトcss
----------------------------------------------------*/
body {
    font-family: 'Meiryo', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'sans-serif';
	font-size: 1.4rem;
	min-width: 1000px;
	line-height: 1.5;
	width: 100%;
	overflow-x: hidden;
	background: #fff;
}
#contents{
	margin: 80px auto 130px;
	max-width: 1000px;
	width: 1000px;
	counter-reset: num;
}
.contents_top {
	margin: 0 auto;
	padding-top: 35px;
}
.contents-left, .contents-right {
	max-width: 720px;
	width: 720px;
	padding: 0;
}
.contents-left p,.contents-right p {
	font-size: 1.4rem;
	line-height: 1.7;
	margin: 0 0 15px;
}
/* common
----------------------------------------------------*/
.sp, .sp_br, .forSP {
	display: none !important;
}
h1, h2, h3, h4, h5 {
	line-height: 1.4;
	margin: 30px 0 15px;
	font-weight: bold;
	font-family: 'Meiryo', 'メイリオ', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'sans-serif';
	color: #535353;
}
span.txt_bold {
	font-weight: bold;
	font-size: 1.6rem;
	color: #1d3d64;
}
span.txt_marker {
	font-weight: bold;
	font-size: 1.6rem;
	color: #ff9900;
	position: relative;
	background: linear-gradient(transparent 40%, #ffe084 0%) no-repeat top 5px left;
	padding: 0 0 0.3rem 0;
}
.caption,.viral-quote {
    margin: 10px 0;
    overflow: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #C0C0C0 #eee;
}
.viral-quote .caption {
	text-align: left;
}
/* for chrome, safari */
.caption::-webkit-scrollbar,.viral-quote::-webkit-scrollbar {
    height: 5px;
}
.caption::-webkit-scrollbar-thumb,.viral-quote::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #C0C0C0;
}
.caption::-webkit-scrollbar-track,.viral-quote::-webkit-scrollbar-track {
    border-radius: 2px;
    background: #eee;
}

/* パンくず
----------------------------------------------------*/
#breadcrumb {
	margin: 30px auto;
	font-size: 12px;
	width: 1000px;
}
#breadcrumb a {
	text-decoration: underline;
}
#breadcrumb a:hover {
	text-decoration: none;
}
/* header
----------------------------------------------------*/
.l-header-area {
	width: 100%;
	min-width: 1000px;
	margin: 0;
	padding: 0;
	position: relative;
	color: #4c4c4c;
}
.l-header {
	margin: 0 auto;
	position: relative;
	padding: 0;
	background: #fff;
}
.l-header__sitename {
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	width: 800px;
	color: #0e3d73;
	margin: 0 auto 20px;
	background: url(img/top_icon.png) no-repeat left center;
	padding: 30px 0 30px 70px;
}
.l-header__sitename a {
	color: #0e3d73;
	text-decoration: none;
}
.l-header__sitename a:hover {
	opacity: 0.7;
}
.header_nav {
	display: table;
	width: 100%;
}
/* g_nav_hamburger
----------------------------------------------------*/
.l-gnavi-btn {
	display: none;
}
.l-gnavi-area {
	width: 400px;
	height: 100vh;
	padding: 60px 0 0;
	position: fixed;
	background: #FFf;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
	opacity: 0;
	top: 0;
	left: 0;
	z-index: 300;
	overflow-x: hidden;
	overflow-y: scroll;
}
.l-gnavi-area--slide-right {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}
.l-gnavi-area--slide-left {
	left: auto;
	right: 0;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}
.l-gnavi-area--slide-down {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}
.l-gnavi-area--slide-up {
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}
.l-gnavi-list {
	position: relative;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
.l-gnavi-list__item {
	padding: 5px 0;
}
.l-gnavi-list__link {
	width: 90%;
	margin: 0 auto;
	padding: 15px 45px 15px 10px;
	display: block;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	background: #0496dd;
	position: relative;
}
.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link::after {
	content: "";
	right: 18px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	vertical-align: middle;
}

.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link:hover::after {
	content: "";
	right: 18px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	vertical-align: middle;
}
.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link.l-gnavi-list__link--menu::after {
	content: "・・・";
	position: absolute;
	color: #fff;
	right: 5%;
	top: 17%;
	font-size: 2rem;
	letter-spacing: -10px;
	border: 0;
	-webkit-transform: none;
	transform: none;
	bottom: auto;
	width: auto;
	height: auto;
}

.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__link--menu {
	position: relative;
}
.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__link--menu::after {
	content: "・・・";
	position: absolute;
	color: #fff;
	right: 5%;
	top: 17%;
	font-size: 2rem;
	letter-spacing: -10px;
}

.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link--back {
	background: #0496dd;
	padding: 10px 10px 10px 45px;
	position: relative;
}
.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link--back::before {
	content: "";
	left: 18px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	vertical-align: middle;
}
.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link--back::after {
	content: "";
	border: 0;
}
.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link--back:hover {
	background: #666;
}
.l-gnavi-list .l-gnavi-list__item .l-gnavi-list__sub .l-gnavi-list__item .l-gnavi-list__link--back:hover::before {
	content: "";
	left: 18px;
	width: 9px;
	height: 9px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	vertical-align: middle;
}
.l-gnavi-list__sub {
	width: 100%;
	display: none;
	position: absolute;
	top: 0;
	left: 100%;
	padding-bottom: 60px;
}
.is-navi-open .l-gnavi-area {
	opacity: 1;
}
.is-navi-open .l-gnavi-area--slide-right {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.is-navi-open .l-gnavi-area--slide-left {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}
.is-navi-open .l-gnavi-area--slide-down {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
.is-navi-open .l-gnavi-area--slide-up {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}
.is-navi-open .is-gnavi-cover {
	height: 100vh;
	overflow-y: scroll;
}
.is-navi-open .is-gnavi-cover .l-gnavi-area {
	position: static;
}
/* pc_g_nav
----------------------------------------------------*/
.l-gnavi-area02 {
	margin: 0 auto;
	background: #e4f5fc;
	padding: 20px 0;
	width: 100%;
}
.l-gnavi-area02.is-fixed {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	padding: 0.5rem 0;
	background: #f4f4f4;
}
.l-gnavi-area02 .l-gnavi-list02 {
	max-width: 1000px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	background: #fff;
	border-radius: 20px;
}
.l-gnavi-area02 .l-gnavi-list02__item {
	width: calc(100% / 5);
	text-align: center;
	position: relative;
}
.l-gnavi-area02 .l-gnavi-list02__item::after {
	content: "";
	position: absolute;
	top: 15%;
	right: 0;
	width: 1px;
	height: 70%;
	border-right: 4px dotted #3cc0d0;
}
.l-gnavi-area02 .l-gnavi-list02__item:first-child {
	position: relative;
}

.l-gnavi-area02 .l-gnavi-list02__item:last-child::after {
	content: none;
}

.l-gnavi-area02 .l-gnavi-list02__item__link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 30px 40px;
	font-size: 1.5rem;
	height: 100%;
	font-weight: bold;
	color: #2c8e9e;
	text-decoration: none;
}
.l-gnavi-area02 .l-gnavi-list02__item__link:hover {
	color: #ef8b1e;
}
.l-gnavi-area02 .l-gnavi-list02--01 .l-gnavi-list02__item {
	width: calc(100% / 1);
}
.l-gnavi-area02 .l-gnavi-list02--02 .l-gnavi-list02__item {
	width: calc(100% / 2);
}
.l-gnavi-area02 .l-gnavi-list02--03 .l-gnavi-list02__item {
	width: calc(100% / 3);
}
.l-gnavi-area02 .l-gnavi-list02--04 .l-gnavi-list02__item {
	width: calc(100% / 4);
}
.l-gnavi-area02 .l-gnavi-list02--05 .l-gnavi-list02__item {
	width: calc(100% / 5);
}
.l-gnavi-area02 .l-gnavi-list02--06 .l-gnavi-list02__item {
	width: calc(100% / 6);
}
.l-gnavi-area02 .l-gnavi-list02--07 .l-gnavi-list02__item {
	width: calc(100% / 7);
}
.l-gnavi-area02 .l-gnavi-list02--08 .l-gnavi-list02__item {
	width: calc(100% / 8);
}
/* side
----------------------------------------------------*/
.side-banner-area {
	max-width: 240px;
	margin-bottom: 200px;
	width: 240px;
}
.side-banner-box {
	margin-bottom: 30px;
}
.side-banner-list__sttl {
	width: 100%;
	margin: 0 0 1px;
	font-weight: bold;
	font-size: 16px;
	position: relative;
}
.side-banner-list__sttl a {
	width: 100%;
	padding: 15px 20px;
	color: #594429;
	font-weight: bold;
	border-bottom: 5px solid #ccc;
	display: block;
	text-decoration: none;
}
.side-banner-box ul {
	padding: 0 10px;
}
.side-banner-box ul ul {
	padding: 0px;
}
.side-banner-box ul li > a {
	display: block;
	padding: 15px 30px 15px 10px;
	text-decoration: none;
	border-bottom: dashed 1px #b8bebe;
}
.side-banner-box ul li ul {
	width: 100%;
}
.side-banner-box ul .sub_cat a {
	display: block;
}
.side-banner-list .side-banner-list__sttl a:hover {
	opacity: 1;
	background-color: #087fbd;
}
.sidebanner-upper {
}
.sidebanner-upper__sttl {
	font-size: 18px;
	font-weight: bold;
	padding: 40px 0 10px;
	color: #333;
	position: relative;
}
.sidebanner-upper__sttl::before {
    content: '';
    background: url(img/check_side.png)no-repeat;
    position: absolute;
    background-size: 52px;
    width: 52px;
    height: 60px;
    top: -24px;
    left: -23px;
}
.sidebanner-upper__sttl::after {
	content: '';
	background: url(img/check_side_title.png)no-repeat;
	position: absolute;
	background-size: 170px;
	width: 90%;
	height: 10px;
	top: 10px;
	left: 14px;
}
.sidebanner-upper__sttl a {
	display: block;
	color: #745749;
	text-decoration: none;
}
.sidebanner-upper__sttl a:hover {
	color: #969696;
}
.sidebanner-upper__img {
	margin: 0 auto 10px;
	width: 100%;
}
.sidebanner-upper__img img {
	display: block;
	margin: 10px auto;
	max-width: 100%;
	height: auto;
}
.bt-more a {
	color: #fff;
	font-weight: bold;
	border-radius: 20px;
	background: url(img/check_ar2.png) no-repeat right 18px center;
	background-color: #ef8b1e;
	font-size: 1.5rem;
	display: block;
	margin: 15px auto 0;
	padding: 10px 30px 10px 20px;
	text-align: center;
	text-decoration: none;
	width: 100%;
	line-height: 1.5;
	position: relative;
}
.bt-more a:hover {
    background-color: #9ed8f6;
}
.side-banner-area {
	margin-bottom: 30px;
}
.side-banner-area .sidebanner-upper {
	margin: 0 0 3rem 0;
	z-index: 2;
	background: #fff;
	border: 3px solid #ace7ee;
	border-radius: 10px;
	padding: 23px 23px 30px 23px;
	position: relative;
}
.sidebanner-upper__txt {
	position: relative;
    z-index: 2;
}
.side-banner-area .sidebanner-upper__sttl a {
	color: #333;
}
.side-banner-area .sidebanner-upper__sttl a:hover {
	opacity: 0.6;
}
.side-banner-area .sidebanner-upper__img {
	margin: 0 auto 20px;
}
.side-banner-area p {
	color: #040404;
	line-height: 1.5;
}

.side-banner-area .sidebanner-upper__catch {
        margin: 1rem 0 2rem;
        padding: 0 0 1rem;
        font-size: 1.6rem;
        text-align: left;
        font-weight: bold;
        color: #333;
        border-bottom: 3px dotted #28bacb;
}
    .side-banner-area .sidebanner-upper__info {
        text-align: center;
        font-size: 10px;
        color: #888888;
        line-height: 1.4;
        word-wrap: break-word;
        padding: .5rem 0;
    }
.side-banner-area .side-banner-box {
	padding: 0;
}
.side-banner-area .side-banner-box .side-banner-list__sttl {
}
.side-banner-area .side-banner-box .side-banner-list__sttl:hover {
	opacity: 0.6;
}
.side-banner-area .side-banner-box .side-banner-list__sttl a {
	color: #fff;
	padding: 15px 40px 15px 25px;
	line-height: 1.5;
	border-bottom: 0;
	background: url(img/side_ar.png) no-repeat right 10px center;
	background-color: #0496dd;
}
.side-banner-area .side-banner-box {}
.side-banner-area .side-banner-box ul {
	padding: 0;
}
.side-banner-area .side-banner-box ul li::hover {
	background-color: #e5e5e5;
}
.side-banner-area .side-banner-box ul li a {
	border-bottom: dotted 4px #ace7ee;
	padding: 15px 10px 15px 40px;
	position: relative;
	background: url(img/saito_ar.png) no-repeat left 10px center;
	background-size: 16px auto;
}
.side-banner-area .side-banner-box ul li:last-child a {
}
.side-banner-area .side-banner-box ul li a:hover,
.side-banner-area .side-banner-box ul li ul li.sub_cat a:hover {
	background-color: #e5e5e5;
}
.side-banner-area .side-banner-box ul li ul li.sub_cat {}
.side-banner-area .side-banner-box ul li ul li.sub_cat a {
	color: #333;
	position: relative;
	padding: 1.2rem 1rem 1.2rem 3rem;
	font-size: 1.5rem;
	border-bottom: dotted 4px #ace7ee;
	background: none;
}
.side-banner-area .side-banner-box ul li ul li.sub_cat a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 16px;
	right: auto;
	width: 8px;
	height: 8px;
	border-top: solid 2px #0496dd;
	border-right: solid 2px #0496dd;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
	background: none !important;
	bottom: 0;
	margin: auto;
}
.side-banner-area .side-banner-box ul li ul li.sub_cat:last-child a {
}
/* footer
----------------------------------------------------*/
.l-footer-area {
	width: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	background: #fff;
	position: relative;
	border-top: 4px solid #0496dd;
}

.l-footer-area__inner {
	margin: 0 auto;
	padding: 0 2rem;
	max-width: 1000px;
}
.l-footer-disclaimer {
	width: 70%;
	margin: 0 auto 30px;
	padding: 1.5rem;
	background: #f4f4f4;
	font-size: 1.2rem;
	text-align: left;
	text-align: center;
}
.l-footer-disclaimer__title {
	margin-bottom: 1rem;
}
.l-footer-list {
	margin: 0 0 20px 0;
}
.l-footer-list__item {
	display: inline-block;
	padding: 0 0 0 20px;
}
.l-footer-area .l-footer-area__inner .menseki {
	width: 700px;
	margin: 0 auto 3rem;
	padding: 2rem;
	line-height: 1.5;
	font-size: 1.4rem;
	text-align: left;
	color: #4d4d4d;
}
.l-footer-area .l-footer-area__inner .ucp {
	margin: 0 auto 3rem;
	line-height: 1.5;
	font-size: 1.4rem;
	color: #4d4d4d;
}
.l-footer-bottom {
	margin: 0 auto;
	padding: 0 20px;
	background: #8e7456;
	font-size: 1.2rem;
	text-align: center;
	color: #ffffff;
}
.l-footer-bottom__inner {
	width: 1100px;
	display: table;
	margin: 0 auto;
}
.l-footer-bottom__sitemap {
	padding: 10px 0;
	display: table-cell;
	text-align: right;
}
.l-footer-bottom__sitemap__link {
	color: #ffffff;
	background: url(img/arrow01_white.svg) no-repeat right center;
	background-size: 6px 12px;
	padding: 0 20px 0 0;
	text-decoration: none;
}
.l-footer-bottom__sitemap__link:hover {
	color: #ffffff;
	text-decoration: underline;
}
.l-footer-copy-wrapper {
	background: #0496dd;
	padding: 5px 0;
}
.l-footer-copy {
	max-width: 1000px;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.2rem;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	color: #fff;
}
.l-footer-copy .sitemap {
	text-align: right;
}
.l-footer-copy .sitemap a {
	position: relative;
	padding: 0 1rem 0 2.5rem;
	background: url(img/check_ar.png) no-repeat left center;
}
.l-footer-copy a {
	color: #fff;
	text-decoration: none;
}
.l-footer-copy a:hover {
	text-decoration: none;
	opacity: 0.6;
}
.l-footer-menu-wrapper {
	margin: 0 auto;
	padding: 10px 0 50px;
	position: relative;
}
.l-footer-menu {
	margin: 40px 0 0 0;
}
.l-footer-menu__title {
}
.l-footer-menu__list {
	display: flex;
	flex-flow: row wrap;
	margin: 1rem 0 0 1rem;
}
.l-footer-menu__title__link {
	display: block;
	text-decoration: none;
	color: #0496dd;
	font-weight: bold;
	padding: 15px 0 5px 5px;
	font-size: 1.9rem;
	text-align: left;
	position: relative;
	border-bottom: 1px solid #0496dd;
}
.l-footer-menu__title__link:hover {
   color: #ef8b1e;
}

.l-footer-menu__list__item {
	width: calc(100% / 4);
	margin: 0 0 2rem 0;
}
.l-footer-menu__list__item:first-child {
	display: none;
}
.l-footer-menu__list__link {
	padding: 5px 10px 5px 15px;
	margin: 0 0 0.5rem 0;
	display: block;
	text-align: left;
	font-size: 1.4rem;
	text-decoration: none;
	position: relative;
	padding: 10px 10px 10px 30px;
	background: url(img/footer-ar.png) no-repeat left top 10px;
	color: #535353;
}

.l-footer-menu__list__link:hover {
	color: #ef8b1e;
	background: url(img/hover/footer_ar_hover.png) no-repeat left top 10px;
}




.l-footer-submenu__list {}
.l-footer-submenu__list__item {
	margin: 0.5rem 0 0 0;
}
.l-footer-submenu__list__link {
	padding: 5px 15px 5px 15px;
	display: block;
	text-align: left;
	font-size: 1.3rem;
	text-decoration: none;
	text-indent: -1rem;
	color: #535353;
}
.l-footer-submenu__list__link::before {
	content: '└';
	padding-right: .8rem;
	color: #0496dd;
}
.l-footer-submenu__list__link:hover {
	text-decoration: underline;
	color: #ef8b1e;
}
.copy {
	background: #ccc;
	color: #fff;
	font-size: 12px;
	text-align: center;
	padding: 5px 0;
	margin: 0;
	width: 100%;
}
.copy a {
	color: #fff;
	display: inline-block;
	text-decoration: none;
}
.copy a:hover {
	text-decoration: underline;
}
.notes {
	font-size: 12px;
	width: 900px;
	margin: 50px auto 50px;
	padding: 15px;
	line-height: 145%;
	border: 1px solid #ccc;
	background-color: rgba(255, 255, 255, 0.5);
}
.l-pagetop {
	position: fixed;
	bottom: 50px;
	right: 20px;
	z-index: 500;
}
.l-pagetop__link {
	width: 100px;
	height: 100px;
	display: block;
	text-align: center;
	position: relative;
	background: url(img/pagetop.png) no-repeat center;
	z-index: 100;
}
.l-pagetop__link:hover {
	position: relative;
	opacity: 1;
}
.l-pagetop__link:hover::after {
	content: "";
	position: absolute;
	background: url('img/pagetop_hover.png') no-repeat;
	width: 80px;
	height: 110px;
	top: 0%;
	left: 0%;
	z-index: 200;
}

.l-pagetop__text {
	display: none;
}
.copy {
	background: #ccc;
	color: #fff;
	font-size: 12px;
	text-align: center;
	padding: 5px 0;
	margin: 0;
	width: 100%;
}
.copy a {
	color: #fff;
	display: inline-block;
	text-decoration: none;
}
.copy a:hover {
	text-decoration: underline;
}
.notes {
	font-size: 12px;
	width: 900px;
	margin: 50px auto 50px;
	padding: 15px;
	line-height: 145%;
	border: 1px solid #ccc;
	background-color: rgba(255, 255, 255, 0.5);
}
.pagetop {
	background-color: #f0e7de;
	border-radius: 50%;
	box-shadow: 0px 0px 20px -5px rgba(0, 0, 0, 0.8);
	color: #583626;
	display: block !important;
	font-weight: bold;
	line-height: 1.4;
	padding-top: 34px;
	position: absolute;
	top: -145px;
	right: 0;
	text-align: center;
	width: 90px;
	height: 90px;
	text-decoration: none;
}
.pagetop::before {
	background: url(img/parts/sp/toppage_icon.png) no-repeat;
	background-size: 22px;
	content: '';
	position: absolute;
	width: 23px;
	height: 22px;
	top: 15px;
	right: 50%;
	margin-right: -13px;
}
.pagetop:hover {
	opacity: 0.5;
}
/*404*/
#page .bt-top a {
	text-decoration: underline;
}
#page .bt-top a:hover {
	text-decoration: none;
}
.top-lead-text {
	margin: 1rem 0 2rem 0;
	line-height: 1.8;
}
/*----------------------------------------------------
content
----------------------------------------------------*/
/*basic_h_tag*/
.contents_top .top-title h2:first-child,
.contents_top .top-title h3:first-child,
.contents_top .top-title h4:first-child,
.contents_top .top-title h5:first-child,
.underlayer-page-title:first-child{
	margin:0 auto 3rem;
}
.contents_top .top-title h2, .underlayer-page-title {
    font-size: 30px;
    font-weight: bold;
    line-height: 140%;
    margin: 2rem 0 3rem;
    padding: 50px 20px 13px 90px;
    width: 100%;
    border: 3px solid #0496dd;
    position: relative;
}
.contents_top .top-title h2::before, .underlayer-page-title::before {
      content: '';
      position: absolute;
      background: url(img/h2_parts.png);
      background-size: auto;
      background-position: center;
      width: 100%;
      height: 20px;
      min-height: 40px;
      left: 0;
      top: 0;
}
.contents_top .top-title h2::after, .underlayer-page-title::after {
	content: '';
    position: absolute;
    background: url(img/h2_icon.png) no-repeat;
    background-size: 42px;
    width: 42px;
    height: 46px;
    left: 22px;
    top: 50%;
    margin-top: -6px;
}
.contents_top .top-title h2 a, .underlayer-page-title a {
	color: #535353;
}
.contents_top .top-title h3, .underlayer-title h2 {
    color: #2b5fa5;
    font-size: 24px;
    font-weight: bold;
    line-height: 140%;
    margin: 30px auto 10px;
    padding: 15px 40px;
    position: relative;
    background: url(img/h3_stripe.png);
    border-radius: 15px;
}
.contents_top .top-title h3 a, .underlayer-title h2 a {
	color: #2b5fa5;
}

.contents_top .top-title h4, .underlayer-title h3 {
    border-bottom: 3px solid #91bd2c;
    border-top: 3px solid #91bd2c;
    font-size: 20px;
    font-weight: bold;
    line-height: 140%;
    margin: 30px auto 10px;
    position: relative;
    padding: 15px 40px;
}
.contents_top .top-title h4 a, .underlayer-title h3 a {
	color: #535353;
}
.contents_top .top-title h5, .underlayer-title h4,.underlayer-title h5 {
    border-bottom: 1px dashed #22a685;
    font-size: 18px;
    font-weight: bold;
    line-height: 140%;
    margin: 30px auto 10px;
    padding: 0 40px 10px;
    position: relative;
}
.contents_top .top-title h5 a, .underlayer-title h4 a,.underlayer-title h5 a {
	color: #535353;
}
.contents_top .top-title div, .underlayer-title h5 {
	font-weight: bold;
	margin: 10px 0 20px;
	font-size: 1.7rem;
	padding: 5px 10px;
	border-bottom: 1px solid #2ba989;
}
    .contents_top .top-title .title-area,
    .underlayer-title .title-area,
    .underlayer-title .title-area {
        margin: 0 auto 10px;
        padding: 5px 10px;
        font-size: 1.6rem;
        line-height: 140%;
        border-bottom: 1px solid #2ba989;
    }
    .contents_top .top-title .title-area a,
    .underlayer-title .title-area a {
        display: block;
        padding: 0 30px 0 0;
        text-decoration: none;
    }
    .contents_top .top-title .title-area a:hover,
    .underlayer-title .title-area a:hover {
        opacity: .6;
    }

/* num */
.icon-title {
    background: #e4f5fc;
    font-size: 28px;
    font-weight: bold;
    line-height: 140%;
    margin: 3rem 0 4rem;
    border: 2px solid #0496dd;
    padding: 30px 10px 30px 150px;
    position: relative;
    width: 100%;
    box-shadow: 0 0 0 7px #e4f5fc;
    border-radius: 10px;
}

.icon-recommend-title::before,
.icon-point-title::before,
.icon-check-title::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: 100;
	left: 20px;
	width: 120px;
	height: 75px;
}

.contents-left p.catch-copy,
.contents-right p.catch-copy {
	color: #ef8b1e;
	font-weight: bold;
	position: relative;
	margin: 0 0 1rem 0;
	font-size: 1.8rem;
	padding-left: 2rem;
}
.contents-left p.catch-copy::before,
.contents-right p.catch-copy::before {
	position: absolute;
	content: "";
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 0 7px 12px;
    border-color: transparent transparent transparent #ef8a1e;
}

.icon-recommend-title::before{
	background: url(img/ico_recommend.png) no-repeat;
	background-size: 100% auto;
}
.icon-point-title::before{
	background: url(img/ico_point.png) no-repeat;
	background-size: 80px 75px;
}

.icon-check-title::before{
	background: url(img/ico_check.png) no-repeat;
	background-size: 80px 75px;
}


.icon-num-title .icon-num{
	position: absolute;
	font-weight: bold;
	color: #1d3d64;
	background: url(img/ico_rank.png) no-repeat left 0px center;
	background-size: 100% auto;
	font-size: 3rem;
	width: 80px;
	height: 75px;
	padding: 20px 0;
	left: 20px;
	top: 0;
	bottom: 0;
	margin: auto;
	text-align: center;
}


.icon-point-num-title .icon-num,
.icon-check-num-title .icon-num,
.icon-recommend-num-title .icon-num {
	position: absolute;
	font-weight: bold;
	color: #1d3d64;
	font-size: 3rem;
	width: 110px;
	height: 95px;
	padding: 35px 0;
	left: 20px;
	top: 0;
	bottom: 0;
	margin: auto;
	text-align: center;
}
.icon-point-num-title .icon-num,
.icon-check-num-title .icon-num {
  	width: 80px;
  	height: 93px;
}
.icon-point-num-title .icon-num {
   background: url(img/ico_point_num.png) no-repeat left 0px center;
   background-size: 100% auto;
}

.icon-check-num-title .icon-num{
	background: url(img/ico_check_num.png) no-repeat left 0px center;
	background-size: 100% auto;
}

.icon-recommend-num-title .icon-num{
	background: url(img/ico_recommend_num.png) no-repeat left 0px center;
	background-size: 100% auto;
}

.icon-textarea {
	margin: 0 0 40px;
}

/* num */


/* tag
----------------------------------------------------*/
.contents_top ul.tag-list-area {
	margin: 2rem auto;
	display: flex;
	flex-wrap: wrap;
	background: #fff;
	padding: 5% 5% calc(5% - 12px);
	border-radius: 5px;
}
 .tag-list-area .tag-list-area__li{
		background: #fafafa;
		color: #aaa;
		font-weight: normal;
		border: 1px solid #d8d8d8;
		text-align: center;
		margin: 0 2% 2% 0;
		padding: 6px;
		font-size: 13px;
		line-height: 1.4;
		width: 48%;
		float: left;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 5px;
}
.contents_top ul.tag-list-area li.tag-list-area__li:nth-child(4n){
	margin-right:0;
}

.contents_top ul.tag-list-area li.tag-list-area__li {
	background: #91bd2c;
	width: calc(89%/4);
	margin: 0 21px 12px 0;
	color: #333;
	text-align: center;
	font-size: 1.2rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-radius: 5px;
	align-items: center;
}


#category .cmn-column3 .tag-list-area {
		padding: 0;
		margin: 0;
		display: flex;
		flex-flow: row wrap;
}

.tag-list-area {
display:-webkit-box;
		display:-moz-box;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:-moz-flex;
		display:flex;
		-webkit-box-lines:multiple;
		-moz-box-lines:multiple;
		-webkit-flex-wrap:wrap;
		-moz-flex-wrap:wrap;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
}
.tag-list-area::after {
		clear:both;
}

 .tag-list-area .tag-list-area__li{
		background: #91bd2c;
		color: #fff;
		border: none;
		padding: 0;
}

ul.tag-list-area li.tag-list-area__li span,
ul.tag-list-area li.tag-list-area__li a span {
		width: 100%;
		height: 100%;
		padding: 10px 5px;
		border: 0;
		text-align: center;
		display: flex;
		align-items: center;
		justify-content: center;
		line-height: 1.2;
}

.tag-list-area .tag-list-area__li .tag-on{
	background: #91bd2c;
	color: #fff;
	border-radius: 5px;
}

.tag-list-area .tag-list-area__li .tag-off{
	background: #fff;
	color: #aaa;
	border: 1px solid #aaa;
	border-radius: 5px;
}

.tag-list-area .tag-list-area__li a{
	display: block;
	padding: 10px;
	color: #fff;
}

 .tag-list-area__li:nth-child(even) {
		float: right;
		margin-right:0;
}

.contents-left .tag-list-area__li::before,.contents-right .tag-list-area__li::before{
	content:none;
}
/* slider
----------------------------------------------------*/
.compare-table-group .slider-area {
  margin: 0 0 3rem 0;
}
.compare-table-group .slider-area .slider .slick-initialized .slick-slide {
  text-align: center;
}
.compare-table-group .slider-area .slider .slick-initialized .slick-slide span {
  text-align: center;
  font-size: 10px;
  color: #888888;
  line-height: 1.4;
  word-wrap: break-word;
  padding: .5rem 0;
}
.compare-table-group .slider-area .slider .slick-initialized .slick-slide span img {
  margin: 0 auto;
}
.slider-area {
  margin: 0 0 30px 0;
}
.slider-area .slider {
  margin: 0 0 2rem;
  position: relative;
}
.slider-area .slider img {
  max-width: 100%;
  margin: 0 auto;
  height: auto;
}
.slider-area .slider .slick-slide {
  display: none;
}
.slider-area .slider .slick-slide:focus {
  outline: 0;
}
.slider-area .slider .slick-initialized .slick-slide {
  display: block;
}
.slider-area .slider .slider-for {
  width: 593px;
  padding: 0 5px 0 5px;
  float: left;
}
.slider-area .slider .slider-for button.slick-next, .slider-area .slider .slider-for button.slick-prev {
  width: 40px;
  height: 40px;
  background: #0496dd;
  border-radius: 50%;
  box-shadow: 0px 0px 5px 0px #d4d4d4;
  position: absolute;
  z-index: 5;
  text-indent: 99px;
  overflow: hidden;
}
.slider-area .slider .slider-for button.slick-next::before, .slider-area .slider .slider-for button.slick-prev::before {
  content: '';
  display: block;
  opacity: 1;
}
.slider-area .slider .slider-for button.slick-next:hover, .slider-area .slider .slider-for button.slick-prev:hover {
  opacity: 0.8;
}
.slider-area .slider .slider-for button.slick-prev {
  left: -6px;
}
.slider-area .slider .slider-for button.slick-prev::before {
    content: "";
    display: block;
    position: absolute;
    top: 39%;
    right: 13px;
    width: 10px;
    left: auto;
    height: 10px;
    border-bottom: solid 2px #fff;
    border-left: solid 2px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    background: none !important;
    bottom: auto;
}
.slider-area .slider .slider-for button.slick-next {
  right: -6px;
}
.slider-area .slider .slider-for button.slick-next::before {
    content: "";
    display: block;
    position: absolute;
    top: 39%;
    right: 16px;
    width: 10px;
    left: auto;
    height: 10px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    background: none !important;
    bottom: auto;
}
.slider-area .slider .slider-nav-wrap {
  width: 100px;
  padding: 0;
  position: absolute;
  top: 35px;
  right: -25px;
}
.slider-area .slider .slider-nav button.slick-next, .slider-area .slider .slider-nav button.slick-prev {
  width: 30px;
  height: 30px;
  position: absolute;
  z-index: 5;
  right: auto;
  left: 50%;
  transform: translate(-50%, 0);
  text-indent: 99px;
  overflow: hidden;
}
.slider-area .slider .slider-nav button.slick-next::before, .slider-area .slider .slider-nav button.slick-prev::before {
  content: '';
  width: 15px;
  height: 10px;
  margin: 0 auto;
  display: block;
  opacity: 1;
}
.slider-area .slider .slider-nav button.slick-next:hover, .slider-area .slider .slider-nav button.slick-prev:hover {
  opacity: 0.6;
}
.slider-area .slider .slider-nav button.slick-prev {
  top: -30px;
}
.slider-area .slider .slider-nav button.slick-prev::before {
  background: url(img/arrow05_orange.svg) 0 0 no-repeat;
  background-size: 100%;
}
.slider-area .slider .slider-nav button.slick-next {
  top: auto;
  bottom: -30px;
}
.slider-area .slider .slider-nav button.slick-next::before {
  background: url(img/arrow06_orange.svg) 0 0 no-repeat;
  background-size: 100%;
}
.slider-area .slider .slider-nav .slick-list {
  padding: 0 0 !important;
}
.slider-area .slider .slider-nav .slick-track {
  left: 0 !important;
}
.slider-area .slider .slider-nav .slick-slide {
  height: 65px;
  padding: 5px 0;
  border: none;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 1;
  cursor: pointer;
}
.slider-area .slider .slider-nav .slick-slide img {
  height: 100%;
  margin: 0 auto;
}
.slider-area .slider .slider-nav .slick-slide:hover {
  opacity: 0.5;
}
.slider-area .slider .slider-caption {
  margin: 10px 0 20px;
  font-size: 1.1rem;
  color: #999;
  text-align: center;
  word-wrap: break-word;
  line-height: 1.4em;
}
/* img_left_right_center
----------------------------------------------------*/
.image-text__image {
	max-width: 40%;
	width: initial;
}
.image-text__image.image-left, .image-text__image.image-right {
	width: 400px;
}
.image-text__caption {
	display: block;
	padding: .5rem 0;
}
.viral-info .caption {
	text-align: center;
}
.image-text__text {
	padding: 0;
	width: 100%;
}
.image-text__textarea {
	line-height: 1.8;
}
.image-center {
	margin-bottom: 2rem;
	text-align: center;
	max-width: 100%;
}
/* table
----------------------------------------------------*/
.first-row table tr:nth-child(1),
.table-layout.first-row table tr:nth-child(1),
.js-scrollable.first-row table tr:nth-child(1) {
	font-weight: bold;
	background: #e3e3e3;
}
.first-column table td:nth-child(1) {
	font-weight: bold;
	background: #e4f5fc;
}
.table-layout.first-column table td:nth-child(1),
.js-scrollable.first-column table td:nth-child(1),
.table-sp-none  table td:nth-child(1) {
		font-weight: bold;
/*		background: #e3e3e3;*/
}
table,
.table-normal{
	width: 100%;
	margin: 30px 0;
	color: #4c4c4c;
}
table,
.table-normal table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
		border: 1px solid #aaaaaa;
	background-color: #fff;
}
table th,
table td {
	border: 0;
		border-bottom: 1px solid #aaaaaa;
	padding: 15px;
	word-break: break-all;
}
table th{
	 font-weight: bold;
	 background: #e3e3e3;
}
table th,
table td,
.table-normal table tbody td {
	border-left: 1px solid #aaaaaa;
	text-align:center;
	vertical-align: middle;
}
table tbody tr:last-child td:last-child ,
.table-normal table tbody tr:last-child td:last-child ,
.table-layout table tbody tr:last-child td:last-child  {
	border-bottom: none;
}
.table-normal table th:first-child {
	border-left: none;
}
.table-normal table td {
	text-align: center;
}
.table-layout {
	width: 100%;
	margin: 30px 0;
	color: #4c4c4c;
}
.table-layout table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid #aaaaaa;
	background-color: #fff;
	margin: 0;
}
.table-layout table tbody td {
	border: 0;
	border-bottom: 1px solid #aaaaaa;
	padding: 15px;
	word-break: break-all;
}
.table-layout table tbody td {
	border-left: 1px solid #aaaaaa;
}
.table-layout table td {
	text-align: center;
}
.js-scrollable {
	width: 100%;
	margin: 30px 0;
	color: #4c4c4c;
}
.js-scrollable table {
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid #aaaaaa;
	background-color: #fff;
}
.js-scrollable table tbody td {
	border: 0;
	border-bottom: 1px solid #aaaaaa;
	padding: 15px;
	word-break: break-all;
}
.js-scrollable table tbody td {
	border-left: 1px solid #aaaaaa !important;
}

.js-scrollable table tbody tr:last-child td {
	border-bottom: none;
}
.js-scrollable table th:first-child {
	border-left: none !important;
}
.js-scrollable table th {
	font-weight: bold;
	text-align: center;
}
.js-scrollable table td {
	text-align: center;
}
.table-sp-none.first-column table {
		width: 100%;
		border: 1px solid #aaa;
}

.table-sp-none table td {
		border: 1px solid #aaaaaa;
		padding: 15px;
		word-break: break-all;
}
.both-row-column tr:first-child,
.both-row-column tr td:first-child {
	font-weight: bold;
	background: #e3e3e3;
	color: #4c4c4c;
}


/* list
----------------------------------------------------*/
.contents-left ul,.contents-right ul {
	margin: 10px 0 15px;
}
.contents-left li,.contents-right li {
	background: url(img/li.png) no-repeat 0px 3px;
	margin: 0 0 10px;
	background-size: 14px 14px;
	padding: 0 0 0 30px;
	line-height: 1.6;
}
.contents-left li　a,.contents-right li a {
color: #4c4c4c;
}
/* img
----------------------------------------------------*/
.underlayer-image-text-box{
	margin: 30px 0;
}
.underlayer-image-text-box p.catch-copy {
	color: #333;
	font-size: 2.0rem;
	line-height: 1.4;
	margin: 2rem 0;
	padding: 0 0 1rem;
	font-weight: bold;
	border-bottom: 5px dotted #28bacb;
}
.underlayer-image-text-box p.catch-copy::before {
  content: none;
}

/* 2box,3box
----------------------------------------------------*/
.caption {
	text-align: center;
	font-size: 10px;
	color: #888888;
	line-height: 1.4;
	display: block;
	word-wrap: break-word;
}
.caption a {
		color: #888888;
}
.box-wrap {
	margin: 40px auto;
}
.box-head, .box-body {
	margin: 0 auto;
}
.box-head {
	font-size: 20px;
	font-weight: bold;
	padding: 0 0 15px;
}
.box-head a {
	display: block;
	padding: 0 30px 0 0;
	text-decoration: none;
}
.box-head a:hover {
	opacity: 0.7;
}
.box-body {
	min-height: 95px;
	padding: 0px 30px 35px;
	position: relative;
}
.box-body::after {
	background-size: 38px auto;
	content: '';
	width: 38px;
	height: 96px;
	display: block;
	padding: 0 0 0 30px;
	position: absolute;
	text-decoration: none;
	bottom: 8px;
	right: 15px;
}

.column3 {
	background: #f7f1e7;
	padding: 30px;
}
.box-wrap.basic-layout.column3 {
	padding: 0;
	background: #fff;
}
.column3 .basic-column-box {
	padding: 20px 8px 60px;
	position: relative;
	border: 4px solid #0496dd;
	border-radius: 5px;
}
    @supports (-ms-ime-align: auto) {
        /* Edge対策 */
        .column3 .basic-column-box{
            width:calc((100% - 42px) / 3);
        }
    }


.column3 .box-wrap div:nth-of-type(1) img {
	width: 60px;
	height: 60px;
}
.column3 .basic-title {
    font-size: 2rem;
    font-weight: bold;
    margin: -30px 0 30px;
    line-height: 135%;
    padding: 13px 10px;
    position: relative;
    background: #e4f5fc;
    border-radius: 10px;
}
.column3 .basic-title > *,
.column3 .basic-title a {
	font-weight: bold;
	color: #333;
	margin: 0;
}
.column3 .basic-title a {
	text-decoration: underline;
}
.column3 .basic-title a:hover {
	opacity: 0.7;
	text-decoration: none;
}

.column2 .basic-column-box {
	padding: 15px 30px 30px 30px;
	width: calc((100% - 20px) / 2);
	margin-right: 2rem;
	border-right: 7px solid #ace7ee;
	border-top: 3px solid #ace7ee;
	border-left: 3px solid #ace7ee;
	border-bottom: 7px solid #ace7ee;
	color: #535353;
	border-radius: 10px;
	padding: 18px 15px 15px;
}
.column2 .box-wrap div {
	padding: 0;
}
.column2 .basic-title {
	padding: 1.5rem;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.4;
	margin: -1.5rem -1.5rem 2rem;
	z-index: 10;
}
.column2 .basic-title >*{
	color: #535353;
	z-index: 10;
	font-weight: bold;
	display: block;
	text-decoration: none;
	background-color: #c6e6ea;
	padding: 15px 32px;
	border-radius: 10px;
	margin: 0;
}
.column2 .basic-title a {
	display: block;
	padding-right: 1rem;
	text-decoration: none;
	z-index: 2;
	font-weight: bold;
	position: relative;
	color: #535353;
}
.column2 .basic-title a::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: -25px;
	width: 30px;
	background: url(img/2box_ar.png) no-repeat right 10px center;
}
.column2 .basic-title a:hover {
	opacity: 0.5;
}
.column2 .basic-column-box .catch-copy{
	margin: 0 auto 1rem;
}
.column2 .box-wrap div:nth-of-type(1) img {
	width: 60px;
	height: 60px;
}
.box-wrap .table-normal {
	margin: 10px auto 20px;
}


.viral-box-wrap.column2 .basic-column-box {
	border: none;
	background: #f7f1e7;
}

.viral-box-wrap.column3 {
	background: #fff;
	padding: 0;
}

.viral-box-wrap.column3 .basic-column-box {
	border: none;
	background: #f7f1e7;
	width: calc((100% - 40px) / 3);
	margin-right: 2rem;
}
.viral-box-wrap.column3 .basic-column-box:nth-of-type(3) {
	margin-right: 0;
}
/*　btn_link
----------------------------- */
.btn-tel {
	display: none;
}
.btn-internal a, .btn-web a, .btn-tel a {
	max-width: 400px;
	margin: 20px auto;
	display: block;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	text-decoration: none !important;
	position: relative;
	border-radius: 10px;
	padding: 16px 15px 16px 45px;
	color: #fff;
}
.btn-internal a:hover, .btn-web a:hover {
	opacity: 1;
}
.btn-internal a {
    color: #28bacb;
    border: 1px solid #28bacb;
    box-shadow: 0px 5px 0 #28bacb;
    background: #fff url(img/link_ar2.png) no-repeat left 15px center;
    -webkit-transition: none;
    transition: none;
    word-break: break-all;
}

.btn-internal a:hover {
  box-shadow: 0 0 0 #28bacb;
  -ms-transform: translateY(4px);
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
}
.btn-web a {
    background: url(img/link_ar.png) no-repeat left 15px center;
    background-color: #ef8b1e;
    box-shadow: 0 5px 0 #f1a047;
}

.btn-web a:hover {
  box-shadow: none;
  -ms-transform: translateY(4px);
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
}
.btn-web a:hover::after {
        background: url(./img/btn2b.png) bottom no-repeat;
        background-size: 100% auto;
        width: 102%;
	    height: 20px;
	    left: -1%;
	    bottom: -3px;
    }

.btn-web a:hover::before {
        background: url(./img/btn1b.png) top no-repeat;
        background-size: 100% auto;
        width: 102%;
	    height: 20px;
	    left: -1%;
	    bottom: -3px;
    }

.btn-link {
	text-align: right;
}
.btn-link a {
	text-decoration: underline;
	font-weight: bold;
	position: relative;
	background: url(img/text_ar.png) no-repeat left 5px center;
	background-size: 18px auto;
	color: #0e3d73;
	padding-left: 30px;
}

.btn-link a:hover {
	text-decoration: none;
	opacity: .6;
}




@media screen and (max-width: 480px) {
	body {
		min-width: 100%;
		color: #333;
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.7;
	}
	.pc, .pc_br, .forPC, nav {
		display: none !important;
	}
	.sp, .sp_br, .forSP, .btn-tel {
		display: block !important;
	}
	img {
		max-width: 100%;
		height: auto;
	}
	#contents, .contents_top {
		margin: 40px auto 50px;
		max-width: inherit;
		width: 100%;
		padding: 0 3%;
	}
	.contents-left, .contents-right {
		max-width: 100%;
		width: 100%;
	}
	.sitemap {
		display: none;
	}
	#side{
		display: none;
	}
	/* header
----------------------------------------------------*/
	.l-header-area {
		min-width: auto;
		position: relative;
		font-size: 1.4rem;
		border-bottom: 1px solid #0496dd;
	}
	.l-header {
		width: 100%;
		padding: 2% 18% 2% 2%;
		display: block;
	}
	.l-header__sitename {
		float: none;
		font-size: 1.7rem;
		width: 100%;
		text-align: left;
		line-height: 1.2;
		padding: 1rem 0 1rem 6rem;
		margin: 0;
	}
	.l-header-right {
		display: none;
	}
	.l-header-left {
		width: 100%;
		display: block;
	}
	.l-header-logo {
		width: 100%;
		padding: 0 65px 0 0;
	}
	.l-header-logo__image {
		width: 4rem;
		height: 4rem;
	}
	.l-header-list {
		display: none;
	}
	.l-header--scroll-menu {
		display: none;
	}
	.l-header--scroll-menu.is-show {
		display: none;
	}
	/* breadcrumb
----------------------------------------------------*/
	#breadcrumb {
		margin: 2rem auto;
		padding:0 1rem;
		font-size: 1.2rem;
		width: 100%;
		white-space: nowrap;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		background: #fff;
}
	/* g_nav
----------------------------------------------------*/
	.l-gnavi-area {
		width: 100%;
	}
	.l-gnavi-btn {
		width: 50px;
		height: 50px;
		display: block;
		position: fixed;
		top: 20px;
		right: 5px;
		z-index: 200;
		cursor: pointer;
		background: #0496dd;
		border-radius: 5px;
	}
	.l-gnavi-btn span {
		width: 30px;
		height: 4px;
		display: inline-block;
		background: #fff;
		-webkit-transition: all .4s;
		transition: all .4s;
		position: absolute;
		left: 10px;
		border-radius: 5px;
	}
	.l-gnavi-btn.is-active {
		border: 0;
	}
	.l-gnavi-btn.is-active span {
		background: #0496dd;
	}
	.l-gnavi-btn span:nth-of-type(1) {
		top: 12px;
	}
	.l-gnavi-btn span:nth-of-type(2) {
		top: 22px;
	}
	.l-gnavi-btn span:nth-of-type(3) {
		top: 32px;
	}
	.l-gnavi-btn:hover {
		color: #666;
	}
	.l-gnavi-btn:active {
		color: #666;
	}
	.l-gnavi-btn--gnavi {
		width: 30px;
		height: 23px;
		background: none;
		position: absolute;
		top: 29px;
		right: 15px;
		z-index: 200;
	}
	.l-gnavi-btn--gnavi span {
		width: 100%;
		left: 0;
	}
	.l-gnavi-btn--gnavi span:nth-of-type(1) {
		top: 0;
	}
	.l-gnavi-btn--gnavi span:nth-of-type(2) {
		top: 10px;
	}
	.l-gnavi-btn--gnavi span:nth-of-type(3) {
		top: 20px;
	}
	.l-gnavi-btn.is-active span:nth-of-type(1) {
		-webkit-transform: translateY(10px) rotate(-45deg);
		transform: translateY(10px) rotate(-45deg);
	}
	.l-gnavi-btn.is-active span:nth-of-type(2) {
		opacity: 0;
	}
	.l-gnavi-btn.is-active span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) rotate(45deg);
		transform: translateY(-10px) rotate(45deg);
	}
	.is-navi-open .l-gnavi-area--slide-left {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.l-gnavi-area02 {
		display: none;
	}
	/* side
----------------------------------------------------*/
	.sidebanner-box-area {
		margin: 3rem 0 30px;
		padding: 0 10px;
	}
	.sidebanner-box {
		display: none;
	}
	.sidebanner-upper {
		padding: 23px;
		position: relative;
		box-shadow: 1px 1px 18px -5px rgba(0, 0, 0, 0.3);
		border-radius: 5px;
		display: block !important;
	}
	.sidebanner-upper__img {
		margin: 0 auto 10px;
		width: 95%;
	}
	.sidebanner-upper__sttl {
		font-size: 20px;
		padding: 5px 5px 15px;
		color: #333;
	}
	.sidebanner-upper__sttl a {
		display: block;
		color: #745749;
		text-decoration: none;
		font-weight: bold;
	}
	.sidebanner-upper .bt-more a {
		background-color: #b08b77;
		color: #fff;
		display: block;
		font-size: 1.5rem;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		padding: 16px 10px 16px 65px;
		margin: 10px 0;
		border-radius: 3px;
		position: relative;
	}
	.sidebanner-upper .bt-more a::before {
		content: '';
		position: absolute;
		background: url(img/parts/pc/freespace_arrow.png) center center no-repeat;
		background-size: 22px;
		background-color: #f5c5be;
		position: absolute;
		width: 55px;
		height: 100%;
		left: 0px;
		top: 0;
	}
	.sidebanner-upper .img img {
		display: block;
		margin: 10px auto;
		width: 100%;
		height: auto;
	}
	/* footer
----------------------------------------------------*/
	.l-footer-area__inner {
		margin: 0 auto;
		padding: 0;
		max-width: 100%;
	}
	.l-footer-area__inner .l-footer-logo {
		margin: 0;
		width: 100%;
		text-align: left;
		color: #0496dd;
		font-size: 1.6rem;
		font-weight: bold;
		padding: 1.5rem 2rem;
		border-bottom: solid 2px #f3f4f5;
	}
	.l-footer-area__inner .l-footer-menu-wrapper {
		margin: 0 auto 3rem;
		padding: 0;
	}
	.l-footer-menu-wrapper::before {
		content: none;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu {
		margin: 0;
		padding: 0;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__title {
    border-bottom: solid 2px #f3f4f5;
}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__title .l-footer-menu__title__link {
		background: #0496dd;
		padding: 1.5rem 4rem 1.5rem 1rem;
		font-size: 1.7rem;
		color: #fff;
		border-bottom: none;
	}
	.l-footer-menu__title__link::before {
		content: none;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__title .l-footer-menu__title__link:hover {
		/* background: #fff; */
		opacity: 1.0;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__title .l-footer-menu__title__link::after {
		position: absolute;
		content: "";
		display: block;
		border-top: 3px solid #fff;
		border-right: 3px solid #fff;
		top: 37%;
		right: 20px;
		width: 9px;
		height: 9px;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__title .l-footer-menu__title__link.is-open::after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		top: 46%;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__list {
		display: none;
		padding: 0;
		margin: 0;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__list .l-footer-menu__list__item {
		float: none;
		width: 100%;
		margin: 0;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__list .l-footer-menu__list__item a {
		padding: 1.2rem 1.5rem 1.2rem 4rem;
		border-bottom: 2px dotted #0496dd;
		margin: 0;
		background: url(img/footer-ar.png) no-repeat left 10px center;
	}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__list .l-footer-menu__list__item .l-footer-submenu__list {}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__list .l-footer-menu__list__item .l-footer-submenu__list .l-footer-submenu__list__item {
    margin: 0;
}
	.l-footer-area__inner .l-footer-menu-wrapper .l-footer-menu .l-footer-menu__list .l-footer-menu__list__item .l-footer-submenu__list .l-footer-submenu__list__item a {
		padding: 1.2rem 1.5rem 1.2rem 2rem;
		margin: 0;
		font-size: 1.3rem;
		background: none;
	}
	.l-footer-menu__list__item:first-child {
	display: block;
}
	.l-footer-area .l-footer-area__inner .menseki {
		width: 90%;
		line-height: 1.5;
		font-size: 1.3rem;
		color: #000023;
		background: #e4f5fc;
	}
	.l-footer-area .l-footer-area__inner .ucp {
		margin: 0 auto 2rem;
		line-height: 1.5;
		font-size: 1.3rem;
	}
	.l-pagetop__link {
	width: 60px;
	height: 60px;
	background-size: 60px;
}
.l-pagetop__link:hover::after {
	width: 60px;
	height: auto;
}

	/* -----------------------------
contents
----------------------------- */
	/* title
----------------------------- */
	.contents_top .top-title h2,
	.contents_top .top-title h3,
	.contents_top .top-title h4,
	.contents_top .top-title h5 {
		width: 100%;
		margin: 4rem 0 3rem 0;
	}
	.underlayer-page-title {
		width: auto;
	}
	h1.underlayer-page-title {
		font-size: 2.2rem;
		margin: 0rem auto 2rem;
	}
	.contents_top .top-title h2::before,
	.underlayer-page-title::before {
    min-height: auto;
 }
 .contents_top .top-title h2::after, .underlayer-page-title::after {background-size: 20px;left: 10px;width: 20px;height: 25px;}
	.underlayer-title h2 {
		font-size: 2.0rem;
		line-height: 1.3;
	}

	.underlayer-title h3 {
		font-size: 2.0rem;
		line-height: 1.3;
	}
	.underlayer-title h4 {
		font-size: 1.7rem;
		line-height: 1.3;
	}

.contents_top .top-title h2,
.underlayer-page-title {
	padding: 2.5rem 1.5rem 1.5rem 4.2rem;
	font-size: 2.2rem;
}
.contents_top .top-title h3, .underlayer-title h2 {
	font-size: 2.0rem;
	padding: 2rem;
}
.contents_top .top-title h4, .underlayer-title h3 {
	margin: 3rem 0 2rem;
	font-size: 1.9rem;
	padding: 1.5rem;
}

.contents_top .top-title h5,
.underlayer-title h4,
.underlayer-title h5 {
	margin: 3rem auto 2rem;
	font-size: 1.8rem;
	padding: 1rem;
}

.contents_top .top-title div{
	font-weight: bold;
	padding: 5px 10px;
	margin: 30px 0 7px;
	font-size: 1.7rem;
	border-bottom: 1px solid #2ba989;
}
.underlayer-title .box-head {
	font-size: 1.6rem;
	line-height: 140%;
	padding: 5px 10px;
	border-bottom: 1px solid #2ba989;
	margin: 0 0 1rem;
}


.contents-left .catch-copy,.contents-right .catch-copy{
		margin: 3rem 0 1.5rem;
		font-weight: bold;
		font-size: 1.5rem;
}
.contents-left p.catch-copy,
.contents-right p.catch-copy {
	font-size: 1.6rem;
}
.underlayer-image-text-box p.catch-copy {
	font-size: 1.6rem;
}
		/* tag
----------------------------------------------------*/
.contents_top ul.tag-list-area {
	padding: 5% 5% calc(5% - 1rem);
}
.contents_top ul.tag-list-area li.tag-list-area__li {
	margin: 0 1% 1rem 1%;
	width: calc(93%/3);
	line-height: 1.3;
}
.contents_top ul.tag-list-area li.tag-list-area__li:nth-child(4n){
margin-right: 1%;
}

	/* slider
----------------------------------------------------*/
	.slider-area .slider .slider-for {
		width: 100%;
		padding: 0 1em;
		float: none;
	}
	.slider-area .slider .slider-for img {
		max-width: 100%;
		width: inherit;
		height: 160px;
	}
	.slider-area .slider .slider-nav-wrap {
		width: 100%;
		margin: 0 auto;
		padding: 0 1em;
		position: static;
	}
	.slider-area .slider .slider-nav-wrap img {
		width: auto;
	}
	.slider-area .slider .slider-nav .slick-list {
		padding: 0 !important;
	}
	.slider-area .slider .slider-nav .slick-track {
		width: 100% !important;
		left: 0 !important;
		opacity: 1;
	}
	.slider-area .slider .slider-nav .slick-slide {
		width: 20% !important;
		height: 50px;
		padding: 5px 2px;
	}
	.slider-area .slider .slider-caption {
		font-size: 1rem;
	}
	.compare-table-group .slider-area .slider .slick-initialized .slick-slide {
		margin: 0 0 2rem 0;
	}
	/* table
----------------------------- */
	.table-layout {
		margin: 30px 0;
		padding: 0 0 10px 0;
		width: 100%;
	}
	.table-layout table{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
		border: 1px solid #aaaaaa;
	}

	.table-layout table thead th, .table-layout table tbody th, .table-layout table tbody td {
		border-bottom: 1px solid #aaaaaa;
		padding: 15px;
		word-break: break-all;
	}
	.table-layout table th, .table-layout table tr, .table-layout table td {
		text-align: center;

	}
	.table-layout table tbody td {
		border-left: 0;
	}

	.table-layout table tbody tr td:last-child {
		border-left: 1px solid #aaaaaa;
	}
	.table-layout table th {
		background: #f0e7de;
	}
	.table-layout table th:first-child {
		border-left: none;
	}
	.table-layout table th {
		font-weight: bold;
		color: #745749;
	}

	.table-layout::-webkit-scrollbar {
		height: 5px;
	}
	.table-layout::-webkit-scrollbar-track {
		background: #F1F1F1;
	}
	.table-layout::-webkit-scrollbar-thumb {
		background: #745749;
	}
	.table-layout.first-column,
	.table-layout.first-column tr,
	.table-layout.first-column th,
	.table-layout.first-column td {
		display: block;
		width: 100%;
	}

	.table-layout.first-column table tbody tr td:last-child {
		border-left: none;
}
.js-scrollable {
		width: 100%;
		margin: 2rem 0 0;
		color: #333;
}
.js-scrollable table {
	margin: 30px 0;
}
.table-sp-none{
	display:none;
}
	/* img_left_right_center
----------------------------------------------------*/
	.image-text-area {
		display: block;
		padding: 0;
		margin: 2rem auto;
	}
	.image-text__image {
		padding: 0;
		max-width: 100%;
		width: 60%;
		margin: 0 auto;
	}
	.image-text__image.image-left, .image-text__image.image-right {
		width: 60%;
}
.image-text__image.image-left img,
.image-text__image.image-right img {
	margin: auto;
	display: block;
}
	.image-text-area .image-text__image.image-left + .image-text__text .image-text__textarea .catch-copy,
	.image-text-area .image-text__image.image-right + .image-text__text .image-text__textarea .catch-copy,
	.image-text-area .image-text__image.image-center + .image-text__text .image-text__textarea .catch-copy {
		margin: 2rem 0;
		font-size: 1.6rem;
		line-height: 1.5;
}
	.image-text-area .image-text__image.image-left + .image-text__text .image-text__textarea .paragraph-frame, .image-text-area .image-text__image.image-right + .image-text__text .image-text__textarea .paragraph-frame {}
	.image-text-area .image-text__image.image-left + .image-text__text .table-normal, .image-text-area .image-text__image.image-right + .image-text__text .table-normal {
		margin: 2rem auto 0;
	}
	.top-image-text-box .catch-copy {
		font-size: 1.6rem;
		margin: 2rem 0 1.5rem;
		padding: 0 0 2rem;
	}
	/* 2box,3box
----------------------------------------------------*/
	.column2 .basic-column-box, .column3 .basic-column-box {
		width: 100%;
	}
	.column3 {
		padding: 3%;
	}
	.box-wrap {}
	.box-wrap .basic-column-box {
	margin-bottom: 5rem;
	}
	.column2 .basic-title {
		padding: 1rem;
	}
	.box-head {
	font-size: 1.8rem;
	padding: 0 0 1rem;
}
	.column2 .basic-title h3, .column2 .basic-title h2 {
		padding: 1rem;
	}
	.column2 .basic-title a::after {
		right: -1rem;
	}
	.box-wrap .basic-column-box .basic-title h3, .box-wrap .basic-column-box .basic-title h3 a {
	font-size: 1.9rem;
	padding: 1rem;
	}
	.box-wrap .basic-column-box .catch-copy {
		font-size: 1.5rem;
		line-height: 1.5;
		margin: 1rem auto;
	}
	/*　btn_link
----------------------------- */
	.btn-internal a, .btn-web a, .btn-link a, .btn-tel a {
		width: 85%;
		margin: 10px auto 15px;
		display: block;
		font-size: 18px;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		position: relative;
	}
	.btn-link a {
    color: #0e3d73;
    border: 1px solid #0e3d73;
    border-bottom: solid 7px #0e3d73;
    background: url(img/text_ar.png) no-repeat left 15px center;
    background-size: 22px auto;
    border-radius: 10px;
    padding: 16px 15px 16px 45px;
 }
	.btn-tel a {
    background: url(img/tel_icon_sp.png) no-repeat left 20px center;
    background-size: 14px;
    background-color: #91bd2c;
    border-bottom: solid 5px #a5d23f;
 }
	.btn-internal a, .btn-web a, .btn-link a, .btn-tel a {
		font-size: 1.6rem;
		line-height: 1.5;
	}
/* num */
	.icon-title {
		font-size: 1.8rem;
		padding: 20px 10px 20px 75px;
		border: 1px solid #0496dd;
		box-shadow: 0 0 0 2px #e4f5fc;
	}

	.icon-num-title .icon-num {
		width: 65px;
		height: 65px;
		background-size: 100% auto;
		padding-top: 21px;
		font-size: 2.5rem;
		left: .5rem;
	}
	.icon-recommend-title::before {
		background-size: 100% auto;
		left: 0.5rem;
		width: 64px;
		height: 40px;
	}
    .icon-point-title::before,
	.icon-check-title::before {
background-size: 100% auto;
width: 60px;
height: 55px;
left: .5rem;
	}

	.icon-recommend-num-title .icon-num {
		width: 65px;
		height: 65px;
		padding-top: 26px;
		font-size: 2rem;
		left: .5rem;
	}
    .icon-point-num-title .icon-num,
	.icon-check-num-title .icon-num {
width: 55px;
height: 66px;
background-size: 100% auto;
left: .5rem;
font-size: 2rem;
padding: 24px 0;
	}
/* num */
}