@charset "utf-8";
/* CSS Document */

/* GoogleFonts読み込み 下記のライセンス記述は削除禁止 */
/*
* These fonts includes the work that is distributed in the Apache License 2.0.
* https://www.apache.org/licenses/LICENSE-2.0
* The change is that unnecessary text information has been deleted.
*/
@font-face {
  font-family: "Kosugi Maru";
  font-style: normal;
  font-weight: 400;
  src: url("fonts/Ksg-M-400.woff2") format("woff2"), url("fonts/Ksg-M-400.woff") format("woff");
  font-display: swap;
}


/*--------------------------------------------------------------------------
   reset
---------------------------------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
small,
dl,
dt,
dd,
ol,
ul,
li {
  margin: 0;
  font-size: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Kosugi Maru', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

ul {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

img {
  vertical-align: top;
}

li {
  list-style-type: none;
  vertical-align: baseline;
}

input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
* {
	box-sizing: border-box;
}
.cf::after {
	content: "";
  display: block;
  clear: both;
}


/*--------------------------------------
　Base
---------------------------------------*/

html {
    font-size: 62.5%;
}

body {
	color: #333;
	font-family: "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.8;
	min-width: 1100px;
	-webkit-font-smoothing: subpixel-antialiased;
	word-break: break-word;
}
@media all and (-ms-high-contrast:none) {
    body, p, li, dt, dd, th, td, span, a,
    h1, h2, h3, h4, h5, h6, h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	    font-family: 'Noto Sans JP',"メイリオ",Meiryo,"游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif !important;
    }
}

img {
  max-width: 100%;
  height:auto;
}

a {
	color: #333;
	text-decoration: none;
}

a:hover {
	text-decoration: none;
	opacity: 0.6;
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.strong {
  font-weight: bold;
}

.f110 {
  font-size: 110%;
}

.f120 {
  font-size: 120%;
}

.f130 {
  font-size: 130%;
}

.f150 {
  font-size: 150%;
}

.f200 {
  font-size: 200%;
}

.f300 {
  font-size: 300%;
}

p span{
	font-weight: bold;
	color: #333;
	background: #faf8d4;
	border: none;
}
span{
	/* font-weight: bold; */
	color: #333;
	border-bottom: 2px solid #e6dc14;
}
#contents p {
	max-width: 1100px;
	margin: 2rem auto;
}
.catch {
	font-family: 'Kosugi Maru', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}


.pc {
	display: block!important;
}
.sp {
	display: none!important;
}
.sp_br {
	display: none;
}




/*--------------------------------------
　reset
---------------------------------------*/
/*hWrap*/
.addParts01 .hWrap,.addParts02 .hWrap,.addParts03 .hWrap,.float-wrap .hWrap,.box-wrap .hWrap,.frame .hWrap {
	background: none;
	position: static;
	margin: 0;
}
.addParts01 .hWrap::before,.addParts02 .hWrap::before,.addParts03 .hWrap::before,.float-wrap .hWrap::before,.box-wrap .hWrap::before,.frame .hWrap::before {
	content: none;
}
#index .addParts01 .hInner, #category .addParts01 .hInner, #page .addParts01 .hInner,
#index .addParts02 .hInner, #category .addParts02 .hInner, #page .addParts02 .hInner,
#index .addParts03 .hInner, #category .addParts03 .hInner, #page .addParts03 .hInner,
#index .float-wrap .hInner, #category .float-wrap .hInner, #page .float-wrap .hInner,
#index .box-wrap .hInner, #category .box-wrap .hInner, #page .box-wrap .hInner,
#index .frame .hInner, #category .frame .hInner, #page .frame .hInner {
	display: block;
	width: auto;
	margin: 0;
}
/*hタグ reset*/
#index .addParts01 h2, #category .addParts01 h1, #page .addParts01 h1,
#index .addParts02 h2, #category .addParts02 h1, #page .addParts02 h1,
#index .addParts03 h2, #category .addParts03 h1, #page .addParts03 h1,
#index .float-wrap h2, #category .float-wrap h1, #page .float-wrap h1,
#index .box-wrap h2, #category .box-wrap h1, #page .box-wrap h1,
#index .frame-wrap h2, #category .frame-wrap h1, #page .frame-wrap h1,
#index .addParts01 h3, #category .addParts01 h2, #page .addParts01 h2,
#index .addParts02 h3, #category .addParts02 h2, #page .addParts02 h2,
#index .addParts03 h3, #category .addParts03 h2, #page .addParts03 h2,
#index .float-wrap h3, #category .float-wrap h2, #page .float-wrap h2,
#index .box-wrap h3, #category .box-wrap h2, #page .box-wrap h2,
#index .frame-wrap h3, #category .frame-wrap h2, #page .frame-wrap h2,
#index .addParts01 h4, #category .addParts01 h3, #page .addParts01 h3,
#index .addParts02 h4, #category .addParts02 h3, #page .addParts02 h3,
#index .addParts03 h4, #category .addParts03 h3, #page .addParts03 h3,
#index .float-wrap h4, #category .float-wrap h3, #page .float-wrap h3,
#index .box-wrap h4, #category .box-wrap h3, #page .box-wrap h3,
#index .frame-wrap h4, #category .frame-wrap h3, #page .frame-wrap h3,
#index .addParts01 h5, #category .addParts01 h4, #page .addParts01 h4,
#index .addParts02 h5, #category .addParts02 h4, #page .addParts02 h4,
#index .addParts03 h5, #category .addParts03 h4, #page .addParts03 h4,
#index .float-wrap h5, #category .float-wrap h4, #page .float-wrap h4,
#index .box-wrap h5, #category .box-wrap h4, #page .box-wrap h4,
#index .frame-wrap h5, #category .frame-wrap h4, #page .frame-wrap h4,
#index .addParts01 h6, #category .addParts01 h5, #page .addParts01 h5,
#index .addParts02 h6, #category .addParts02 h5, #page .addParts02 h5,
#index .addParts03 h6, #category .addParts03 h5, #page .addParts03 h5,
#index .float-wrap h6, #category .float-wrap h5, #page .float-wrap h5,
#index .box-wrap h6, #category .box-wrap h5, #page .box-wrap h5,
#index .frame-wrap h6, #category .frame-wrap h5, #page .frame-wrap h5 {
	display: block;
	width: auto;
	height: auto;
	min-width: initial;
	min-width: auto;
	min-height: initial;
	min-height: auto;
	font-size: 1.6rem;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #333;
	background: none;
	border: none;
	border-radius: 0;
	box-shadow: none;
	text-align: left;
	text-shadow: none;
	text-decoration: none;
	padding: 0;
	margin: 0;
	position: static;
}
#index .addParts01 h2 a, #category .addParts01 h1 a, #page .addParts01 h1 a,
#index .addParts02 h2 a, #category .addParts02 h1 a, #page .addParts02 h1 a,
#index .addParts03 h2 a, #category .addParts03 h1 a, #page .addParts03 h1 a,
#index .float-wrap h2 a, #category .float-wrap h1 a, #page .float-wrap h1 a,
#index .box-wrap h2 a, #category .box-wrap h1 a, #page .box-wrap h1 a,
#index .frame-wrap h2 a, #category .frame-wrap h1 a, #page .frame-wrap h1 a,
#index .addParts01 h3 a, #category .addParts01 h2 a, #page .addParts01 h2 a,
#index .addParts02 h3 a, #category .addParts02 h2 a, #page .addParts02 h2 a,
#index .addParts03 h3 a, #category .addParts03 h2 a, #page .addParts03 h2 a,
#index .float-wrap h3 a, #category .float-wrap h2 a, #page .float-wrap h2 a,
#index .box-wrap h3 a, #category .box-wrap h2 a, #page .box-wrap h2 a,
#index .frame-wrap h3 a, #category .frame-wrap h2 a, #page .frame-wrap h2 a,
#index .addParts01 h4 a, #category .addParts01 h3 a, #page .addParts01 h3 a,
#index .addParts02 h4 a, #category .addParts02 h3 a, #page .addParts02 h3 a,
#index .addParts03 h4 a, #category .addParts03 h3 a, #page .addParts03 h3 a,
#index .float-wrap h4 a, #category .float-wrap h3 a, #page .float-wrap h3 a,
#index .box-wrap h4 a, #category .box-wrap h3 a, #page .box-wrap h3 a,
#index .frame-wrap h4 a, #category .frame-wrap h3 a, #page .frame-wrap h3 a,
#index .addParts01 h5 a, #category .addParts01 h4 a, #page .addParts01 h4 a,
#index .addParts02 h5 a, #category .addParts02 h4 a, #page .addParts02 h4 a,
#index .addParts03 h5 a, #category .addParts03 h4 a, #page .addParts03 h4 a,
#index .float-wrap h5 a, #category .float-wrap h4 a, #page .float-wrap h4 a,
#index .box-wrap h5 a, #category .box-wrap h4 a, #page .box-wrap h4 a,
#index .frame-wrap h5 a, #category .frame-wrap h4 a, #page .frame-wrap h4 a,
#index .addParts01 h6 a, #category .addParts01 h5 a, #page .addParts01 h5 a,
#index .addParts02 h6 a, #category .addParts02 h5 a, #page .addParts02 h5 a,
#index .addParts03 h6 a, #category .addParts03 h5 a, #page .addParts03 h5 a,
#index .float-wrap h6 a, #category .float-wrap h5 a, #page .float-wrap h5 a,
#index .box-wrap h6 a, #category .box-wrap h5 a, #page .box-wrap h5 a,
#index .frame-wrap h6 a, #category .frame-wrap h5 a, #page .frame-wrap h5 a {
	display: inline;
	width: auto;
	height: auto;
	min-width: initial;
	min-width: auto;
	min-height: initial;
	min-height: auto;
	font-size: 100%;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #333;
	background: none;
	border: none;
	border-radius: 0;
	box-shadow: none;
	text-align: left;
	text-shadow: none;
	text-decoration: none;
	padding: 0;
	margin: 0;
	position: static;
}
#index .addParts01 h2::before, #category .addParts01 h1::before, #page .addParts01 h1::before,
#index .addParts02 h2::before, #category .addParts02 h1::before, #page .addParts02 h1::before,
#index .addParts03 h2::before, #category .addParts03 h1::before, #page .addParts03 h1::before,
#index .float-wrap h2::before, #category .float-wrap h1::before, #page .float-wrap h1::before,
#index .box-wrap h2::before, #category .box-wrap h1::before, #page .box-wrap h1::before,
#index .frame-wrap h2::before, #category .frame-wrap h1::before, #page .frame-wrap h1::before,
#index .addParts01 h3::before, #category .addParts01 h2::before, #page .addParts01 h2::before,
#index .addParts02 h3::before, #category .addParts02 h2::before, #page .addParts02 h2::before,
#index .addParts03 h3::before, #category .addParts03 h2::before, #page .addParts03 h2::before,
#index .float-wrap h3::before, #category .float-wrap h2::before, #page .float-wrap h2::before,
#index .box-wrap h3::before, #category .box-wrap h2::before, #page .box-wrap h2::before,
#index .frame-wrap h3::before, #category .frame-wrap h2::before, #page .frame-wrap h2::before,
#index .addParts01 h4::before, #category .addParts01 h3::before, #page .addParts01 h3::before,
#index .addParts02 h4::before, #category .addParts02 h3::before, #page .addParts02 h3::before,
#index .addParts03 h4::before, #category .addParts03 h3::before, #page .addParts03 h3::before,
#index .float-wrap h4::before, #category .float-wrap h3::before, #page .float-wrap h3::before,
#index .box-wrap h4::before, #category .box-wrap h3::before, #page .box-wrap h3::before,
#index .frame-wrap h4::before, #category .frame-wrap h3::before, #page .frame-wrap h3::before,
#index .addParts01 h5::before, #category .addParts01 h4::before, #page .addParts01 h4::before,
#index .addParts02 h5::before, #category .addParts02 h4::before, #page .addParts02 h4::before,
#index .addParts03 h5::before, #category .addParts03 h4::before, #page .addParts03 h4::before,
#index .float-wrap h5::before, #category .float-wrap h4::before, #page .float-wrap h4::before,
#index .box-wrap h5::before, #category .box-wrap h4::before, #page .box-wrap h4::before,
#index .frame-wrap h5::before, #category .frame-wrap h4::before, #page .frame-wrap h4::before,
#index .addParts01 h6::before, #category .addParts01 h5::before, #page .addParts01 h5::before,
#index .addParts02 h6::before, #category .addParts02 h5::before, #page .addParts02 h5::before,
#index .addParts03 h6::before, #category .addParts03 h5::before, #page .addParts03 h5::before,
#index .float-wrap h6::before, #category .float-wrap h5::before, #page .float-wrap h5::before,
#index .box-wrap h6::before, #category .box-wrap h5::before, #page .box-wrap h5::before,
#index .frame-wrap h6::before, #category .frame-wrap h5::before, #page .frame-wrap h5::before {
	content: none;
	display: inline;
	width: auto;
	height: auto;
	min-width: initial;
	min-width: auto;
	min-height: initial;
	min-height: auto;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #333;
	background: none;
	border: none;
	border-radius: 0;
	box-shadow: none;
	text-align: left;
	text-shadow: none;
	text-decoration: none;
	padding: 0;
	margin: 0;
	position: static;
}
#index .addParts01 h2::after, #category .addParts01 h1::after, #page .addParts01 h1::after,
#index .addParts02 h2::after, #category .addParts02 h1::after, #page .addParts02 h1::after,
#index .addParts03 h2::after, #category .addParts03 h1::after, #page .addParts03 h1::after,
#index .float-wrap h2::after, #category .float-wrap h1::after, #page .float-wrap h1::after,
#index .box-wrap h2::after, #category .box-wrap h1::after, #page .box-wrap h1::after,
#index .frame-wrap h2::after, #category .frame-wrap h1::after, #page .frame-wrap h1::after,
#index .addParts01 h3::after, #category .addParts01 h2::after, #page .addParts01 h2::after,
#index .addParts02 h3::after, #category .addParts02 h2::after, #page .addParts02 h2::after,
#index .addParts03 h3::after, #category .addParts03 h2::after, #page .addParts03 h2::after,
#index .float-wrap h3::after, #category .float-wrap h2::after, #page .float-wrap h2::after,
#index .box-wrap h3::after, #category .box-wrap h2::after, #page .box-wrap h2::after,
#index .frame-wrap h3::after, #category .frame-wrap h2::after, #page .frame-wrap h2::after,
#index .addParts01 h4::after, #category .addParts01 h3::after, #page .addParts01 h3::after,
#index .addParts02 h4::after, #category .addParts02 h3::after, #page .addParts02 h3::after,
#index .addParts03 h4::after, #category .addParts03 h3::after, #page .addParts03 h3::after,
#index .float-wrap h4::after, #category .float-wrap h3::after, #page .float-wrap h3::after,
#index .box-wrap h4::after, #category .box-wrap h3::after, #page .box-wrap h3::after,
#index .frame-wrap h4::after, #category .frame-wrap h3::after, #page .frame-wrap h3::after,
#index .addParts01 h5::after, #category .addParts01 h4::after, #page .addParts01 h4::after,
#index .addParts02 h5::after, #category .addParts02 h4::after, #page .addParts02 h4::after,
#index .addParts03 h5::after, #category .addParts03 h4::after, #page .addParts03 h4::after,
#index .float-wrap h5::after, #category .float-wrap h4::after, #page .float-wrap h4::after,
#index .box-wrap h5::after, #category .box-wrap h4::after, #page .box-wrap h4::after,
#index .frame-wrap h5::after, #category .frame-wrap h4::after, #page .frame-wrap h4::after,
#index .addParts01 h6::after, #category .addParts01 h5::after, #page .addParts01 h5::after,
#index .addParts02 h6::after, #category .addParts02 h5::after, #page .addParts02 h5::after,
#index .addParts03 h6::after, #category .addParts03 h5::after, #page .addParts03 h5::after,
#index .float-wrap h6::after, #category .float-wrap h5::after, #page .float-wrap h5::after,
#index .box-wrap h6::after, #category .box-wrap h5::after, #page .box-wrap h5::after,
#index .frame-wrap h6::after, #category .frame-wrap h5::after, #page .frame-wrap h5::after {
	content: none;
	display: inline;
	width: auto;
	height: auto;
	min-width: initial;
	min-width: auto;
	min-height: initial;
	min-height: auto;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #333;
	background: none;
	border: none;
	border-radius: 0;
	box-shadow: none;
	text-align: left;
	text-shadow: none;
	text-decoration: none;
	padding: 0;
	margin: 0;
	position: static;
}



/*--------------------------------------
　Header
---------------------------------------*/
header .headTopWrap {
	background: #fff;
	padding: .6rem 0;
}
header .headTopArea {
	width: 1100px;
	margin: 0 auto;
}
header .headTopArea .rightTxt {
	font-size: 1.2rem;
	font-weight: normal;
	line-height: 1.4;
	text-align: right;
	color: #333;
	font-family: "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
header .headTopArea .rightTxt a {
	font-size: 1.2rem;
	color: #333;
}


/*--------------------------------------
　visArea
---------------------------------------*/
#visArea {
	position: relative;
	z-index: 1;
	margin: 0 auto;
}
#visArea .mainArea {
	display: table;
	background: url(img/mv-low_left.png) left center no-repeat, url(img/mv-low_right.png) right center no-repeat;
	background-size: auto 100%, auto 100%;
	height: 97px;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	position: relative;
}
#visArea .mainArea .mainAreaInner {
	display: table-cell;
	vertical-align: middle;
}
#visArea .mainArea .siteNameArea {
	margin: 0;
}
#visArea .mainArea .siteName {
	margin: 0 auto;
	max-width: 339px;
}
#visArea .mainArea .siteName a {
	display: block;
}
#visArea .mainArea .siteName img {
	margin: 0 auto;
}
#visArea .mainArea .siteNameSmall {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.03em;
	text-align: center;
}



/*--------------------------------------
　Global Nav
---------------------------------------*/

#g-nav {
	background-color: #fff;
	margin: 0 auto;
	position: relative;
	z-index: 100;
}
#g-nav::before {
	content: "";
	background:linear-gradient(to right, rgba(187,187,187,1), rgba(187,187,187,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
  background-size:6px 1px;
	width: 100%;
  height: 1px;
	position: absolute;
	top: 0;
	left: 0;
}
#g-nav::after {
	content: "";
	background:linear-gradient(to right, rgba(187,187,187,1), rgba(187,187,187,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
  background-size:6px 1px;
	width: 100%;
  height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
}
#g-nav ul {
	display: flex;
	-js-display: flex;
	display: -ms-flexbox;
	display: -webkit-flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width: 1100px;
	height: auto;
	margin: 0 auto;
}
#g-nav li {
	width: 100%;
    height: auto;
	min-height: 63px;
	text-align: center;
	position: relative;
}
#g-nav li::before {
	content: "";
	background:linear-gradient(#bbb,#bbb);
	background-size:1px 1px;
	width: 1px;
	height: calc(100% - 20px);
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}
#g-nav li:last-child::after {
	content: "";
	background:linear-gradient(#bbb,#bbb);
	background-size:1px 1px;
	width: 1px;
	height: calc(100% - 20px);
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);
}
#g-nav li a {
	display: table;
	width: 100%;
	height: 100%;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.6;
	padding: 10px 12px;
	position: relative;
}
#g-nav li a span {
	display: table-cell;
	vertical-align: middle;
	font-weight: inherit;
	color: inherit;
	border-bottom: none;
}
#g-nav li a:hover::after {
	content: "";
	width: 100%;
	height: 3px;
	background-color: #90dcf4;
	position: absolute;
	left: 0;
	bottom: 2px;
	opacity: 1;
}
#g-nav li a:hover {
	opacity: 0.6;
}



/*--------------------------------------
　Pankuzu
---------------------------------------*/
#pankuzuWrap {
    margin: 0;
}
#pankuzu {
	font-size: 1.2rem;
	margin: 0 auto;
	padding: 12px 0;
	width: 1100px;
}
#pankuzu a {
	text-decoration: underline;
	color: #333;
}
#pankuzu a:hover {
	text-decoration: none;
}
#pankuzu span {
    border-bottom: none;
	font-weight: inherit;
	color: inherit;
}



/*--------------------------------------
　Main Contents
---------------------------------------*/

#contents {
  width: 1100px;
  margin: 0 auto 0;
  padding: 0;
}

#index {
	width: 100%;
	margin: 0 auto;
	padding: 3rem 0 0;
}
#category,
#page {
  float: left;
  width: 830px;
  margin: 0;
  padding: 60px 0 0;
}


/*--------------------------------------
　Side
---------------------------------------*/
#side {
	float: right;
	width: 220px;
}
#side .sideTopBox {
	background: #fbfabe;
	border: solid 1px #02ade4;
	margin: 60px 0 40px;
	position: relative;
}
#side .sideTopBox a {
	display: block;
	padding: 20px;
}
#side .sideTopBox .catch {
	font-size: 1.6rem;
	margin: 0 0 15px;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	color: #02ade4;
}
#side .sideTopBox .imgBox {
	margin: 0 0 15px;
}
#side .sideTopBox p {
	line-height: 1.6;
	color: #000;
}
#side .sideTopBox .dtlBtn {
	display: block;
	text-align: center;
	color: #fff;
	background: url(img/arrow_white.png) right 10px center no-repeat #02ade4;
	background-size: 6px auto;
	padding: 8px 30px;
	margin: 20px 0 0;
	border-radius: 20px;
}


#side .sideBox {
	margin: 0 0 30px;
	border-top: 2px solid #acaeb7;
}
#side .sideBox .sttl {
	font-size: 1.5rem;
	font-weight: normal;
	/* background: url(img/side_line.png) no-repeat bottom left; */
}
#side .sideBox .sttl a {
	display: block;
	padding: 15px;
	font-weight: bold;
}
#side .sideBox ul {
	padding: 0;
	margin: 0;
}
#side .sideBox ul li {
	background-image: none;
	padding: 0;
	position: relative;
}
#side .sideBox ul li::before {
	content: "";
	background:linear-gradient(to right, rgba(187,187,187,1), rgba(187,187,187,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
  background-size:6px 1px;
	width: 100%;
  height: 1px;
	position: absolute;
	top: 0;
	left: 0;
}
#side .sideBox ul li a {
	display: block;
	padding: 10px 25px 10px 12px;
	font-size: 1.3rem;
	background: url(img/arrow_gray.png) no-repeat right 10px center;
	background-size: 5px auto;
	text-decoration: none;
}
#side .sideBox ul li a:hover {
	opacity: 0.6;
	text-decoration: none;
}
#side .sideBox .subList {
margin: 0;
}
#side .sideBox .subList li {
	margin: 0;
}
#side .sideBox .subList li a {
	display: block;
	padding: 10px 28px 10px 30px;
	position: relative;
}
#side .sideBox .subList li a::before {
	content: "└";
	margin: 0;
	position: absolute;
	width: 10px;
	height: 10px;
	left: 10px;
	top: 11px;
}



/*--------------------------------------
Footer
---------------------------------------*/
footer {
	margin: 12rem 0 0;
	padding: 0;
	background-color: #f7f7f7;
	position: relative;
}
footer::before {
	content: '';
	width:  100%;
	height: 65px;
	background: url(img/footer-bk.png) no-repeat;
	background-size: cover;
	position: absolute;
	top: -65px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
footer .areaInner {
	width: 100%;
	padding: 4rem 0;
}
footer .areaInner .inner {
	position: relative;
	width: 1100px;
	margin: 0 auto;
}
footer .areaInner .logo {
	width: auto;
	margin: 0 auto 5.0rem;
}
footer .areaInner .logo a {
	display: block;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	color: #333;
	text-decoration: none;
}
footer .areaInner .logo a:hover {
	opacity: 0.6;
}
footer .areaInner .footBox {
	margin: 0 0 3.0rem 0;
}
footer .areaInner .footBox .sttl {
	border-bottom: 1px solid #333;
	padding: 0 0 1.0rem 0;
	margin: 0 0 1.4rem 0;
}
footer .areaInner .footBox .sttl a {
	display: block;
	font-size: 1.6rem;
	/* font-weight: bold; */
	color: #333;
	background: url("img/foot_arrow.png") left center no-repeat;
	background-size: 11px auto;
	border: none;
	padding: 0.3rem 0 0.3rem 2.0rem;
	margin: 0;
}
footer .areaInner .footBox .sttl a:hover {
	text-decoration: none;
	opacity: 0.6;
}

footer .footBox ul {
	padding: 0 2.0rem;
}
footer .areaInner .footBox .accChild {
	padding: 0;
	box-sizing: border-box;
}
footer .areaInner .footBox .accChild .sp {
  display: none;
}
footer .areaInner .footBox .accChild li.subCat {
	width: 22%;
	margin: 0 4% 0.8rem 0;
}
footer .areaInner .footBox .accChild li.subCat:nth-of-type(4n + 1) {
	margin: 0 0 0.8rem 0;
}
footer .areaInner .footBox .accChild li.subCat a {
	display: inline-block;
	background: url("img/arrow_black.png") 5px 8px no-repeat;
	background-size: 5px auto;
	padding: 0 0 0 1.5rem;
}
footer .areaInner .footBox .accChild li.subCat::after {
	content: "";
}
footer .areaInner .footBox .accChild .pc + li::before {
	/* content: "　|　"; */
	letter-spacing: 0;
	color: #a40024;
}
footer .areaInner .footBox .accChild .pc + li::before {
	/* content: "|　"; */
	letter-spacing: 0;
	color: #a40024;
}
footer .areaInner .footBox .accChild .pc + li.subCat::before {
	content: "";
}
footer .areaInner .footBox .accChild li {
	float: left;
	display: inline-block;
	margin: 0 0 0 0;
}
footer .areaInner .footBox .accChild li a {
	font-size: 1.3rem;
	font-weight: normal;
	color: #333;
	padding: 0;
}
footer .areaInner .footBox .accChild .subList {
	padding: 0 0 0 1.5rem;
	margin: 0 0 0 0;
}
footer .areaInner .footBox .accChild .subList li {
	padding: 0.2rem 0 0 0;
	display: block;
	float: none;
	margin: 0;
	position: relative;
}
footer .areaInner .footBox .accChild .subList li::before {
	content: "└";
	color: #333;
	position: absolute;
	top: 2px;
	left: 0;
	margin-right: 0.4rem;
}
footer .areaInner .footBox .accChild .subList li a {
	font-size:1.3rem;
	background-image: none;
	padding: 0 0 0 1.8rem;
}
/*noticeArea*/
footer .areaInner .noticeArea {
	box-sizing: border-box;
	width: 100%;
	background: #e7f4f7;
	border-radius: 0;
	padding: 2.5rem 3.0rem;
	margin: 3.6rem auto 0;
}
footer .areaInner .noticeArea p {
	font-size:1.2rem;
	color: #555;
	margin: 0;
}
footer .areaInner p.ucp {
	font-size: 1.2rem;
	line-height: 1.4;
	text-align: center;
	color: #333;
	margin: 2.5rem auto 0;
}
footer .botArea {
	background-color: #faf8d4;
	color: #333333;
}
footer .botArea .inner {
	width: 1100px;
	padding: 0.9rem 4.5rem;
	margin: 0 auto;
}
footer .botArea .inner.cf {
	content: none;
}
footer p.sitemap a {
	font-size: 1.2rem;
	line-height: 1.3;
	text-align: right;
	float: right;
	padding: 0.5rem 0;
	text-decoration: underline;
	color: #333333;
}
footer p.sitemap a:hover {
	text-decoration: none;
}
footer p.copy {
	font-size: 1.2rem;
	line-height: 1.3;
	text-align: left;
	float: left;
	padding: 0.5rem 0;
	max-width: 900px;
}
footer p.copy a {
    color: #333333;
}
footer a {
	color: #333;
	text-decoration: none;
}
footer a:hover {
	/* text-decoration: underline; */
}



/*--------------------------------------
　PageTop
---------------------------------------*/

#page-top {
	position: fixed;
	bottom: 6.5rem;
	right: 3rem;
	z-index: 100;
	width: 60px;
}
#page-top img:hover {
	opacity: 0.6;
}



/* ================== */
/*  サイトマップ　　　*/
/* ================== */
#contents #page.mappage {
}
#contents #page.mappage h2 {
	margin: 68px auto 28px;
}
#contents #page.mappage h2 a {
}
#contents #page.mappage h2 a:hover {
	text-decoration: none;
	opacity: 0.6;
}
#contents #page.mappage ul {
	margin: 0 auto 0.6rem;
}
#contents #page.mappage ul li {
	padding: 0 0 0.6rem 2.2rem;
}
#contents #page.mappage ul.subList li:last-child {
	margin: 0 0 1.0rem;
}
#contents #page.mappage ul li a {
}
#contents #page.mappage ul li a:hover {
	opacity: 0.6;
}
#contents #page.mappage ul.subList li a {
	font-size: 1.4rem;
}




/* ================== */
/*  メインコンテンツ　*/
/* ================== */

#index a, #category a, #page a {
}
#index a:hover, #category a:hover, #page a:hover {
}

#index h1,#index h2,#index h3,#index h4,#index h5,#index h6,#index h7 {
	max-width: 1100px;
	margin: 0 auto;
}

#index h2{
	font-size: 3.2rem;
	color: #333333;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	padding: 5.5rem 1.5rem 3.5rem;
	margin: 0 auto 3rem;
	position: relative;
}

#category h1,
#page h1 {
	font-size: 3.2rem;
	color: #e55c40;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	padding: 5.5rem 1.5rem 3.5rem;
	margin: 0 auto 3rem;
	position: relative;
}
#index h2 a{
	color: #333333;
	display: block;
    text-align: center;
    background: url(img/arrow_black.png) right 150px center no-repeat;
    background-size: 8px auto;
}

#category h1 a,
#page h1 a {
	color: #e55c40;
	display: block;
    text-align: center;
    background: url(img/arrow_black.png) right 150px center no-repeat;
    background-size: 8px auto;
}
#category h1,
#page h1 {
}
#index h2::before,
#category h1::before,
#page h1::before {
	content: "";
	width: 73px;
	height: 33px;
	background: url(img/h2-icon.png) center no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#index h2::after,
#category h1::after,
#page h1::after {
	content: "";
	width: 684px;
	height: 23px;
	background: url(img/h2-line.png) no-repeat bottom center;
	background-size: contain;
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
}

#contents h2.addParts__area__title,
#contents h2.addParts__area__title2,
#category h2,
#page h2 {
	font-size: 3.2rem;
	/* font-weight: bold; */
	margin: 98px auto 38px;
	line-height: 1.4;
	padding: 2.4rem 15rem;
	background: #e9f5f8;
	position: relative;
	color: #333333;
	text-align: center;
}
#contents h2.addParts__area__title a,
#category h2 a,
#page h2 a {
	color: #333333;
	display: block;
}
#category h2::before,
#page h2::before {
	content: "";
	width: 104px;
	height: 104px;
	background: url("img/h3_circle.png") center no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -40px;
	left: 36px;
}
#contents h2.addParts__area__title::before{
    content: "";
	width: 177px;
	height: 110px;
	background: url("img/h3_circle1.png") center no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -40px;
	left: 36px;
    margin: 0;
}
#contents h2.addParts__area__title2::before{
    content: "";
	width: 177px;
	height: 110px;
	background: url("img/h3_circle2.png") center no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -40px;
	left: 36px;
    margin: 0;
}
#category h2::after,
#page h2::after {
	content: "Tsukuba";
	font-family: 'Bad Script', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-weight: bold;
	font-size: 3.8rem;
	color: #ff7350;
	text-shadow: 0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;
	width: 140px;
	text-align: center;
	height: 40px;
	position: absolute;
	left: 14px;
	top: -15px;
	-webkit-transform: rotate(-15deg);
	transform: rotate(-15deg);
	letter-spacing: 2px;
}
.addParts__area__title-st{
    color: #e55c40;
    border: none;
}

#category h2::after,
#page h2::after {
}

#index h4,
#category h3,
#page h3 {
	font-size: 2.5rem;
	font-weight: bold;
	margin: 5rem auto 3rem;
	padding: 0 1.5rem;
	line-height: 1.5;
	text-align: left;
	color: #02ade4;
	border-bottom: dotted 3px #02ade4;
}
#index h4 a,
#category h3 a,
#page h3 a {
	color: #02ade4;
	display: inline-block;
}
#index h5, #category h6,
#category h4, #category h5, #category h6,
#page h4, #page h5, #page h6 {
	font-size: 2.0rem;
	font-weight: normal;
	line-height: 1.5;
	padding: 0 2rem 1.3rem 2rem;
	margin: 4rem auto 3rem;
	position: relative;
	color: #333;
}
#index h5 a,
#category h6 a,
#category h4 a,
#category h5 a,
#category h6 a,
#page h4 a,
#page h5 a,
#page h6 a {
	color: #333;
	display: block;
}
#index h5::after, #category h6::after,
#category h4::after, #category h5::after, #category h6::after,
#page h4::after, #page h5::after, #page h6::after {
	content: "";
	background:linear-gradient(to right, rgba(51,51,51,1), rgba(51,51,51,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
  background-size:6px 1px;
	width: 100%;
  height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
}
.sitemap h2 a {
	color: #333;
}



/*--------------------------------------
　list
---------------------------------------*/
#contents ul {
	max-width: 1100px;
	margin: 25px auto 25px;
	padding: 10px 10px 0;
}
#contents ul li {
	padding: 0 0 6px 30px;
	position: relative;
}
#contents ul li::before {
	content: '';
	display: block;
	background-color: #e55c40;
	width: 10px;
	height: 10px;
	border-radius: 50px;
	position: absolute;
	top: 8px;
	left: 0;
}
#contents ul li a,
#contents ol li a  {
	text-decoration: underline;
}
#contents ul li a:hover,
#contents ol li a:hover  {
	opacity: 1;
	text-decoration: none;
}
#contents ol {
	max-width: 1100px;
	margin: 25px auto 25px;
	padding: 10px 10px 0;
}
#contents ol li {
	padding: 2px 0 2px 30px;
	list-style: none;
	position: relative;
	counter-increment: number;
}
#contents ol li::before {
	display: block;
	background-color: #53b6c0;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 3px;
	left: 0;
	color: #fff;
	text-align: center;
	line-height: 1.7;
	font-weight: bold;
	font-size: 1.2rem;
}
#contents ol li:nth-child(-n + 9)::before {
	content: counter(number);
}
#contents ol li:nth-child(n + 10)::before {
	content: counter(number);
}

/* ul,ol reset */
#contents .addParts01  ul, #contents .addParts01  ol,
#contents .addParts02  ul, #contents .addParts02  ol,
#contents .addParts03  ul, #contents .addParts03  ol,
#contents .float-wrap  ul, #contents .float-wrap  ol,
#contents .box-wrap  ul, #contents .box-wrap  ol,
#contents .frame  ul, #contents .frame  ol {
	padding: 0;
	margin: 0;
}
#contents .addParts01  ul li, #contents .addParts01  ol li,
#contents .addParts02  ul li, #contents .addParts02  ol li,
#contents .addParts03  ul li, #contents .addParts03  ol li,
#contents .float-wrap  ul li, #contents .float-wrap  ol li,
#contents .box-wrap  ul li, #contents .box-wrap  ol li,
#contents .frame  ul li, #contents .frame  ol li {
	padding: 0;
}
#contents .addParts01  ul li::before, #contents .addParts01  ol li::before,
#contents .addParts02  ul li::before, #contents .addParts02  ol li::before,
#contents .addParts03  ul li::before, #contents .addParts03  ol li::before,
#contents .float-wrap  ul li::before, #contents .float-wrap  ol li::before,
#contents .box-wrap  ul li::before, #contents .box-wrap  ol li::before,
#contents .frame  ul li::before, #contents .frame  ol li::before {
	content: none;
	display: inline;
	width: auto;
	height: auto;
	min-width: initial;
	min-width: auto;
	min-height: initial;
	min-height: auto;
	font-size: 1.6rem;
	line-height: 1.4;
	letter-spacing: 0.1em;
	color: #000;
	background: none;
	border: none;
	border-radius: 0;
	box-shadow: none;
	text-align: left;
	text-shadow: none;
	text-decoration: none;
	padding: 0;
	margin: 0;
	position: static;
}


/*--------------------------------------
　recommend,check,point
---------------------------------------*/
#index .recommend, #category .recommend, #page .recommend,
#index .check, #category .check, #page .check,
#index .point, #category .point, #page .point,
#index .rank, #category .rank, #page .rank {
	display: block;
	font-weight: normal;
}
#index .recommend a, #category .recommend a, #page .recommend a,
#index .check a, #category .check a, #page .check a,
#index .point a, #category .point a, #page .point a,
#index .rank a, #category .rank a, #page .rank a {
	display: block;
	font-size: 100%;
}
#index .recommend::before, #category .recommend::before, #page .recommend::before,
#index .check::before, #category .check::before, #page .check::before,
#index .point::before, #category .point::before, #page .point::before,
#index .rank::before, #category .rank::before, #page .rank::before {
	z-index: 0;
	background: none;
	box-shadow: 0px 0px 0px;
}
#index .recommend::after, #category .recommend::after, #page .recommend::after,
#index .check::after, #category .check::after, #page .check::after,
#index .point::after, #category .point::after, #page .point::after,
#index .rank::after, #category .rank::after, #page .rank::after {
	z-index: 0;
	background: none;
	box-shadow: 0px 0px 0px;
}
/*recommend*/
#contents .recommend {
	width: 100%;
	max-width: 1100px;
	font-size: 2.2rem;
	line-height: 1.4;
	color: #53b6c0;
	border-bottom: solid 1px #53b6c0;
	padding: 2.5rem 2.0rem 2.5rem 9.4rem;
	margin: 3.0rem auto 2.0rem;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#contents .recommend::before {
	content: "おすすめ";
	width: 77px;
	height: 49px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 49px;
	letter-spacing: 0;
	text-align: center;
	color: #53b6c0;
	background: url("img/rank_recommend.png") 0 0 no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	/*-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);*/
	bottom: 0;
	margin: auto 0;
}
#contents .recommend a {
	color: #5c7c87;
	text-decoration: underline;
}
/*check*/
#contents .check {
	width: 100%;
	max-width: 1100px;
	font-size: 2.2rem;
	line-height: 1.4;
	color: #9b9b9b;
	border-bottom: solid 1px #969696;
	padding: 2.5rem 2.0rem 2.5rem 9.4rem;
	margin: 3.0rem auto 2.0rem;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#contents .check::before {
	content: "CHECK";
	width: 77px;
	height: 49px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 49px;
	letter-spacing: 1px;
	text-align: center;
	color: #969696;
	background: url("img/rank_check.png") 0 0 no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	/*-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);*/
	bottom: 0;
	margin: auto 0;
}
#contents .check a {
	color: #566556;
	text-decoration: underline;
}
/*point*/
#contents .point,
#contents .recommend,
#contents .check {
	font-family: 'Kosugi Maru', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
#contents .point {
	width: 100%;
	max-width: 1100px;
	font-size: 2.2rem;
	line-height: 1.4;
	color: #e55c40;
	border-bottom: solid 1px #e55c40;
	padding: 2.5rem 2.0rem 2.5rem 9.4rem;
	margin: 3.0rem auto 2.0rem;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#contents .point::before {
	content: "POINT";
	width: 77px;
	height: 49px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 49px;
	letter-spacing: 1px;
	text-align: center;
	color: #e55c40;
	background: url("img/rank_point.png") 0 0 no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	/*-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);*/
	margin: auto 0;
}
#contents .point a {
	color: #7c6853;
	text-decoration: underline;
}
/*rank_wrap*/
#contents .rank_wrap {
	counter-reset: num;
	margin: 3.0rem auto 2.0rem;
}
#contents .rank_wrap .rank {
	width: 100%;
	max-width: 1100px;
	/*min-height: 98px;*/
	height: 98px;
	font-size: 2.2rem;
	line-height: 1.4;
	color: #333;
	border-bottom: solid 1px #333;
	background: url("img/color_black.png") 36px 30px no-repeat;
	background-size: 1px 100%;
	padding: 2.0rem 2.0rem 2.0rem 9.4rem;
	margin: 3.0rem auto 2.0rem;
	position: relative;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#contents .rank_wrap .rank::before {
	content: counter(num, decimal-leading-zero);
	counter-increment: num;
	width: 74px;
	height: 74px;
	font-size: 2.2rem;
	font-weight: normal;
	line-height: 74px;
	letter-spacing: 0;
	text-align: center;
	color: #333;
	background: url("img/rank.png") 0 0 no-repeat;
	background-size: 100%;
	position: absolute;
	top: 13px;
	left: 0;
	/*-webkit-transform: translate(0%, -50%);
	transform: translate(0%, -50%);*/
}
#contents .rank a {
	color: #333;
	text-decoration: underline;
}
/*recommend_number_wrap*/
#contents .recommend_number_wrap {
	counter-reset: num;
	margin: 3.0rem auto 2.0rem;
}
#contents .recommend_number_wrap .recommend {
}
#contents .recommend_number_wrap .recommend::before {
	display: block;
	font-size: 1.2rem;
	line-height: 1;
	padding: 2.0rem 0;
}
#contents .recommend_number_wrap .recommend::after {
	content: counter(num, decimal-leading-zero);
	counter-increment: num;
	width: 74px;
	font-size: 2.2rem;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #5c7c87;
	position: absolute;
	top: 48px;
	left: 0;
}
/*check_number_wrap*/
#contents .check_number_wrap {
	counter-reset: num;
	margin: 3.0rem auto 2.0rem;
}
#contents .check_number_wrap .check {
}
#contents .check_number_wrap .check::before {
	display: block;
	font-size: 1.2rem;
	line-height: 1;
	padding: 2.0rem 0;
}
#contents .check_number_wrap .check::after {
	content: counter(num, decimal-leading-zero);
	counter-increment: num;
	width: 74px;
	font-size: 2.2rem;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #566556;
	position: absolute;
	top: 48px;
	left: 0;
}
/*point_number_wrap*/
#contents .point_number_wrap {
	counter-reset: num;
	margin: 3.0rem auto 2.0rem;
}
#contents .point_number_wrap .point {
}
#contents .point_number_wrap .point::before {
	display: block;
	font-size: 1.2rem;
	line-height: 1;
	padding: 2.0rem 0;
}
#contents .point_number_wrap .point::after {
	content: counter(num, decimal-leading-zero);
	counter-increment: num;
	width: 74px;
	font-size: 2.2rem;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	color: #7c6853;
	position: absolute;
	top: 48px;
	left: 0;
}



#contents .caption {
    margin: .8rem 0 0.8rem;
    font-size: 1.0rem;
    line-height: 1.3;
    word-break: break-all;
    color: #999;
    text-align: center;
}


/*--------------------------------------
　float img
---------------------------------------*/

.float-wrap {
	max-width: 1100px;
	margin: 5rem auto;
	box-sizing: border-box;
}
.float-wrap img {
    width: 100%;
}
.float-wrap .flame {
    position: relative;
}
.float-wrap .fl {
	width: 350px;
	margin: 0 30px 10px 0;
	text-align: center;
}
.float-wrap .fr {
	width: 350px;
	margin: 0 0 10px 30px;
	text-align: center;
}
.float-wrap .ct {
	width: 500px;
	margin: 0 auto 2rem;
	text-align: center;
}
.float-wrap.ct .catch {
    text-align: center;
}
#contents .float-wrap .catch {
    color: #e55c40;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.6;
	margin: 0 0 2rem;
}


/*  btns*/
#contents .btn-internal,
#contents .btn-web,
#index .accordion{
	max-width: 100%;
	text-align: center;
	margin: 30px auto;
	padding: 0;
	width: 450px;
	position: relative;
	cursor: pointer;
}
#contents .btn-internal:after,
#contents .btn-web:after {
	content: '';
	display: block;
	width: calc(100% - 1px);
	height: calc(100% - 1px);
	border: 1px solid #45cea9;
	border-width: 0 1px 1px 0;
	border-radius: 45px;
	position: absolute;
	right: -7px;
	bottom: -7px;
	transition: 0.2s;
}
#contents .btn-web:after {
	border-color: #e55c40;
}
#contents .btn-internal:hover:after,
#contents .btn-web:hover:after {
	content: '';
	border: 1px solid #fff;
	border-width: 0 1px 1px 0;
}
#contents .btn-internal a:hover,
#contents .btn-web a:hover {
	opacity: inherit;
}
#contents .btn-internal:hover a,
#contents .btn-web:hover a {
  -webkit-transform: translate(7px,7px) translateZ(0);
  -moz-transform: translate(7px,7px) translateZ(0);
  -ms-transform: translate(7px,7px) translateZ(0);
  -o-transform: translate(7px,7px) translateZ(0);
  transform: translate(7px,7px) translateZ(0);
  box-shadow: none;
}
.btn-internal a {
    background: #45cea9 url(img/arrow_white_down.png) no-repeat right 1.5rem center;
	display: block;
	padding: 22px 45px 22px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	border-radius: 45px;
	transition: 0.2s;
	-webkit-transform: translate(0px,0px) translateZ(0);
	-moz-transform: translate(0px,0px) translateZ(0);
	-ms-transform: translate(0px,0px) translateZ(0);
	-o-transform: translate(0px,0px) translateZ(0);
	transform: translate(0px,0px) translateZ(0);
	border-spacing: 0;
	border-collapse: separate;
	width: 100%;
	z-index: 10;
	position: relative;
	box-shadow: 6px 6px #fff;
}
.btn-web a {
	display: block;
	padding: 22px 45px 22px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	border-radius: 45px;
	transition: 0.2s;
	-webkit-transform: translate(0px,0px) translateZ(0);
	-moz-transform: translate(0px,0px) translateZ(0);
	-ms-transform: translate(0px,0px) translateZ(0);
	-o-transform: translate(0px,0px) translateZ(0);
	transform: translate(0px,0px) translateZ(0);
	border-spacing: 0;
	border-collapse: separate;
	width: 100%;
	z-index: 10;
	position: relative;
	box-shadow: 6px 6px #fff;
}
.btn-internal a {
	padding: 2rem 4.5rem;
    background: #45cea9 url(img/arrow_white_down.png) no-repeat right 1.5rem center;
    background-size: 12px;
}
.btn-internal2 a {
	padding: 2rem 4.5rem;
    background: #45cea9 url(img/arrow_white.png) no-repeat right 1.5rem center;
    background-size: 12px;
}
.btn-web a {
	background: #e55c40 url(img/arrow_white.png) no-repeat right 1.5rem center;
}



#contents .btn-link{
	max-width: 1100px;
	margin: 30px auto;
	text-align: right;
}
.btn-link a {
	position: relative;
	display: inline-block;
	padding: 5px 0 4px 26px;
	background: url(img/ico_arrow.png) left top 0.6rem no-repeat;
	background-size: 16px auto;
	line-height: 1.3;
}

.btn-link a::before{
}
.btn-link a:hover{
	opacity: 0.6;
	text-decoration: none;
}
.btn-tel {
	display: none;
}



/* ================== */
/*  テーブル　　　　　*/
/* ================== */
#contents .table-layout {
	padding: 0;
}
#contents table {
	width: 100%;
	max-width: 1100px;
	table-layout: fixed;
	margin: 40px auto 40px;
	border: solid 2px #fff;
}
#contents table th {
	width: 22%;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
	color: #333333;
	background: #f3f4f5;
	border: solid 2px #fff;
	padding: 14px 16px;
}
#contents table td {
	line-height: 2.4rem;
	padding: 1.4rem 3.5rem;
	background: #f9f9f9;
	color: #333;
	font-size: 1.4rem;
	text-align: left;
	word-wrap: break-word;
	border: solid 2px #fff;
}



/*--------------------------------------
　box-wrap
---------------------------------------*/
#contents .box-wrap {
	width: 100%;
	max-width: 1100px;
	margin: 100px auto;
}
#contents .box-wrap .box {
	display: block;
	width: 400px;
	margin: 0 0 0;
	box-sizing: border-box;
	float: left;
	position: relative;
}
#contents .box-wrap .box:nth-child(even) {
	float: right;
}
#contents .box-wrap .box:nth-child(even)::before {
	content: "";
	width: 2px;
	height: 100%;
	background: url("img/box-wrap_dotline.png") repeat-y;
	position: absolute;
	top: 0;
	left: -32px;
}
#contents .box-wrap .box.type-b::before {
	content: none;
}
#contents .box-wrap .box:nth-child(n+3) {
  margin-top: 25px;
}
#contents .box-wrap .box .permalink {
	display: none;
}
#contents .box-wrap .box .thumb {
	position: relative;
}


/*box-head*/
#index .box-wrap .box-head, #category .box-wrap .box-head, #page .box-wrap .box-head {
	display: block;
}
#index .box-wrap .box-head a, #category .box-wrap .box-head a, #page .box-wrap .box-head a {
	display: block;
	font-size: 100%;
}
#index .box-wrap .box-head a:hover, #category .box-wrap .box-head a:hover, #page .box-wrap .box-head a:hover {
	color: #333;
	text-decoration: none;
}
#index .box-wrap .box-head::after, #category .box-wrap .box-head::after, #page .box-wrap .box-head::after {
	content: none;
}

#contents .positioning_map .group-l .btn-map{
    left:auto;
    right:60px;
    top:60px;
}

#contents .positioning_map .group-r .btn-map{
    position:absolute;
    left:60px;
    bottom:60px;
}

#contents .box-wrap .box p {
	margin: 0;
	font-size: 1.5rem;
}
#contents .box-wrap .box p + p {
	margin-top: 1rem;
}

/*type-a*/
#contents .box-wrap .type-a {
}
#contents .box-wrap .type-a .thumb {
	position: relative;
}
#contents .box-wrap .type-a .thumb::before {
	content: "";
	width: 109px;
	height: 108px;
	background: url("img/box-wrap_a_circle.png") no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -30px;
	left: 20px;
}
#contents .box-wrap .type-a .box-head {
	font-size: 2.0rem;
	line-height: 1.4;
	font-weight: 500;
	color: #333;
	padding: 25px 10px;
	margin: 0 0 1.5rem;
}
#contents .box-wrap .type-a .box-head a {
	display: block;
	width: 100%;
	font-size: 2.0rem;
	line-height: 1.4;
	color: #333;
	background: url("img/arrow_black.png") right center no-repeat;
	background-size: 8px auto;
	padding: 0 20px 0 0;
	position: relative;
}
#contents .box-wrap .type-a .box-head a:hover {
	opacity: 0.6;
}
#contents .box-wrap .type-a .box-body {
}
#contents .box-wrap .type-a .box-body .smallPic {
	width: 100px;
	float: left;
}
#contents .box-wrap .type-a .box-body p {
	width: 264px;
	float: right;
}
/*type-b*/
#contents .box-wrap .type-b {
	border-top: 1px solid #53b6c0;
	padding: 15px 10px 0;
}
#contents .box-wrap .type-b:nth-last-child(2),
#contents .box-wrap .type-b:last-child {
	border-top: 1px solid #53b6c0;
	border-bottom: 1px solid #53b6c0;
	padding: 15px 10px 25px;
}
#contents .box-wrap .type-b:nth-of-type(2n) {
	margin-left: 3rem;
}
#contents .box-wrap .type-b .box-head-area {
	display: table;
	margin: 0 0 15px;
}
#contents .box-wrap .type-b .thumb {
	display: table-cell;
	vertical-align: middle;
	width: 90px;
	position: relative;
}
#contents .box-wrap .type-b .thumb img {
	/* border-radius: 100px; */
}
@media all and (-ms-high-contrast:none) {
	#contents .box-wrap .type-b .thumb img {
		width: 90px;
	}
}
#contents .box-wrap .type-b .box-head {
	display: table-cell;
	vertical-align: middle;
	font-size: 2.4rem;
	line-height: 1.4;
	color: #53b6c0;
	border-radius: 8px 8px 0 0;
	padding: 0 0 0 25px;
	font-family: 'Kosugi Maru', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
#contents .box-wrap .type-b .box-head h2,
#contents .box-wrap .type-b .box-head h3,
#contents .box-wrap .type-b .box-head h4,
#contents .box-wrap .type-b .box-head h5 {
	font-size: 2.4rem;
	color: #53b6c0;
	letter-spacing: normal;
}
#contents .box-wrap .type-b .box-head a {
	display: block;
	width: 100%;
	line-height: 1.4;
	color: #53b6c0;
	background: url("img/arrow_blue.png") right center no-repeat;
	background-size: 8px auto;
	padding: 0 20px 0 0;
	position: relative;
}
#contents .box-wrap .type-b .box-head a:hover {
	opacity: 0.6;
}
#contents .box-wrap .type-b .caption {
	margin: 25px 0 0;
}



/*--------------------------------------
　frame-wrap
---------------------------------------*/
#contents .frame-wrap {
	width: 100%;
	max-width: 1100px;
	margin: 100px auto;
}
#contents .frame-wrap .inner {
	margin: 0 auto;
}
#contents .frame {
	display: block;
	box-sizing: border-box;
	width: 263px;
	margin: 0 0 0 20px;
	background-color: #fff;
	float: left;
}
#contents .frame-wrap .frame:first-child {
	margin: 0	0	0	0;
}
#contents .frame-wrap .frame:nth-child(3n+1) {
	margin: 0	0	0	0;
}
#contents .frame-wrap .frame:nth-child(n+4) {
  margin-top: 20px;
}
#contents .frame-wrap .frame a {
	display: block;
	text-decoration: none;
}

/*frame-head*/
#index .frame .frame-head, #category .frame .frame-head, #page .frame .frame-head {
	display: block;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
}
#index .frame .frame-head a, #category .frame .frame-head a, #page .frame .frame-head a {
	width: auto;
	font-size: 100%;
	text-decoration: none;
}
#index .frame .frame-head a:hover, #category .frame .frame-head a:hover, #page .frame .frame-head a:hover {
	opacity: 0.6;
}
#contents .frame .frame-head p {
	margin: 0;
}
#contents .frame .frame-body {
	padding: 0 20px 35px;
}
#contents .frame .frame-body .frame-catch {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5;
	color: #000;
	margin: 0 0 15px;
}
#contents .frame .frame-body p {
	margin: 0;
}
#contents .frame .thumb {
}
#contents .frame p.caption {
	margin: 10px 15px 0;
}

/*type-a*/
#contents .frame-wrap .type-a {
	background: #faf8d4;
}
#contents .frame-wrap .type-a .frame-catch {
	font-size: 1.5rem;
	line-height: 1.5;
	text-align: center;
	color: #8c8200;
	border-top: 5px solid #e6dc14;
	padding: 20px 25px 20px;
	position: relative;
	font-weight: normal;
	letter-spacing: normal;
}
#contents .frame-wrap .type-a .frame-catch::before {
	content: "";
	background:linear-gradient(to right, rgba(187,187,187,1), rgba(187,187,187,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
  background-size:6px 1px;
	width: 100%;
  height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	top: inherit;
	z-index: inherit;
}
#contents .frame-wrap .type-a .frame-catch::after {
	content: "";
	width: 19px;
  height: 11px;
	background:url("img/frame-wrap_baloon.png") no-repeat;
  background-size:100% auto;
	position: absolute;
	left: calc(50% - 10px);
	bottom: -10px;
	top: inherit;
	right: inherit;
	z-index: inherit;
	transform: none;
}
#contents .frame-wrap .type-a .frame-head {
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: normal;
	color: #ff7350;
	padding: 18px;
	font-family: 'Kosugi Maru', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
#contents .frame-wrap .type-a .frame-head h2,
#contents .frame-wrap .type-a .frame-head h3,
#contents .frame-wrap .type-a .frame-head h4,
#contents .frame-wrap .type-a .frame-head h5 {
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: bold;
	color: #ff7350;
	letter-spacing: normal;
}
#contents .frame-wrap .type-a .frame-head {
	display: block;
	width: 100%;
	background-size: 8px auto;
	padding: 0 20px 0 0;
	position: relative;
	color: #333333;
}
#contents .frame-wrap .type-a .frame-head .type-a-st{
    color: #e55c40;
    font-weight: bold;
    border: none;
}
#contents .frame-body--liveability_img {
    text-align: center;
    margin-bottom: 1rem;
}
#contents .frame-wrap .type-a .thumb {
	width: 200px;
	margin: 0 auto;
}
#contents .frame-wrap .type-a .caption {
	text-align: center;
	padding: 0 20px;
}
#contents .frame-wrap .type-a ul.icoArea {
	width: 224px;
	text-align: center;
	margin: 25px auto;
}
#contents .frame-wrap .type-a ul.icoArea li {
	width: 68px;
	margin: 0 0 0 10px;
	float: left;
}
#contents .frame-wrap .type-a ul.icoArea li:first-child {
	margin: 0	0	0	0;
}
#contents .frame-wrap .type-a ul.icoArea li:nth-child(3n+1) {
	margin: 0	0	0	0;
}
#contents .frame-wrap .type-a ul.icoArea li:nth-child(n+4) {
  margin-top: 16px;
}
#contents .frame-wrap .type-a ul.icoArea .ico {
	width: 57px;
	margin: 0 auto;
}
#contents .frame-wrap .type-a ul.icoArea .icoTxt {
	display: inline-block;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	padding: 10px 0 8px;
	position: relative;
}
#contents .frame-wrap .type-a ul.icoArea .icoTxt::after {
	content: "";
	width: 100%;
	height: 2px;
	background-color: #e6dc14;
	position: absolute;
	left: 0;
	bottom: 0;
}
#contents .frame-wrap .type-a .frame-body {
	padding: 1.8rem;
}
/*type-b*/
#contents .frame-wrap .type-b {
	border: 1px solid #333;
}
#contents .frame-wrap .type-b .frame-head {
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: 500;
	padding: 20px 20px 20px;
	margin: 0 0 25px;
	position: relative;
	letter-spacing: normal;
}
#contents .frame-wrap .type-b .frame-head::after {
	content: "";
	background:linear-gradient(to right, rgba(187,187,187,1), rgba(187,187,187,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
  background-size:6px 1px;
	width: calc(100% - 20px);
  height: 1px;
	position: absolute;
	left: 10px;
	bottom: 0;
	top: inherit;
	right: inherit;
	z-index: inherit;
	transform: none;
}
#contents .frame-wrap .type-b .frame-head a {
	display: block;
	width: 100%;
	background: url("img/arrow_black.png") right center no-repeat;
	background-size: 8px auto;
	padding: 0 20px 0 0;
	position: relative;
	letter-spacing: normal;
}
#contents .frame-wrap .type-b .frame-head a:hover {
	opacity: 0.6;
}
#contents .frame-wrap .type-b .thumb {
	width: 200px;
	margin: 0 auto;
}
#contents .frame-wrap .type-b .caption {
	text-align: center;
	padding: 0 20px;
}
#contents .frame-wrap .type-b .frame-body {
	margin: 25px auto 0;
}
#contents .frame-wrap .type-b table {
	box-sizing: border-box;
	width: 100%;
	letter-spacing: 0;
	margin: 20px auto;
}
#contents .frame-wrap .type-b table th {
	width: 33%;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 1.4;
	padding: 12px 10px;
}
#contents .frame-wrap .type-b table td {
	font-size: 1.4rem;
	line-height: 1.4;
	padding: 12px 10px;
	word-wrap: break-word;
}
#contents .frame-wrap .type-b table:last-of-type {
	margin-bottom: 0;
}

/*type-c*/
#contents .frame-wrap .type-c {
	background-color: #f5f5dc;
}
#contents .frame-wrap .type-c .eng {
	font-size: 2.6rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.06em;
	text-align: center;
	color: #fff;
  text-shadow:1px 1px 0 #333, -1px -1px 0 #333,
  -1px 1px 0 #333, 1px -1px 0 #333,
  0px 1px 0 #333,  0-1px 0 #333,
  -1px 0 0 #333, 1px 0 0 #333;
	margin: -10px 0 0;
}
#contents .frame-wrap .type-c .frame-head {
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: 500;
	border-bottom: 2px solid #fff;
	padding: 20px 20px 20px;
	margin: 0 0 25px;
	position: relative;
	letter-spacing: normal;
}
#contents .frame-wrap .type-c .frame-head a {
	display: block;
	width: 100%;
	background: url("img/arrow_black.png") right center no-repeat;
	background-size: 8px auto;
	padding: 0 20px 0 0;
	position: relative;
	letter-spacing: normal;
}
#contents .frame-wrap .type-c .frame-head a:hover {
	opacity: 0.6;
}
#contents .frame-wrap .type-c .thumb {
	width: 160px;
	margin: 0 auto 25px;
}
#contents .frame-wrap .type-c .thumb img {
	border-radius: 100px;
}


/*btn-web*/
#contents .frame .frame-body .btn-web {
	width: 85%;
	margin: 25px auto 0;
}


/*--------------------------------------
　img-box-wrapper
---------------------------------------*/
.img-box-wrapper {
	margin: 6rem auto;
	padding-right: 2rem;
}
#contents .img-box-wrapper__title {
	font-size: 3rem;
	color: #333;
	margin: 6rem auto 3rem;
	padding: 0 2rem 1rem;
	/* background: url(img/img-box_line.png) no-repeat bottom center; */
	background-size: contain;
	line-height: 1.2;
	font-family: 'Kosugi Maru', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
.img-box__body {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.img-box {
	width: calc((100% - 2.4rem)/2);
	margin: 2.3rem 0 0 2.3rem;
	text-align: center;
}
.img-box:nth-of-type(-n+2) {
	margin-top: 0;
}
.img-box:nth-of-type(2n+1) {
	margin-left: 0;
}
#contents .img-box__caption {
	text-align: left;
	margin: 1.5rem 0 0;
}

/*--------------------------------------
　lower-bottom
---------------------------------------*/
.lower-bottom {
	margin: 19rem auto 5rem;
	background: #fdfcd9;
	position: relative;
	padding: 0 2rem 4.5rem;
}
.lower-bottom::before {
    content: '';
    width: 100%;
    height: 195px;
    position: absolute;
    top: -40px;
    left: 0;
    right: 0;
    background: url(img/lower-bottom_bk.png) no-repeat top center;
    background-size: cover;
}
.lower-bottom::after {
    content: '';
    width: 100%;
    height: 60px;
    position: absolute;
    bottom: -60px;
    left: 0;
    right: 0;
    background: url(img/lower-bottom_bk2.png) no-repeat top center;
    background-size: cover;
}
#contents .lower-bottom__title {
	font-size: 3.2rem;
	color: #333333;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
	padding: 5.5rem 1.5rem 3.5rem;
	margin: 0 auto 3rem;
	position: relative;
	font-family: 'Kosugi Maru', "游ゴシック", YuGothic, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}
#contents .lower-bottom__title span{
    color: #e55c40;
}
#contents .lower-bottom__title::before {
    content: "";
    width: 73px;
    height: 33px;
    background: url(img/h2-icon.png) center no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}
#contents .lower-bottom__title::after {
    content: "";
    width: 684px;
    height: 23px;
    background: url(img/h2-line.png) no-repeat bottom center;
    background-size: contain;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
}
#contents .lower-bottom__txt--intr {
	margin: 0 auto 2.5rem;
}
.lower-bottom__map-box {
	background: #fff;
	padding: 2.3rem 2.5rem 1rem;
	text-align: center;
}
.lower-bottom__map__name-box {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 430px;
	margin: 2rem auto 0;
}
#contents .lower-bottom__map__name {
	margin: 0;
	padding-left: 4.5rem;
	width: 180px;
	flex-shrink: 0;
	text-align: left;
	position: relative
}
#contents .lower-bottom__map__name::before {
	content: '';
	width: 29px;
	height: 29px;
	background: #ff451a;
	position: absolute;
	border-radius: 50%;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto 0;
}
#contents .lower-bottom__map__name:nth-of-type(2)::before {
	background: #32c2a2;
}
.lower-bottom__body {
	margin: 3.5rem auto 0;
}
#contents .lower-bottom__body__catch {
	margin: 0 auto 3rem;
	text-align: center;
	font-size: 2.8rem;
}
.lower-bottom__box-wrapper {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	box-sizing: border-box;
}
.lower-bottom__box {
	max-width: 385px;
	background: #fff;
	padding: 2.5rem 2rem 3rem;
	box-sizing: border-box;
}
@media all and (-ms-high-contrast:none) {
	.lower-bottom__box {
		width: 385px;
	}
}
.lower-bottom__box + .lower-bottom__box {
	margin-left: 2rem;
}
#contents .lower-bottom__box__catch {
	font-size: 2rem;
	text-align: center;
	margin: 0 auto 1.5rem;
	padding: 0 4rem 1rem;
	position: relative;
	line-height: 1.3;
    font-weight: bold;
}
#contents .lower-bottom__box__catch::before,
#contents .lower-bottom__box__catch::after {
	content: '';
	width: 1px;
	height: 20px;
	position: absolute;
	background: #000;
	bottom: 1.6rem;
}
#contents .lower-bottom__box__catch::before {
	-webkit-transform: rotate(-30deg);
	transform: rotate(-30deg);
	left: 25px;
}
#contents .lower-bottom__box__catch::after {
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg);
	right: 25px;
}
#contents .lower-bottom__box__ttl {
	font-size: 2.4rem;
	color: #e55c40;
	text-align: center;
	margin: 0 auto 1.5rem;
    font-weight: bold;
}
.lower-bottom__box__img-box {
	text-align: center;
	margin: 0 auto 1.5rem;
}
#contents .lower-bottom__box__caption {
	color: #a2a2a2;
	margin: .8rem auto 0;
}
#contents .lower-bottom__box__txt {
	margin: 0 auto 1.5rem;
}
#contents .lower-bottom__box .btn-internal a{
    padding: 2rem 4.5rem;
    background: #45cea9 url(img/arrow_white.png) no-repeat right 1.5rem center;
    background-size: 8px;
}

#contents .lower-bottom .btn-web {
	width: 70%;
	margin: 3rem auto 0;
}
#contents .lower-bottom .btn-web a {
	font-size: 1.3rem;
	padding: 1.7rem;
}
/*--------------------------------------
　toc_parts
---------------------------------------*/
.toc_parts {
	background: #f5f5f5;
	margin: 5rem 0;
	padding: 4rem 5rem;
	box-sizing: border-box;
}

.toc_parts .ttl {
	padding: 0 0 0 1rem;
	font-size: 2rem;
	font-weight: bold;
	border-left: 4px solid #6e6e6e;
}

#toc {
	margin: 1.5rem 0 0 0;
	padding: 0 2rem 0;
	border-top: 1px solid #58585e;
}
#toc .chapter {
	margin: 0 0 2rem;
	counter-increment: count;
}
#toc .chapter li {
	margin: 2rem 0 0;
	padding: 0 0 0 3.5rem;
	font-size: 1.6rem;
	line-height: 1.8;
	position: relative;
}
#toc .chapter li:last-child {
	margin: 0 0 0;
}
#toc ol.chapter li:before {
	content: "0" counter(count);
	position: absolute;
	top: 14px;
	left: 0;
	transform: translate(0,-50%);
	color: #919191;
	font-size: 2rem;
	font-weight: bold;
	background: none;
	width: auto;
	height: auto;
}
#toc .chapter li a {
	font-weight: bold;
	text-decoration: none;
}
#toc .chapter li a:hover {
	opacity: .6;
}
#toc .chapter li span {
	color: #0b072b;
	font-weight: bold;
}

#toc .chapter .chapter {
  margin: 0 0 2rem 3rem;
}
#toc .chapter .chapter li {
	margin: 1rem 0 1rem;
	padding: 0 0 0 1.5rem;
}
#toc .chapter .chapter li:before {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	width: 8px;
	height: 8px;
	border-top: solid 1px #0b072b;
	border-right: solid 1px #0b072b;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}
#toc .chapter .chapter li a {
	font-weight: 400;
}
#toc .chapter .chapter li span {
	font-weight: 400;
}
#toc .chapter br { display:none; }

/*  PC END  */



@media screen and (max-width: 479px) {
/* SP */
	html,body{
		width: 100%;
		position: relative;
	}

	.pc {
		display: none!important;
	}
	.sp {
		display: block!important;
	}
	.sp_br {
		display: block;
	}
	.pc_br {
		display: none;
	}

	body {
		width: 100%;
		min-width: initial;
		min-width: auto;
		font-size: 1.4rem;
		line-height: 1.8;
	/*	overflow-x: hidden;*/
		padding-bottom: constant(safe-area-inset-bottom);
		padding-bottom: env(safe-area-inset-bottom) ;
	}
	#index > p,
	#category > p,
	#page > p {
		width: 92%;
	}
	#contents p {
		max-width: 100%;
		margin: 2.0rem auto 2.0rem;
		font-size: 1.4rem;
	}

	a:hover {
		opacity: 1;
	}




	/*--------------------------------------
	　Header
	---------------------------------------*/
	header .headTopWrap {
		background: #fff;
	}
	header .headTopArea {
		width: 100%;
		margin: 6px auto;
		padding: 0 0.5rem;
	}
	header .headTopArea .rightTxt {
		font-size: 1.2rem;
		font-weight: 400;
		line-height: 1.4;
		text-align: right;
	}



	/*--------------------------------------
	　visArea
	---------------------------------------*/
	#visArea {
		position: relative;
		z-index: 1;
		margin: 0 auto;
	}
	#visArea .mainArea {
		background-size: 200px auto, 200px auto;
		/*background-position: left bottom, right top;*/
		height: auto;
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}
	#visArea .mainArea .mainAreaInner {
		display: block;
	}
	#visArea .mainArea .siteNameArea {
		display: table;
/*		height: 100px;*/
		width: 100%;
	}
	#visArea .mainArea .siteNameAreaInner {
		display: table-cell;
		/* padding-top: 1rem; */
	}
	#visArea .mainArea .siteName {
		margin: 0 auto;
		max-width: 90%;
		text-align: center;
	}
	#visArea .mainArea .siteName img.logo--low {
		width: 150px;
	}
	#visArea .mainArea .siteNameSmall {
		font-size: 1.3rem;
		font-weight: 500;
		line-height: 1.4;
		letter-spacing: 0.03em;
		text-align: center;
		text-shadow: 2px 2px 0 #fff, -2px -2px 0 #fff, -2px 2px 0 #fff, 2px -2px 0 #fff, 0px 2px 0 #fff, 0 -2px 0 #fff, -2px 0 0 #fff, 2px 0 0 #fff;
	}
	#visArea .mainArea .siteName img.sp {
		width: 80%;
		margin: 0 auto;
	}


	/*--------------------------------------
	　spMenuBox
	---------------------------------------*/
	/*navWrap*/
	#navWrap {
		box-sizing: border-box;
		width: 100%;
		height: auto;
		background-color: #faf5d2;
		margin: 0 auto;
	}

	/*navTop*/
	#navWrap .navTop {
		width: 100%;
		background-color: #fff;
		border-bottom: 1px solid #b5b5b5;
		position: fixed;
		top: 0;
		z-index: 9999;
		display: none;
	}
	#navWrap .navTopInner {
		display: table;
		width: 100%;
		padding: 0.5rem 0;
		position: relative;
	}

	#navWrap .siteName {
		display: table-cell;
		vertical-align: middle;
		width: 90%;
		font-size: 1.15rem;
		font-weight: 500;
		line-height: 1.4;
		padding: 0 1.0rem 0 4.5rem;
		text-align: center;
		position: relative;
	}
	#navWrap .siteName::before {
		content: '';
		width: 100%;
		height: calc(100% + 1rem);
		position: absolute;
		top: -.5rem;
		left: 0;
		right: 0;
		margin: 0 auto;
		background-size: cover;
		z-index: -1;
	}
	#navWrap .siteName img {
		width: 85%;
		max-width: 122px;
	}
	#navWrap .recommendBtn {
		display: table-cell;
		vertical-align: middle;
		width: calc(50.5% - 41px);
		font-size: 1rem;
		text-align: center;
		color: #ff7350;
		padding: 0 1.2rem;
		border-right: 1px solid #bbb;
		position: relative;
		background: #fcfcd4;
		line-height: 1.4;
	}
	#navWrap .recommendBtn span {
		color: #ff7350;
		font-weight: bold;
		font-size: 1.1rem;
		border: none;
	}
	#navWrap .recommendBtn::after {
		content: '';
		position: absolute;
		right: 3px;
		bottom: 3px;
		border-top: 4px solid transparent;
		border-right: 4px solid #02ade4;
		border-bottom: 4px solid #02ade4;
		border-left: 4px solid transparent;
		z-index: 1;
	}

	#menuBtn {
		display: table-cell;
		vertical-align: middle;
		box-sizing: content-box;
		width: 21px;
		height: 50px;
		padding: 0 1.0rem;
		cursor: pointer;
		z-index: 9999;
	}
	#menuBtn .menu {
		width: 21px;
		height: 16px;
		position: absolute;
		top: calc(50% - 8px);
		outline: none;
		border: none;
		background: #000;
		background: url("img/sp_ico_menu.png") center no-repeat;
		background-size: 100%;


	}
	body.open #menuBtn .menu {
		width: 21px;
		height: 16px;
		background: url("img/sp_ico_close.png") center no-repeat;
		background-size: 100%;
	}

	/*navSp*/
	#navSp {
		position: fixed;
		top: 0;
		box-sizing: border-box;
		width: 100%;
		height: 100%;
		background-color: rgba(247, 247, 247, .94);
		z-index: 999;
		display: none;
	}
	#navSp > div {
		height: 100%;
	    overflow-y: scroll;
	    /*-webkit-overflow-scrolling: touch;*/
		}
	#navSp a {
		text-decoration: none;
	}
	/* 以下装飾など */
	#navSp .navBox {
	}
	#navSp .navBox:first-child {
		border-top: 1px solid #ccc;
		overflow: hidden;
	}
	#navSp .navBox .sttl a,
	#navSp .sitemap a{
		display: block;
		box-sizing: border-box;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.4;
		color: #000;
		background: url("img/arrow_black.png") 96% center no-repeat;
		background-size: 6px auto;
		padding: 1.5rem 9% 1.5rem 4%;
	}
	#navSp .navBox .tglMenu a{
		background: url("img/arrow_black_down.png") 96% center no-repeat;
		background-size: 10px auto;
	}
	#navSp .navBox .sttl.collapsible a {
		background: url("img/arrow_black_down.png") 96% center no-repeat;
		background-size: 10px auto;
	}
	#navSp .navBox .sttl a br {
		display: none;
	}
	#navSp .navBox .sttl.open > a {
		background: url("img/arrow_black_up.png") 96% center no-repeat;
		background-size: 10px auto;
	}
	#navSp .navBox .sttl,
	#navSp .sitemap {
		border-bottom: 1px solid #ccc;
		padding: 0;
		margin: 0;
	}
	#navSp .sitemap {
		margin: 0 0 100px;
	}
	#navSp .navBox .accChild {
		display: none;
		font-size: 1.3rem;
		padding: 0;
		box-sizing: border-box;
		background-color: rgba(255, 255, 255, 0.8);
	}
	#navSp .navBox .accChild li {
		float: none;
	}
	#navSp .navBox .accChild li a{
		display: block;
		box-sizing: border-box;
		color: #000;
		background: url("img/arrow_black.png") 95.5% center no-repeat;
		background-size: 5px auto;
		border-bottom: 1px solid #ccc;
		padding: 1.2rem 9% 1.2rem 7%;
	}
	#navSp .navBox .accChild li a:first-child {
	}

	/*navBottom*/
	#navBottom {
		display: block;
		width: 85%;
		position: relative;
		margin: 7.5% auto 7.5%;
	}
	#navBottom a {
		display: block;
		text-decoration: none;
		background: url("img/banner_bg.png") left top repeat;
		border-top: 3px solid #bee6a0;
		padding: 4%;
		position: relative;
		z-index: 1;
	}
	#navBottom a::before {
		content: "";
		background: url("img/banner_illust01.png") no-repeat;
		background-size: 100% auto;
		width: 49px;
		height: 86px;
		position: absolute;
		top: -10px;
		right: -8px;
	}
	#navBottom a::after {
		content: "";
		background: url("img/banner_illust02.png") no-repeat;
		background-size: 100% auto;
		width: 40px;
		height: 64px;
		position: absolute;
		left: -8px;
		bottom: -10px;
	}
	#navBottom .tit {
		font-size:1.5rem;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: 0.01em;
		padding: 0 15% 0 3%;
		margin-bottom: 1.0rem;
	}
	#navBottom .txtArea {
		background-color: #fff;
		padding: 0 0 6%;
	}
	#navBottom .catch {
		font-size:1.3rem;
		line-height: 1.4;
		letter-spacing: 0.01em;
		border-bottom: 1px dotted #ccc;
		padding: 3.5% 5%;
	}
	#navBottom .txt {
		padding: 3.5% 5%;
	}
	#navBottom .txt p {
		font-size:1.3rem;
		line-height: 1.5;
		letter-spacing: 0.01em;
		color: #508291;
		margin: 0;
	}
	#navBottom .btn {
		width: 75%;
		font-size: 1.3rem;
		line-height: 1;
		letter-spacing: 0.01em;
		text-align: center;
		color: #fff;
		background-color: #82b4c3;
		border-radius: 5px;
		padding: 3.5% 4% 3.2% 4%;
		margin: 0 auto;
		box-shadow: 2px 2px 0px rgba(80,130,145,1);
	}


	body.open {
		height: inherit !important;
	}




	/*--------------------------------------
	side
	---------------------------------------*/
	#side {
		display: none;
	}



	/*--------------------------------------
	pankuzu
	---------------------------------------*/
	#pankuzuWrap {
		box-sizing: border-box;
		width: 100%;
		background-color: #fff;
		padding: 1.0rem 0;
		margin: 0 auto 3.0rem;
		overflow: auto;
		white-space: nowrap;
		position: relative;
	}

	#pankuzu {
		box-sizing: border-box;
		width: 92%;
		font-size: 1.1rem;
		line-height: 1.2;
		letter-spacing: 0.05em;
		color: #333;
		padding: 0.7rem 0 0.7rem;
		margin: 0 auto;
		white-space: nowrap;
	}
	#pankuzu a {
		transition: none;
		-o-transition: none;
		-ms-transition: none;
		-moz-transition: none;
		-webkit-transition: none;
	}
	#pankuzu a:hover {
		color: #333;
		text-decoration: underline;
	}
	#pankuzu span:last-child {
		margin-right: 4%;
	}
	#pankuzu a span:last-child {
		margin-right: 0;
	}


	/*--------------------------------------
	Main Contents
	---------------------------------------*/
	#contents {
		box-sizing: border-box;
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}

	#index {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	#category,
	#page {
		float: none;
		width: 100%;
		margin: 0;
		padding: 0;
	}

	#category > h1:first-of-type,
	#page > h1:first-of-type {
		margin: 0 auto 3.5rem;
	}



	/*--------------------------------------
	　Side
	---------------------------------------*/
	#side {
		display: none;
	}



	/*--------------------------------------
	　bottomBanner
	---------------------------------------*/
	.bottomBanner {
		width: 92%;
		background: #f5f5dc;
		border: solid 1px #333;
		margin: 6.0rem auto;
		position: relative;
	}
	.bottomBanner a {
		display: block;
		padding: 1.5rem;
	}
	.bottomBanner .bnrTop {
		display: table;
		margin: 0 0 1.0rem;
	}
	.bottomBanner.imgBox {
		display: table-cell;
		vertical-align: middle;
		width: 40%;
		max-width: 90px;
	}
	.bottomBanner .catch {
		display: table-cell;
		vertical-align: middle;
		font-size: 1.5rem;
		font-weight: bold;
		text-align: left;
		line-height: 1.4;
		padding: 0 0 0 1.5rem;
	}
	#contents .bottomBanner p {
		font-size: 1.3rem;
		line-height: 1.6;
		margin: 0 0 1.5rem;
	}
	.bottomBanner .dtlBtn {
		display: block;
		font-size: 1.3rem;
		text-align: center;
		color: #fff;
		background: url(img/arrow_white.png) right 10px center no-repeat #333;
		background-size: 6px auto;
		padding: 8px 30px;
		margin: 0 auto;
	}



	/*--------------------------------------
	Footer
	---------------------------------------*/
	footer {
		width: 100%;
		margin-top: 8rem;
	}
	footer::before {
		height: 45px;
		top: -45px;
	}
	footer .areaInner {
		position: relative;
		width: 100%;
		margin: 0 auto;
		padding: 3.0rem 0 2.5rem 0;
	}
	footer .areaInner .inner {
		width: 100%;
		padding: 0;
	}
	footer .areaInner .logo {
		display: block;
		box-sizing: border-box;
		width: auto;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.4;
		text-align: center;
		color: #333;
		padding: 0 0 0.5rem 0;
		margin: 0 auto 2.0rem;
	}
	footer .areaInner .logo a {
		font-size: 1.4rem;
		line-height: 1.4;
		transition: none;
		color: #333;
		-o-transition: none;
		-ms-transition: none;
		-moz-transition: none;
		-webkit-transition: none;
	}
	footer .areaInner .logo a:hover {
		-ms-filter: "alpha( opacity=100 )";
		filter: alpha( opacity=100 );
		opacity: 1;
	}
	footer .areaInner .logo + .footBox {
		border-top: 1px solid #ccc;
	}
	footer .areaInner .footBox {
		margin: 0;
	}
	footer .areaInner .footBox .sttl {
		border: none;
		padding: 0;
		margin: 0;
	}
	footer .areaInner .footBox .sttl a {
		display: block;
		box-sizing: border-box;
		font-size: 1.4rem;
		font-weight: 600;
		color: #333;
		background: url("img/arrow_black_down.png") right 10px center no-repeat;
		background-size: 10px auto;
		padding: 1.0rem 4.0rem 1.0rem 4%;
		transition: none;
		-o-transition: none;
		-ms-transition: none;
		-moz-transition: none;
		-webkit-transition: none;
	}
	footer .areaInner .footBox .sttl a:hover {
		-ms-filter: "alpha( opacity=100 )";
		filter: alpha( opacity=100 );
		opacity: 1;
	}
	footer .areaInner .footBox .sttl.open a {
		background: url("img/arrow_black_up.png") right 10px center no-repeat;
		background-size: 10px auto;
	}
	footer .areaInner {
	padding: 3rem 0;
	}
	footer .areaInner .footBox .sttl {
		border-bottom: 1px solid #ccc;
		padding: 0;
		margin: 0;
	}
	footer .footBox ul {
		padding: 0;
	}
	footer .areaInner .footBox .accChild {
		display: none;
		font-size: 1.3rem;
		padding: 0;
		box-sizing: border-box;
		background-color: #ccc;
	}
	footer .areaInner .footBox .accChild li {
		display: block;
		float: none;
	}
	footer .areaInner .footBox .accChild li a {
		display: block;
		box-sizing: border-box;
		font-size: 1.3rem;
		color: #000;
		background: #fff url("img/arrow_black.png") 96.5% center no-repeat;
		background-size: 6px auto;
		border-bottom: 1px solid #ccc;
		padding: 1.0rem 9% 1.0rem 4%;
	}
	footer .areaInner .footBox .accChild li.subCat {
		width: 100%;
		margin: 0;
	}
	footer .areaInner .footBox .accChild li.subCat:nth-of-type(4n + 1) {
		margin: 0 0 0 0;
	}
	footer .areaInner .footBox .accChild li.subCat a {
		display: block;
		background: #fff url("img/arrow_black.png") 96.5% center no-repeat;
		background-size: 6px auto;
		padding: 1.0rem 9% 1.0rem 4%;
	}
	footer .areaInner .footBox .accChild li.subCat a::before {
		content: none;
		font-size: 1.2rem;
		position: relative;
		left: -2px;
		margin-right: 0.2rem;
	}
	footer .areaInner .footBox .accChild .subList {
		padding: 0;
		margin: 0;
	}
	footer .areaInner .footBox .accChild .subList li {
		padding: 0;
		display: block;
		float: none;
		margin: 0;
	}
	footer .areaInner .footBox .accChild .subList li::before {
		content: none;
		color: #000;
		margin-right: 0;
	}
	footer .areaInner .footBox .accChild .subList li a {
		font-size:1.3rem;
		padding: 1.0rem 9% 1.0rem 9%;
		background: #fff url("img/arrow_black.png") 96.5% center no-repeat;
		background-size: 6px auto;
	}
	footer .areaInner .footBox .accChild .subList li a::before {
		content: "└";
		display: block;
		color: #000;
		position: absolute;
		top: 12px;
		left: 4%;
		margin-right: 0.4rem;
	}
	footer .areaInner .noticeArea {
		box-sizing: border-box;
		width: 92%;
		margin: 2.5rem auto 0rem;
		background: #fff;
		padding: 1.5rem;
		font-size: 1.2rem;
		line-height: 1.8;
		border-radius: 0;
	}
	footer .areaInner .noticeArea p {
		font-size: 1.2rem;
	}
	footer .areaInner p.ucp {
		font-size: 1.1rem;
		line-height: 1.4;
		text-align: center;
		color: #333;
		margin: 1.5rem auto 0;
	}
	footer .botArea {
	}
	footer .botArea .inner {
		width: 92%;
		padding: 1.2rem 0 1.2rem;
		margin: 0 auto;
	}
	footer .botArea .inner .cf {
		content: none;
	}
	footer p.sitemap {
		font-size: 1.2rem;
		line-height: 1.3;
		text-align: right;
		padding: 0.5rem 0;
		float: right;
		max-width: 75px;
	}
	footer p.copy {
		width: 100%;
		line-height: 1.3;
		text-align: center;
		padding: 0.5rem 0;
		max-width: calc(100% - 80px);
	}
	footer p.sitemap a {
		float: none;
	}
	footer p.copy a {
		text-decoration: none;
	}
	footer a {
		text-decoration: none;
	}
	footer a:hover {
		text-decoration: none;
	}



	/*--------------------------------------
	　PageTop
	---------------------------------------*/
	#page-top {
		position: fixed;
		bottom: 4%;
		right: 4%;
		width: 50px;
	}
	#page-top img {
		width: 100%;
	}



	/* ================== */
	/*  サイトマップ　　　*/
	/* ================== */
	#contents #page.mappage {
	}
	#contents #page.mappage h2 {
		margin: 5.0rem auto 2.0rem;
	}
	#contents #page.mappage h2 a {
	}
	#contents #page.mappage h2 a:hover {
		color: #333;
		text-decoration: none;
		opacity: 1;
	}
	#contents #page.mappage ul {
		margin: 1.0rem auto 1.0rem;
	}
	#contents #page.mappage ul li {
		padding: 0 0 0.6rem 1.6rem;
	}
	#contents #page.mappage ul.subList li:last-child {
		margin: 0 0 1.0rem;
	}
	#contents #page.mappage ul li a {
	}
	#contents #page.mappage ul li a:hover {
		opacity: 1;
	}
	#contents #page.mappage ul.subList li a {
		font-size: 1.4rem;
	}




	/* ================== */
	/*  メインコンテンツ　*/
	/* ================== */

	#index a, #category a, #page a {
	}
	#index a:hover, #category a:hover, #page a:hover {
	}

	#index h1,#index h2,#index h3,#index h4,#index h5,#index h6,#index h7,
	#category h1,#category h2,#category h3,#category h4,#category h5,#category h6,#category h7,
	#page h1,#page h2,#page h3,#page h4,#page h5,#page h6,#page h7 {
		max-width: 92%;
		margin: 0 auto;
	}

	#index h2,
	#category h1,
	#page h1 {
		font-size: 1.9rem;
		line-height: 1.4;
		text-align: center;
		padding: 4rem 0 2rem 0;
		margin: 2.5rem auto 3.0rem;
		position: relative;
	}
    #category h1 a, #page h1 a{
        background: url(img/arrow_black.png) right 10px center no-repeat;
        background-size: 8px;
    }
	#index h2 {
		margin: 8.5rem auto 3.0rem;
	}
	#category h1,
	#page h1 {
		margin: 0 auto 3.5rem;
	}
	#index h2::before,
	#category h1::before,
	#page h1::before {
	width: 50px;
	}
	#index h2::after,
	#category h1::after,
	#page h1::after {
	max-width: 100%;
	}
    #index .addParts__area--summary h3{
        padding: 3rem 4.5rem 1.2rem 4.5rem;
    }
    #contents .addParts__area__table .addParts__area__table__company-name h3{
        margin: 1rem 0;
        padding: 0;
    }
	#index h3,
    #contents h2,
	#category h2,
	#page h2 {
		font-size: 1.8rem;
		margin: 5.5rem auto 2.5rem;
		line-height: 1.4;
		padding: 1.2rem 4.5rem;
	}
	#index h3::before,
	#category h2::before,
	#page h2::before {
		width: 50px;
		height: 50px;
		top: -26px;
		left: 4px;
	}
	#index h3::after,
	#category h2::after,
	#page h2::after {
		width: 55px;
		height: 25px;
		left: 0;
		top: -12px;
		font-size: 1.8rem;
		letter-spacing: normal;
		white-space: nowrap
	}
	#category h2::after,
	#page h2::after {
	}
    #contents .addParts__area--summary h2::before{
        content: "";
        width: 100px;
        height: 90px;
        background: url(img/h3_circle1.png) center no-repeat;
        background-size: 100% auto;
        position: absolute;
        top: -40px;
        left: -10px;
    }
    #contents .addParts__area--summary2 h2::before{
        content: "";
        width: 100px;
        height: 90px;
        background: url(img/h3_circle2.png) center no-repeat;
        background-size: 100% auto;
        position: absolute;
        top: -40px;
        left: 5px;
    }
	#index h4,
	#category h3,
	#page h3 {
		font-size: 1.8rem;
		margin: 4.0rem auto 2.0rem;
		padding: 0;
		line-height: 1.5;
	}
	#index h5, #category h6,
	#category h4, #category h5, #category h6,
	#page h4, #page h5, #page h6 {
		font-size: 1.6rem;
		line-height: 1.5;
		padding: 0 1.0rem 1.1rem 1.0rem;
		margin: 4.0rem auto 1.5rem;
		position: relative;
	}
	#index h5::after, #category h6::after,
	#category h4::after, #category h5::after, #category h6::after,
	#page h4::after, #page h5::after, #page h6::after {
		content: "";
		background:linear-gradient(to right, rgba(51,51,51,1), rgba(51,51,51,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
	  background-size:6px 1px;
		width: 100%;
	  height: 1px;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	.sitemap h2 a {
		color: #333;
	}



	/*--------------------------------------
	　list
	---------------------------------------*/
	#contents #index > ul,
	#contents #category > ul,
	#contents #page > ul {
		width: 92%;
	}
	#contents ul{
		width: 100%;
		box-sizing: border-box;
		margin: 2.0rem auto 2.0rem;
		padding:0 3% 0;
	}
	#contents ul li{
		font-size: 1.3rem;
		min-height: 12px;
		padding: 0 0 0.3rem 8%;
		position: relative;
	}
	#contents ul li::before{
		width: 8px;
		height: 8px;
	}
	#contents #index > ol,
	#contents #category > ol,
	#contents #page > ol {
		width: 92%;
	}
	#contents ol {
		width: 100%;
		box-sizing: border-box;
		margin: 2.0rem auto 2.0rem;
		padding:0 3% 0;
	}
	#contents ol li{
		font-size: 1.3rem;
		padding: 0 0 0.3rem 8%;
		list-style: none;
		position: relative;
		counter-increment: number;
	}
	#contents ol li::before{
		width: 16px;
		height: 16px;
		top: 5px;
		font-size: 1.0rem;
		line-height: 1.6;
		letter-spacing: -0.5px;
	}
	#contents ol li:nth-child(-n + 9):before {
	  content: counter(number);
	}
	#contents ol li:nth-child(n + 10):before {
	  content: counter(number);
	}



	/*--------------------------------------
	　recommend,check,point
	---------------------------------------*/
	#contents .rank_wrap p, #contents .recommend_number_wrap p, #contents .check_number_wrap p, #contents .point_number_wrap p {
		max-width: 92%;
		padding: 0;
		text-align: center;
		font-size: 1.6rem;
	}
	/*recommend*/
	#contents .recommend {
		width: 92%;
		max-width: 92%;
		font-size: 1.6rem;
		padding: 1.5rem 1.5rem 1.5rem 6.2rem;
		margin: 2.0rem auto 1.5rem;
	}
	#contents .recommend::before {
		width: 50px;
		height: 32px;
		font-size: 1rem;
		line-height: 32px;
		/*-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);*/
	}
	#contents .recommend a {
		text-decoration: underline;
	}
	/*check*/
	#contents .check {
		width: 92%;
		max-width: 92%;
		font-size: 1.6rem;
		padding: 1.5rem 1.5rem 1.5rem 6.2rem;
		margin: 2.0rem auto 1.5rem;
	}
	#contents .check::before {
		content: "CHECK";
		width: 50px;
		height: 32px;
		font-size: 1.2rem;
		line-height: 32px;
		/*-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);*/
	}
	#contents .check a {
		text-decoration: underline;
	}
	/*point*/
	#contents .point {
		width: 92%;
		max-width: 92%;
		height: auto;
		font-size: 1.6rem;
		padding: 1.5rem 1.5rem 1.5rem 6.2rem;
		margin: 2.0rem auto 1.5rem;
	}
	#contents .point::before {
		width: 50px;
		height: 32px;
		font-size: 1.2rem;
		line-height: 32px;
		/*-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);*/
	}
	#contents .point a {
		text-decoration: underline;
	}
	/*rank_wrap*/
	#contents .rank_wrap {
		counter-reset: num;
		margin: 3.0rem auto 2.0rem;
	}
	#contents .rank_wrap .rank {
		width: 92%;
		max-width: 92%;
		min-height: 70px;
		height: auto;
		font-size: 1.6rem;
		line-height: 1.4;
		color: #333;
		border-bottom: solid 1px #333;
		background: url("img/color_black.png") 25px 30px no-repeat;
		background-size: 1px 100%;
		padding: 1.5rem 1.5rem 1.5rem 6.2rem;
		margin: 2.0rem auto 1.5rem;
		position: relative;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
	}
	#contents .rank_wrap .rank::before {
		content: counter(num, decimal-leading-zero);
		counter-increment: num;
		width: 50px;
		height: 50px;
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 50px;
		letter-spacing: 0;
		text-align: center;
		color: #333;
		background: url("img/rank.png") 0 0 no-repeat;
		background-size: 100%;
		position: absolute;
		top: 10px;
		left: 0;
		/*-webkit-transform: translate(0%, -50%);
		transform: translate(0%, -50%);*/
	}
	#contents .rank a {
		color: #333;
		text-decoration: underline;
	}
	/*recommend_number_wrap*/
	#contents .recommend_number_wrap {
		counter-reset: num;
		margin: 3.0rem auto 2.0rem;
	}
	#contents .recommend_number_wrap .recommend {
	}
	#contents .recommend_number_wrap .recommend::before {
		display: block;
		font-size: 0.9rem;
		line-height: 1;
		padding: 1.2rem 0;
	}
	#contents .recommend_number_wrap .recommend::after {
		content: counter(num, decimal-leading-zero);
		counter-increment: num;
		width: 50px;
		font-size: 1.8rem;
		font-weight: normal;
		line-height: 1;
		text-align: center;
		position: absolute;
		top: 32px;
		left: 0;
	}
	/*check_number_wrap*/
	#contents .check_number_wrap {
		counter-reset: num;
		margin: 3.0rem auto 2.0rem;
	}
	#contents .check_number_wrap .check {
	}
	#contents .check_number_wrap .check::before {
		display: block;
		font-size: 0.9rem;
		line-height: 1;
		padding: 1.2rem 0;
	}
	#contents .check_number_wrap .check::after {
		content: counter(num, decimal-leading-zero);
		counter-increment: num;
		width: 50px;
		font-size: 1.8rem;
		font-weight: normal;
		line-height: 1;
		text-align: center;
		position: absolute;
		top: 32px;
		left: 0;
	}
	/*point_number_wrap*/
	#contents .point_number_wrap {
		counter-reset: num;
		margin: 3.0rem auto 2.0rem;
	}
	#contents .point_number_wrap .point {
	}
	#contents .point_number_wrap .point::before {
		display: block;
		font-size: 0.9rem;
		line-height: 1;
		padding: 1.2rem 0;
	}
	#contents .point_number_wrap .point::after {
		content: counter(num, decimal-leading-zero);
		counter-increment: num;
		width: 50px;
		font-size: 1.8rem;
		font-weight: normal;
		line-height: 1;
		text-align: center;
		position: absolute;
		top: 32px;
		left: 0;
	}



	.caption {
	  line-height: 1.3;
	  word-break: break-all;
	}



	/*--------------------------------------
	　float-wrap
	---------------------------------------*/
	#contents .float-wrap{
		width: 92%;
		margin: 4.0rem auto 4.0rem;
		position: relative;
	}
	#contents .float-wrap .flame {
		width: 85%;
		margin: 0 auto;
	}
	#contents .float-wrap .float-img {
		box-sizing: border-box;
		width: auto;
		margin: 0 auto 1.0rem;
		text-align: center;
	}
	#contents .float-wrap img{
		box-sizing: border-box;
		max-width: 100%;
	}
	#contents .float-wrap .sttl {
		padding: 0;
		margin: 0;
		background: none;
		border: none;
		font-size: 1.6rem;
		line-height: 1.4;
	}
	#contents .float-wrap .catch {
		font-size: 1.6rem;
		margin: 0 0 1.5rem;
		text-align: left;
	}
	#contents .float-wrap p{
		margin: 0;
		padding: 0;
	}
	#contents .float-wrap .fl{
		box-sizing: border-box;
		width: 100%;
		padding: 0 0 1.0rem 0;
		text-align: center;
		float: none;
	}
	#contents .float-wrap .fr{
		box-sizing: border-box;
		width: 100%;
		padding: 0 0 1.0rem 0;
		text-align: center;
		float: none;
	}
	#contents .float-wrap .ct{
		box-sizing: border-box;
		width: 100%;
		margin: 0 auto 1.0rem;
		padding: 0 0 1.0rem;
		text-align: center;
	}

	#contents .float-wrap .fl.t_small{
		box-sizing: content-box;
		width: 40%;
		padding: 0 6% 0.5rem 0;
		text-align: center;
		float: left;
	}
	#contents .float-wrap .fr.t_small{
		box-sizing: content-box;
		width: 40%;
		padding: 0 0 0.5rem 6%;
		text-align: center;
		float: right;
	}
	#contents .float-wrap .fl.t_small .flame,
	#contents .float-wrap .fr.t_small .flame{
		width: 100%;
	}

	#contents .float-wrap .float-body.fl {
		width: auto;
		position: static;
		text-align: left;
	}
	#contents .float-wrap .float-body.fr {
		width: auto;
		position: static;
		text-align: left;
	}

	/*float-wrap-head*/
	#index .float-wrap .float-wrap-head, #category .float-wrap .float-wrap-head, #page .float-wrap .float-wrap-head {
		display: table;
		width: auto !important;
		height: auto;
		background: none;
		border: none;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.4;
		text-align: left;
		color: #000;
		margin: 0 auto 0.8rem;
		position: relative;
	}
	#index .float-wrap .float-wrap-head a, #category .float-wrap .float-wrap-head a, #page .float-wrap .float-wrap-head a {
		width: auto;
		font-size: 100%;
		text-decoration: none;
	}
	#index .float-wrap .float-wrap-head a:hover, #category .float-wrap .float-wrap-head a:hover, #page .float-wrap .float-wrap-head a:hover {
		color: #000;
		text-decoration: none;
	}
	#index .float-wrap .float-body.fl .float-wrap-head, #category .float-wrap .float-body.fl .float-wrap-head, #page .float-wrap .float-body.fl .float-wrap-head,
	#index .float-wrap .float-body.fr .float-wrap-head, #category .float-wrap .float-body.fr .float-wrap-head, #page .float-wrap .float-body.fr .float-wrap-head {
		width: 100%;
	}
	#contents .float-wrap .float-wrap-head::after {
		content: none;
	}
	#contents .float-wrap p{
		width: 100%;
	}



	/*  btns*/
	#contents .btn-internal,
	#contents .btn-web,
	#contents .btn-tel,
	#contents .btn-link {
		max-width: 100%;
		text-align: center;
		margin: 2.0rem auto;
		padding: 0;
		width: 90%;
	}
	#contents .btn-internal::after,
	#contents .btn-web::after {
	right: -5px;
	bottom: -5px;
	}
	#contents .btn-internal:hover a,
	#contents .btn-web:hover a {
	    -webkit-transform: none;
	    transform: none;
	}
	.btn-internal a,
	.btn-web a {
		display: block;
		padding: 1.8rem 2rem 1.8rem;
		font-size: 1.4rem;
		line-height: 1.3;
		text-align: center;
		text-decoration: none;
		transition: none;
		transform: none;
		box-shadow: 4px 4px #fff;
	}

	#contents .btn-link {
		max-width: 100%;
		text-align: left;
	}
	.btn-link a {
		display: block;
		padding: 1.8rem 3.8rem 1.8rem 2.0rem;
		font-size: 1.4rem;
		font-weight: bold;
		color: #333;
		text-align: center;
		text-decoration: none;
		background: #ffffff url(img/arrow_black.png) right 15px center no-repeat;
		background-size: 8px auto;
		border: 1px solid #333333;
        border-radius: 45px;
	}
	.btn-link a::before{
	}
	.btn-link a:hover{
		opacity: 1;
		text-decoration: none;
	}
    .btn-link a::after {
		content: '';
		display: block;
		width: calc(100% - 1px);
		height: calc(100% - 1px);
		border: 1px solid #333333;
		border-radius: 45px;
		border-width: 0 1px 1px 0;
		position: absolute;
		right: -5px;
		bottom: -5px;
	}
	.btn-tel {
		display: block;
	}
	.btn-tel a {
		background: url(img/ico_tel.png) left 20px center no-repeat, #fcd475;
		background-size: 14px auto, cover;
		color: #333333;
		font-size: 1.4rem;
		font-weight: bold;
		padding: 1.8rem 3.5rem 1.8rem 4.5rem;
		display: block;
		line-height: 1.3;
		text-align: center;
		position: relative;
		border-radius: 45px;
		box-shadow: 4px 4px #fff;
	}
	.btn-tel a::after {
		content: '';
		display: block;
		width: calc(100% - 1px);
		height: calc(100% - 1px);
		border: 1px solid #fcd475;
		border-radius: 45px;
		border-width: 0 1px 1px 0;
		position: absolute;
		right: -5px;
		bottom: -5px;
	}



	/* ================== */
	/*  テーブル　　　　　*/
	/* ================== */
	#contents #index > table,
	#contents #category > table,
	#contents #page > table {
		width: 92%;
	}
	#contents table {
		box-sizing: border-box;
		width: 100%;
		max-width: initial;
		margin:3.0rem auto 3.0rem;
		border-bottom: none;
	}
	#contents table th {
		width: 100%;
		padding: 1.0em 2.5%;
		line-height: 1.3;
		font-size: 1.3rem;
		display: block;
		border: none;
		border-bottom: solid 2px #fff;
	}
	#contents table td {
		width: 100%;
		display: block;
		line-height: 2.4rem;
		padding: 1.0em 5%;
		font-size: 1.3rem;
		word-wrap: break-word;
		border: none;
		border-bottom: solid 2px #fff;
	}


	/*--------------------------------------
	　box-wrap
	---------------------------------------*/
	#contents .box-wrap {
		width: 92%;
		max-width: 92%;
		margin: 6.0rem auto;
	}
	#contents .box-wrap .box {
		display: block;
		box-sizing: border-box;
		width: 100%;
		border-bottom: 1px dashed #bbb;
		padding: 4.0rem 0 3.0rem;
		margin: 0 0 0;
		float: none;
		position: relative;
	}
	#contents .box-wrap .box:nth-child(even) {
		float: none;
	}
	#contents .box-wrap .box:nth-child(even)::before {
		content: none;
	}
	#contents .box-wrap .box:nth-child(n+3) {
	  margin-top: 0;
	}
	#contents .box-wrap .box:first-child {
		padding: 3rem 0 3.0rem;
	}
	#contents .box-wrap .box:last-child {
		margin: 0;
	}
	#contents .box-wrap .box .permalink {
		display: none;
	}
	#contents .box-wrap .box .thumb {
		position: relative;
	}


	/*box-head*/
	#index .box-wrap .box-head, #category .box-wrap .box-head, #page .box-wrap .box-head {
		display: block;
	}
	#index .box-wrap .box-head a, #category .box-wrap .box-head a, #page .box-wrap .box-head a {
		display: block;
		font-size: 100%;
	}
	#index .box-wrap .box-head a:hover, #category .box-wrap .box-head a:hover, #page .box-wrap .box-head a:hover {
		color: #333;
		text-decoration: none;
	}
	#index .box-wrap .box-head::after, #category .box-wrap .box-head::after, #page .box-wrap .box-head::after {
		content: none;
	}


	#contents .box-wrap .box p {
		margin: 0;
		font-size: 1.4rem;
	}

	#contents .box-wrap .box .btn-internal {
	    margin: 2.0rem auto;
	}


	/*type-a*/
	#contents .box-wrap .type-a {
	}
	#contents .box-wrap .type-a .thumb {
		position: relative;
	}
	#contents .box-wrap .type-a .thumb::before {
		content: "";
		width: 55px;
		height: 54px;
		background: url("img/box-wrap_a_circle.png") no-repeat;
		background-size: 100% auto;
		position: absolute;
		top: -15px;
		left: 10px;
	}
	#contents .box-wrap .type-a .box-head {
		font-size: 1.7rem;
		line-height: 1.4;
		font-weight: 500;
		color: #333;
		padding: 2.0rem 1.0rem;
		margin: 0 0 0;
	}
	#contents .box-wrap .type-a .box-head a {
		display: block;
		width: 100%;
		font-size: 1.7rem;
		line-height: 1.4;
		color: #333;
		background: url("img/arrow_black.png") right center no-repeat;
		background-size: 8px auto;
		padding: 0 2.0rem 0 0;
		position: relative;
	}
	#contents .box-wrap .type-a .box-head a:hover {
		opacity: 1;
	}
	#contents .box-wrap .type-a .box-body {
	}
	#contents .box-wrap .type-a .box-body .smallPic {
		width: 75px;
		float: left;
	}
	#contents .box-wrap .type-a .box-body p {
		width: calc(100% - 95px);
		float: right;
	}
	/*type-b*/
	#contents .box-wrap .type-b:nth-last-child(2),
	#contents .box-wrap .type-b:last-child {
		border: none;
	}
	#contents .box-wrap .box.type-b {
		border-top: 1px solid #02ade4;
		border-bottom: 1px solid #02ade4;
		padding: 3.0rem 0 3.0rem;
		margin: -1px 0 0;
	}
	#contents .box-wrap .type-b + .type-b {
	}
	#contents .box-wrap .type-b:nth-child(n+3) {
	  margin-top: -1px;
	}
	#contents .box-wrap .type-b:nth-of-type(2n) {
		margin-left: 0;
	}
	#contents .box-wrap .type-b:nth-last-child(2),
	#contents .box-wrap .type-b:last-child {
	padding: 3rem 0 3rem;
	}
	#contents .box-wrap .type-b .box-head-area {
		display: table;
		padding: 0 1.0rem;
		margin: 0 0 2.0rem;
	}
	#contents .box-wrap .type-b .thumb {
		display: table-cell;
		vertical-align: middle;
		width: 80px;
		position: relative;
	}
	#contents .box-wrap .type-b .thumb img {
		border-radius: 100px;
	}
	#contents .box-wrap .type-b .box-head {
		font-size: 1.7rem;
		padding: 0 0 0 1.2rem;
	}
	#contents .box-wrap .type-b .box-head h2,
	#contents .box-wrap .type-b .box-head h3,
	#contents .box-wrap .type-b .box-head h4,
	#contents .box-wrap .type-b .box-head h5 {
		font-size: 1.7rem;
	}
	#contents .box-wrap .type-b .box-head a {
		font-size: 1.7rem;
		background-size: 8px auto;
		padding: 0 2.0rem 0 0;
	}
	#contents .box-wrap .type-b .box-head a:hover {
		opacity: 1;
	}
	#contents .box-wrap .type-b .caption {
		margin: 2.0rem 0 0;
	}



	/*--------------------------------------
	　frame-wrap
	---------------------------------------*/
	#contents .frame-wrap {
		width: 92%;
		max-width: 92%;
		margin: 6.0rem auto;
	}
	#contents .frame-wrap .inner {
		margin: 0 auto;
	}
	#contents .frame {
		display: block;
		box-sizing: border-box;
		width: 100%;
		margin: 0 0 2.0rem;
		background-color: #fff;
		float: none;
	}
	#contents .frame-wrap .frame:first-child {
		margin: 0	0	2.0rem;
	}
	#contents .frame-wrap .frame:nth-child(3n+1) {
		margin: 0	0	2.0rem;
	}
	#contents .frame-wrap .frame:nth-child(n+4) {
	  margin-top: 0;
	}
	#contents .frame-wrap .frame:last-child {
		margin: 0	0	0;
	}
	#contents .frame-wrap .frame a {
		display: block;
		text-decoration: none;
	}

	/*frame-head*/
	#index .frame .frame-head, #category .frame .frame-head, #page .frame .frame-head {
		display: block;
		font-size: 1.7rem;
		font-weight: bold;
		line-height: 1.4;
	}
	#index .frame .frame-head a, #category .frame .frame-head a, #page .frame .frame-head a {
		width: auto;
		font-size: 100%;
		text-decoration: none;
	}
	#index .frame .frame-head a:hover, #category .frame .frame-head a:hover, #page .frame .frame-head a:hover {
		opacity: 1;
	}
	#contents .frame .frame-head p {
		margin: 0;
	}
	#contents .frame .frame-body {
		padding: 0 1.5rem 3.0rem;
	}
	#contents .frame .frame-body .frame-catch {
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.5;
		color: #000;
		margin: 0 0 1.5rem;
	}
	#contents .frame .frame-body p {
		margin: 0;
	}
	#contents .frame .thumb {
	}
	#contents .frame p.caption {
		margin: 1.0rem 1.0rem 0;
	}

	/*type-a*/
	#contents .frame-wrap .type-a {
	}
	#contents .frame-wrap .type-a .frame-catch {
		font-size: 1.4rem;
		line-height: 1.5;
		text-align: center;
		color: #8c8200;
		border-top: 5px solid #e6dc14;
		padding: 1.5rem 2.5rem;
		position: relative;
	}
	#contents .frame-wrap .type-a .frame-catch::before {
		content: "";
		background:linear-gradient(to right, rgba(187,187,187,1), rgba(187,187,187,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
	  background-size:6px 1px;
		width: 100%;
	  height: 1px;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	#contents .frame-wrap .type-a .frame-catch::after {
		content: "";
		width: 19px;
	  height: 11px;
		background:url("img/frame-wrap_baloon.png") no-repeat;
	  background-size:100% auto;
		position: absolute;
		left: calc(50% - 10px);
		bottom: -10px;
	}
	#contents .frame-wrap .type-a .frame-head {
		font-size: 1.7rem;
		line-height: 1.5;
		padding: 1.8rem 1.5rem;
	}
	#contents .frame-wrap .type-a .frame-head h2,
	#contents .frame-wrap .type-a .frame-head h3,
	#contents .frame-wrap .type-a .frame-head h4,
	#contents .frame-wrap .type-a .frame-head h5 {
		font-size: 1.7rem;
		line-height: 1.5;
	}
	#contents .frame-wrap .type-a .frame-head a {
		background-size: 6px auto;
		padding: 0 2.0rem 0 0;
	}
	#contents .frame-wrap .type-a .frame-head a:hover {
		opacity: 1;
	}
	#contents .frame-wrap .type-a .thumb {
		width: 80%;
		margin: 0 auto;
	}
	#contents .frame-wrap .type-a .caption {
		text-align: center;
		padding: 0 20px;
	}
	#contents .frame-wrap .type-a ul.icoArea {
		width: 100%;
		text-align: center;
		padding: 0 1.5rem;
		margin: 2.0rem auto;
	}
	#contents .frame-wrap .type-a ul.icoArea li {
		width: calc(100% / 3);
		padding: 0 0.6rem;
		margin: 0 0 0 0;
		float: left;
	}
	#contents .frame-wrap .type-a ul.icoArea li:first-child {
		margin: 0	0	0	0;
	}
	#contents .frame-wrap .type-a ul.icoArea li:nth-child(3n+1) {
		margin: 0	0	0	0;
	}
	#contents .frame-wrap .type-a ul.icoArea li:nth-child(n+4) {
	  margin-top: 1.6rem;
	}
	#contents .frame-wrap .type-a ul.icoArea .ico {
		width: 57px;
		margin: 0 auto;
	}
	#contents .frame-wrap .type-a ul.icoArea .icoTxt {
		display: inline-block;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.4;
		text-align: center;
		padding: 10px 0 8px;
		position: relative;
	}
	#contents .frame-wrap .type-a ul.icoArea .icoTxt::after {
		content: "";
		width: 100%;
		height: 2px;
		background-color: #e6dc14;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	#contents .frame-wrap .type-a .frame-body {
		padding: 1.8rem 1.5rem;
	}
	/*type-b*/
	#contents .frame-wrap .type-b {
		border: 1px solid #333;
	}
	#contents .frame-wrap .type-b .frame-head {
		font-size: 1.7rem;
		line-height: 1.5;
		font-weight: 500;
		padding: 1.8rem 1.5rem;
		margin: 0 0 2.0rem;
		position: relative;
	}
	#contents .frame-wrap .type-b .frame-head::after {
		content: "";
		background:linear-gradient(to right, rgba(187,187,187,1), rgba(187,187,187,1) 50%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%) 0% 0%;
	  background-size:6px 1px;
		width: calc(100% - 20px);
	  height: 1px;
		position: absolute;
		left: 10px;
		bottom: 0;
	}
	#contents .frame-wrap .type-b .frame-head a {
		display: block;
		width: 100%;
		background: url("img/arrow_black.png") right center no-repeat;
		background-size: 8px auto;
		padding: 0 2.0rem 0 0;
		position: relative;
	}
	#contents .frame-wrap .type-b .frame-head a:hover {
		opacity: 1;
	}
	#contents .frame-wrap .type-b .thumb {
		width: 80%;
		margin: 0 auto;
	}
	#contents .frame-wrap .type-b .caption {
		text-align: center;
		padding: 0 1.0rem;
	}
	#contents .frame-wrap .type-b .frame-body {
		margin: 2.0rem auto 0;
	}
	#contents .frame-wrap .type-b table {
		box-sizing: border-box;
		width: 100%;
		letter-spacing: 0;
		margin: 2.0rem auto;
	}
	#contents .frame-wrap .type-b table th {
		display: table-cell;
		width: 40%;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.4;
		border-right: 1px solid #333;
		padding: 1.0rem 1.0rem;
	}
	#contents .frame-wrap .type-b table td {
		display: table-cell;
		font-size: 1.4rem;
		line-height: 1.4;
		padding: 1.0rem 1.0rem;
		word-wrap: break-word;
	}
	#contents .frame-wrap .type-b table:last-of-type {
		margin-bottom: 0;
	}

	/*type-c*/
	#contents .frame-wrap .type-c {
		background-color: #f5f5dc;
	}
	#contents .frame-wrap .type-c .eng {
		font-size: 2.6rem;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 0.06em;
		text-align: center;
		color: #fff;
	  text-shadow:1px 1px 0 #333, -1px -1px 0 #333,
	  -1px 1px 0 #333, 1px -1px 0 #333,
	  0px 1px 0 #333,  0-1px 0 #333,
	  -1px 0 0 #333, 1px 0 0 #333;
		margin: 3.0rem 0 0;
		position: relative;
		top: -1.0rem;
	}
	#contents .frame-wrap .type-c .frame-head {
		font-size: 1.7rem;
		line-height: 1.5;
		font-weight: 500;
		border-bottom: 2px solid #fff;
		padding: 0.5rem 1.8rem 2.0rem;
		margin: 0 0 2.0rem;
		position: relative;
	}
	#contents .frame-wrap .type-c .frame-head a {
		display: block;
		width: 100%;
		background: url("img/arrow_black.png") right center no-repeat;
		background-size: 8px auto;
		padding: 0 2.0rem 0 0;
		position: relative;
	}
	#contents .frame-wrap .type-c .frame-head a:hover {
		opacity: 1;
	}
	#contents .frame-wrap .type-c .thumb {
		width: 60%;
		margin: 0 auto 2.0rem;
	}
	#contents .frame-wrap .type-c .thumb img {
		border-radius: 100px;
	}


	/*btn-web*/
	#contents .frame .frame-body .btn-web {
		width: 85%;
		margin: 25px auto 0;
	}

	/* img-box-wrapper */
	.img-box-wrapper {
		margin: 4rem auto;
		padding: 0;
		max-width: 92%;
	}
	#contents .img-box-wrapper__title {
		font-size: 1.8rem;
		margin: 0 auto 2rem;
		padding: 0 1rem 1.5rem;
	}
	.img-box__body {
		display: block;
	}
	.img-box {
		width: 100%;
		margin: 0 auto;
	}
	.img-box:nth-of-type(-n+2) {
		margin: 0 auto;
	}
	.img-box:nth-of-type(2n+1) {
		margin: 0 auto;
	}
	.img-box + .img-box {
		margin-top: 2rem;
	}
	#contents .img-box__caption {
		margin: 0.8rem auto 0;
	}

	/*--------------------------------------
	 lower-bottom
	---------------------------------------*/
	.lower-bottom {
		margin: 10rem auto 8rem;
		padding: 0 4% 2rem;
	}
	.lower-bottom::before {
		content: '';
		width: 100%;
		height: 85px;
		position: absolute;
		top: -40px;
		left: 0;
		right: 0;
		background: url(img/lower-bottom_bk.png) no-repeat top center;
		background-size: cover;
	}
	.lower-bottom::after {
		content: '';
		width: 100%;
		height: 60px;
		position: absolute;
		bottom: -60px;
		left: 0;
		right: 0;
		background: url(img/lower-bottom_bk2.png) no-repeat top center;
		background-size: cover;
	}
	#contents .lower-bottom__title {
		font-size: 1.9rem;
		padding: 4rem 0 2rem 0;
		margin: 0 auto 3.0rem;
	}
	#contents .lower-bottom__title::before {
	width: 50px;
	}
	#contents .lower-bottom__title::after {
	max-width: 100%;
	}
	#contents .lower-bottom__txt--intr {
		margin: 0 auto 2.5rem;
	}
	.lower-bottom__map-box {
		padding: 1.5rem;
	}
	.lower-bottom__map__name-box {
		display: flex;
		flex-direction: column;
		width: 100%;
		margin: 1rem auto 0;
		justify-content: center;
	}
	#contents .lower-bottom__map__name {
		margin: 0 auto;
		padding: 0 6rem;
		width: 250px;
	}
	#contents .lower-bottom__map__name + .lower-bottom__map__name {
		margin-top: 1rem;
	}
	#contents .lower-bottom__map__name::before {
		content: '';
		width: 17px;
		height: 17px;
		left: 34px;
	}
	#contents .lower-bottom__map__name:nth-of-type(2)::before {
		background: #f7c310;
	}
	.lower-bottom__body {
		margin: 2.5rem auto 0;
	}
	#contents .lower-bottom__body__catch {
		margin: 0 auto 2rem;
		font-size: 1.7rem;
	}
	.lower-bottom__box-wrapper {
		display: block;
	}
	.lower-bottom__box {
		max-width: 100%;
		padding: 2rem 1.5rem 3rem;
	}
	.lower-bottom__box + .lower-bottom__box {
		margin-left: 0;
		margin-top: 2rem;
	}
	#contents .lower-bottom__box__catch {
		font-size: 1.6rem;
		margin: 0 auto 1rem;
		padding: 0 2rem 1rem;
	}
	#contents .lower-bottom__box__catch::before,
	#contents .lower-bottom__box__catch::after {
		height: 18px;
		bottom: 1rem;
	}
	#contents .lower-bottom__box__catch::before {
		left: 12px;
	}
	#contents .lower-bottom__box__catch::after {
		right: 12px;
	}
	#contents .lower-bottom__box__ttl {
		font-size: 1.7rem;
		margin: 0 auto 1rem;
	}
	.lower-bottom__box__img-box {
		text-align: center;
		margin: 0 auto 1.5rem;
	}
	#contents .lower-bottom__box__caption {
	}
	#contents .lower-bottom__box__txt {
		margin: 0 auto 1.5rem;
	}
	#contents .lower-bottom .btn-web {
		width: 85%;
		margin: 2rem auto 0;
	}
	#contents .lower-bottom .btn-web a {
		font-size: 1.4rem;
		padding: 1.8rem 2rem 1.8rem;
	}
	.toc_parts {
		margin: 3rem 0;
		padding: 3rem 2.5rem 2rem;
	}

	.toc_parts .ttl {
		font-size: 1.6rem;
		border-left: 2px solid #6e6e6e;
	}

	#toc {
		margin: 1.5rem 0 0 0;
		padding: 1rem 0 0;
	}
	#toc .chapter li {
		margin: 1rem 0;
		padding: 0 0 0 3rem;
		font-size: 1.5rem;
		line-height: 1.6;
	}
	#toc ol.chapter li:before {
		top: 11px;
		font-size: 1.8rem;
	}

	#toc .chapter .chapter {
		margin: 0 0 2rem 1rem;
	}
	#toc .chapter .chapter li {
		margin: 0.5rem 2.5rem 0.5rem 0;
	}
	#toc .chapter .chapter li:before {
		top: 6px;
		width: 6px;
		height: 6px;
	}
}

.addParts--merit .btn-internal a {
    background: #45cea9;
    position: relative;
}

.addParts--merit .btn-internal a:after {
    content: "";
    background: url(img/arrow_white.png) no-repeat;
    position: absolute;
    width: 8px;
    height: 10px;
    top: 39%;
    right: 5%;
    transform: rotate(-90deg);
}

#category .btn-internal a {
	background: #45cea9 url(img/arrow_white.png) no-repeat right 1.5rem center;
	}
