@charset "UTF-8";

#Container .pc {
	display: block;
}

#Container .sp {
	display: none;
}

.pc {
	display: block;
}

.sp {
	display: none
}

@media only screen and (max-width:768px) {
	.pc {
		display: none;
	}

	.sp {
		display: block
	}

	.anime1,
	.anime2,
	.anime3,
	.anime4,
	.anime5 {
		opacity: 1;
	}

}

body {
	font-style: normal;
	font-weight: 100;
	font-size: 16px;
	font-size: 1.6rem;
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", sans-serif;
	color: #000;
	line-height: 1.8;
	-webkit-text-size-adjust: none;
}

header .wrapper h1.site-logo,
header .wrapper p.site-logo {
	width: 44%;
	max-width: 431px;
	display: flex;
	align-items: center;
	margin: 0;
	line-height: 1;
}

header .wrapper h1.site-logo img {
	width: 50%;
	height: auto;
}

header .wrapper p.site-logo img {
	height: auto;
}

header .wrapper p.site-logo>a>img {}

header .wrapper {
	width: 100%;
	max-width: 100%;
	/* max-width: 1180px; */
	max-width: 1280px;
	/* min-width: 1180px; */
	min-width: none;
	height: 87px;
	/* padding: 0 3.1% 0; */
	/* padding: 0; */
	padding: 0 46px 0;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	/* align-items: flex-end; */
	/* background: #f4f4f5; */
	/* background: linear-gradient(120deg,#fff 0%,#fff 20.6%,#f4f4f5 20.6%,#f4f4f5 100%); */
	background: linear-gradient(120deg, #fff 0%, #fff 160px, #f4f4f5 160px, #f4f4f5 100%);
	position: relative;

}

header {
	width: 100%;
	height: auto;
	position: fixed;
	top: 0;
	z-index: 100;
	/* background: #fff; */
	background: linear-gradient(90deg, #fff 0%, #fff 50%, #f4f4f5 50%, #f4f4f5 100%);
	text-align: left;
}

header .wrapper .gnav-pc {
	flex-basis: 55%;
	max-width: 840px;
	/* display: block; */
	display: flex;
}

header .wrapper .gnav-pc>ul.menu {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: space-between;
	/* align-items: flex-end; */
}

header .wrapper .gnav-pc>ul.menu>li {
	width: 100%;
	display: flex;
	max-width: none;
	position: relative;
	box-sizing: border-box;
	margin: 0 0 0 5%;
	z-index: 11;
}

header .wrapper .gnav-pc>ul.menu>li:first-child {
	margin: 0;
}

header .wrapper .gnav-pc>ul.menu>li>a {
	width: 100%;
	display: block;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0;
	border-bottom: #cdcdce solid 5px;
	font-size: 1.3rem;
	line-height: 1.2;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	color: #717071;
}

header .wrapper .gnav-pc>ul.menu>li>a:hover {
	border-bottom: #e50012 solid 5px;
}

header .wrapper .gnav-pc>ul.menu>li>a img {
	/*width: 70%;*/
	max-width: 140px;
	width: auto;
	height: 82%;
}

header .wrapper .gnav-pc li ul.menu-child {
	display: none;
	width: 100%;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 10;
	box-sizing: border-box;
}

header .wrapper .gnav-pc li ul.menu-child li a {
	width: 100%;
	display: block;
	box-sizing: border-box;
	padding-bottom: 1rem;
	padding: 1rem;
	margin: 0;
	background-color: rgba(0, 0, 0, 0.7);
	font-size: 1rem;
	text-align: center;
	color: #fff;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
}

header .wrapper .gnav-pc li ul.menu-child li a:hover {
	color: #fff;
	text-decoration: none;
	background-color: rgba(0, 0, 0, 0.6);
	text-decoration: none;
}

/*Content*/
#Content {
	width: 100%;
	box-sizing: border-box;
	padding-bottom: 100px;
	margin-top: 87px;
	/* padding-top: 203px; */
	overflow: hidden;
	text-align: left;
	font-size: 1.6rem;
}

/*パンくず*/
#Content .breadcrumb {
	width: 100%;
	height: 60px;
	padding: 0;
	background-color: #dddddf;
	font-size: 1.4rem;
	line-height: 1;
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1;
}

#Content .breadcrumb ul {
	width: 100%;
	max-width: 1280px;
	padding: 0 46px;
	margin: 0 auto;
	box-sizing: border-box;
	display: block;
}

#Content>.breadcrumb ul li {
	display: inline-block;
	color: #de0012;
}

#Content>.breadcrumb ul li:after {
	content: "＞";
	color: #000;
	padding: 0 0.5em;
}

#Content>.breadcrumb ul li:last-child:after {
	content: "";
}

#Content>.breadcrumb ul li a {
	color: #000;
}

/*タイトルバー*/
.titleBox {
	background: #f2f2f2;
	height: 42px;
	margin-top: 80px;
}

.titleBox .wrapper {
	max-width: 1120px;
	width: 100%;
	height: 42px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding: 0px;
	overflow: hidden;
}

.titleBox .wrapper h2 {
	font-size: 26px;
	font-weight: normal;
	width: 195px;
	text-align: center;
	border-right: 1px solid #231815;
	border-left: 1px solid #231815;
	color: #231815;
}

/*タイトルバー*/
.titlebar {
	background: #f2f2f2;
	margin-top: 80px;
}

.titlebar .wrapper {
	max-width: 1120px;
	width: 100%;
	margin: 0 auto;
	padding: 0px;
}

.titlebar .wrapper h2 {
	font-size: 26px;
	font-weight: normal;
	width: 195px;
	text-align: center;
	border-right: 1px solid #231815;
	border-left: 1px solid #231815;
	color: #231815;
	height: 42px;
	line-height: 42px;
}

.titlebar .messageBox {
	display: flex;
	align-items: center;
}

.titlebar .messageBox h4 {
	position: relative;
	z-index: 10;
	width: 20%;
	text-align: center;
	margin-left: -37px;
}

.titlebar .messageBox h4 img {
	width: 85%;
}

.titlebar .messageBox .textBox {
	margin: 45px 0;
}

.titlebar .messageBox .textBox h3 {
	font-size: 27px;
}

.titlebar .messageBox .textBox p {
	font-size: 20px;
	line-height: 1.4;
	margin-top: 20px;
}

.ms_txt {
	padding-top: 20px;
}

.ms_txt span {
	padding: 7px;
}

.top_ms {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}

/* ---------------------------------------- 
 - #Pagetop
---------------------------------------- */
#Pagetop {
	width: 46px;
	height: auto;
	position: fixed;
	bottom: 0;
	right: 0;
	cursor: pointer;
	z-index: 10001;
}

/* ---------------------------------------- 
 - footer
---------------------------------------- */
footer {
	width: 100%;
	text-align: left;
}

footer img {
	width: 100%;
	height: auto;
}

footer .wrapper {
	box-sizing: border-box;
	margin: 0 auto;
}

footer .wrapper a {
	color: #717071;
}

/*#FuncNav
----------------------*/
footer #FuncNav {
	position: fixed;
	top: 385px;
	right: 0;
	z-index: 9999;
}

footer #FuncNav p.closeBtn a {
	width: 40px;
	height: 40px;
	margin-top: 0;
	padding: 0;
	float: right;
	background: rgba(229, 0, 18, 0.8) url(../images/funcnav_close.png) center center no-repeat;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

footer #FuncNav p.closeBtn a:hover {
	background: rgba(229, 0, 18, 0.7) url(../images/funcnav_close.png) center center no-repeat;
}

footer #FuncNav p.closeBtn a.status-close {
	background: rgba(229, 0, 18, 0.8) url(../images/funcnav_open.png) center center no-repeat;
}

footer #FuncNav p.closeBtn a.status-close:hover {
	background: rgba(229, 0, 18, 0.7) url(../images/funcnav_open.png) center center no-repeat;
}

/*footer #FuncNav .menu*/
footer #FuncNav .menu {
	margin-top: 42px;
}

footer #FuncNav .menu.close {
	display: none;
}

footer #FuncNav .menu li {
	margin-bottom: 2px;
}

footer #FuncNav .menu li a {
	width: 10em;
	display: block;
	padding: 1em 1em;
	background-color: rgba(229, 0, 18, 0.8);
	font-size: 1rem;
	line-height: 1.2;
	color: #fff;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
}

footer #FuncNav .menu li a:hover {
	background-color: rgba(229, 0, 18, 0.7);
	text-decoration: none;
}

footer #FuncNav .menu li:nth-child(3) a {
	padding: 0.5em 1em;
	line-height: 1.2;
}

/*.gnav-footer
----------------------*/
footer .gnav-footer {
	width: 100%;
	box-sizing: border-box;
	padding: 0;
	overflow: hidden;
	background-color: #000;
}

footer .gnav-footer .wrapper {
	width: 1120px;
	box-sizing: border-box;
	padding: 1.5em 0;
	overflow: hidden;
}

footer .gnav-footer .wrapper li a {
	text-decoration: underline;
}

footer .gnav-footer .wrapper li a:hover {
	text-decoration: none;
}

footer .gnav-footer .wrapper ul.menu {
	width: 100%;

	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}

footer .gnav-footer .wrapper ul.menu li {
	width: 538px;
	box-sizing: border-box;
}

footer .gnav-footer .wrapper ul.menu li a {
	width: 100%;
	box-sizing: border-box;
	display: block;
	padding: 1em 0.25em;
	border: #404040 solid 1px;
	background: rgba(255, 255, 255, 1) url(../images/sp/ico_arr_red_r_sp.png) 96.5% center no-repeat;
	background-size: 3%;
	font-size: 2rem;
	font-weight: bold;
	color: #d80012;
	text-align: center;
	text-decoration: none;

	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}

footer .gnav-footer .wrapper ul.menu li a:hover {
	text-decoration: none;
	background-color: rgba(255, 255, 255, 0.7);
}

@media screen and (max-width: 1120px) {
	footer .gnav-footer .wrapper {
		width: 100%;
		padding: 1.5em 2%;
	}

	footer .gnav-footer .wrapper ul.menu li {
		width: 48%;
		box-sizing: border-box;
	}

	footer .gnav-footer .wrapper ul.menu li a {
		font-size: 1.6rem;
	}
}

/*.footer-utility
----------------------*/
footer .footer-utility .wrapper {
	padding-top: 2em;
	padding-bottom: 2em;
	margin: 0 auto;
	text-align: center;
	position: relative;
}

/*.area_shares*/
footer .footer-utility .wrapper .area_shares {
	display: inline-block;
	line-height: 1;
	position: absolute;
	top: 2em;
	left: 3.1%;
}

footer .footer-utility .wrapper .area_shares .share_item {
	display: inline-block;
	vertical-align: top;
}

/*.copyright
----------------------*/
footer .copyright {
	width: 100%;
	background: #000;
	text-align: center;
	color: #fff;
	padding: 5px 0;
}

footer .copyright .wrapper {
	padding: 0.75em 0;
	line-height: 1;

	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: center;
	-webkit-align-items: top;
	align-items: top;
}

/*.logo*/
footer .copyright p.logo {
	max-width: 95px;
}

footer .copyright p.logo a {
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}

footer .copyright p.logo a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

/*.cpr*/
footer .copyright p.cpr {
	padding-right: 1em;
	color: #fff;
	font-weight: 100;
}





@media screen and (max-width: 1180px) {

	/*wrapper*/
	header .wrapper {
		padding: 0 3.1% 0;
		background: linear-gradient(120deg, #fff 0%, #fff 17%, #f4f4f5 17%, #f4f4f5 100%);
	}

	header .wrapper h1.site-logo,
	header .wrapper p.site-logo {
		height: 87px;

		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;

		-webkit-align-items: center;
		-ms-align-items: center;
		align-items: center;
	}

	header .wrapper h1.site-logo img,
	header .wrapper p.site-logo img {
		width: 100%;
		height: auto;
	}

	header .wrapper p.site-logo>a {
		width: 35%;
	}

	header .wrapper p.site-logo .logo {
		width: 64%;
	}

	/* #Gnav-pc
	---------------------------------------- */
	header .wrapper .gnav-pc>ul.menu>li>a {
		font-size: 1rem;
	}

	header .wrapper .gnav-pc li ul.menu-child li a {
		padding: 1rem 0.5rem;
		font-size: 1rem;
	}
}


/* ---------------------------------------- 
 - img
---------------------------------------- */
@media screen and (max-width: 1180px) {
	/*img {width: 100%; height: auto;}*/
}

@media screen and (max-width: 768px) {
	img {
		width: auto;
		max-width: 100%;
		height: auto;
	}

	.titleBox {
		margin-top: 44px;
	}

	.titlebar {
		margin-top: 44px;
	}

	.titlebar .messageBox {
		display: block;
	}

	.titlebar .messageBox .textBox {
		margin: 0px 0;
		padding: 0 0 20px;
	}

	.titlebar .messageBox h4 {
		width: 30%;
		margin: 0 auto;
	}

	.titlebar .messageBox .textBox h3 {
		font-size: 1.3rem;
	}

	.titlebar .messageBox .textBox p {
		font-size: 1.1rem;
	}

	.titlebar .messageBox .textBox p br {
		display: none;
	}
}

/* ---------------------------------------- 
 - #container
---------------------------------------- */

/* ---------------------------------------- 
 - display
---------------------------------------- */
@media screen and (max-width: 768px) {
	#Container .pc {
		display: none;
	}

	#Container .sp {
		display: block;
	}
}

/* ---------------------------------------- 
 - header
---------------------------------------- */
@media screen and (max-width: 768px) {
	header {
		width: 100%;
		position: fixed;
		z-index: 200;
	}

	/*wrapper*/
	header .wrapper {
		width: 100%;
		max-width: none;
		min-width: inherit;
		height: 44px;
		padding: 0;
		display: flex;
		justify-content: space-between;
		align-items: center;

		background: linear-gradient(120deg, #fff 0%, #fff 22%, #f4f4f5 14%, #f4f4f5 100%)
	}

	header .wrapper h1.site-logo,
	header .wrapper p.site-logo {
		/*width: 42.66%;*/
		width: 56%;
		height: auto;
		padding: 0 0 0 3.1%;
		margin: 0;
		z-index: 10;
		/*position: absolute;
		top: 3.4%; left: 3.1%;*/
	}

	header .wrapper h1.site-logo img,
	header .wrapper p.site-logo img {
		width: 100%;
		height: auto;
	}

	header .wrapper p.site-logo .logo img {
		width: 80%;
		height: auto;
	}

	header .wrapper h1.site-logo a:hover,
	header .wrapper p.site-logo a:hover {
		filter: alpha(opacity=100);
		-moz-opacity: 1;
		opacity: 1;
	}

	/*#Btn_hambuger*/
	header #Btn_hambuger {
		width: 45px;
		height: 45px;
		display: block;
		/*position: absolute;
		top: 0; right: 0;*/
		z-index: 201;
		/*padding-bottom: 11.7%;*/
		background: url(../images/btn_hambuger.png) center center no-repeat;
		background-size: cover;
		line-height: 0;
	}

	header #Btn_hambuger.active {
		background: url(../images/btn_hambuger_close.png) center center no-repeat;
		background-size: cover;
	}
}

/* #Gnav-pc
---------------------------------------- */
@media screen and (max-width: 768px) {

	/* #Gnav-sp
	---------------------------------------- */
	header #Gnav-sp {
		width: 100%;
		display: none;
		/*SP用ナブを初期化*/
		position: absolute;
		top: 100%;
		left: 0;
		box-sizing: border-box;
		padding: 0.5rem 4% 2rem;
		background-color: rgba(0, 0, 0, 0.75);
		z-index: 10000;
	}

	header #Gnav-sp.gnav-sp {
		display: none;
	}

	/* .menu-wrapper */
	header #Gnav-sp.gnav-sp .menu-wrapper {
		display: -webkit-flex;

		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}

	header .gnav-sp .menu-wrapper ul.menu {
		width: 48%;
		width: 100%;
		display: block;
	}

	header .gnav-sp .menu-wrapper ul.menu>li {
		/*margin-top: 2em;*/
		margin-top: 0em;
		line-height: 1.4;
	}

	header .gnav-sp .menu-wrapper ul.menu>li:first-child {
		margin-top: 0;
	}

	header .gnav-sp .menu-wrapper ul.menu>li>a {
		display: block;
		padding: 0.85em 1em 0.85em 0;
		border-bottom: #fff solid 1px;
		position: relative;
		/*background: url(../images/sp/ico_plus_r.png) 100% center no-repeat;*/
		font-size: 1.6rem;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		color: #fff;
	}

	header .gnav-sp .menu-wrapper ul.menu>li>a:after {
		content: "＋";
		/*初期は+表示*/
		position: absolute;
		top: 1em;
		right: 5px;
		/*font-size: 1.6rem;*/
		font-weight: normal;
	}

	header .gnav-sp .menu-wrapper ul.menu>li>a>img {
		width: 30%;
	}

	header .gnav-sp .menu-wrapper ul.menu>li.no-child>a:after {
		/*サブメニューなし*/

	}

	header .gnav-sp .menu-wrapper li a:hover {
		-moz-opacity: 1;
		opacity: 1;
	}

	header .gnav-sp .menu-wrapper li ul.menu-child {
		display: none;
		/*初期は非表示*/
	}

	header .gnav-sp .menu-wrapper ul.menu>li.active>a:after {
		content: "－";
		/*親要素クリックで-表示*/
	}

	header .gnav-sp .menu-wrapper li.active ul.menu-child {
		display: block;
		/*親要素クリックで表示*/
	}

	header .gnav-sp .menu-wrapper li ul.menu-child li {
		display: block;
	}

	header .gnav-sp .menu-wrapper li ul.menu-child li a {
		display: block;
		padding: 0.75em 2em;
		background: url(../images/sp/ico_arr_gry_r.png) 100% center no-repeat;
		background-size: 2.6%;
		border-bottom: #666 solid 1px;
		font-size: 1.6rem;
		text-align: center;
		text-decoration: none;
		color: #EFEFEF;
	}

	header .gnav-sp .menu-wrapper li:last-child ul.menu-child li:last-child a {
		border-bottom: #fff solid 1px;
	}

	header .gnav-sp .menu-wrapper li ul.menu-child li:last-child a {
		/*border-bottom: none;*/
		border-bottom: #fff solid 1px;
	}

	/* .funcNav */
	header #Gnav-sp.gnav-sp .funcNav {
		margin-top: 3rem;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-align-items: stretch;
		align-items: stretch;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	header #Gnav-sp.gnav-sp .funcNav li {
		/*width: 48.7%;*/
		width: 100%;
		background: #e50012;
		margin-top: 1rem;
		font-size: 1.4rem;
		text-align: center;
	}

	header #Gnav-sp.gnav-sp .funcNav li a {
		display: block;
		padding: 0.5em 0.25em;
		box-sizing: border-box;
		color: #fff;
		font-weight: bold;
		line-height: 2em;
		overflow: hidden;
	}

	header #Gnav-sp.gnav-sp .funcNav li:first-child a {
		/*line-height: 2.5em;*/
	}

	header #Gnav-sp.gnav-sp .funcNav li a:hover {
		text-decoration: none;
	}
}

@media screen and (max-width: 750px) {

	/*スマホ専用*/
	header .gnav-sp .menu-wrapper ul.menu>li>a {
		font-size: 1.2rem;
	}

	header .gnav-sp .menu-wrapper ul.menu>li>a:after {
		font-size: 1.2rem;
	}

	header .gnav-sp .menu-wrapper li ul.menu-child li a {
		padding: 0.75em 1em;
		background: url(../images/sp/ico_arr_gry_r.png) 100% center no-repeat;
		background-size: 4.5%;
		font-size: 1.3rem;
	}

	/* .funcNav */
	header #Gnav-sp.gnav-sp .funcNav li {
		font-size: 1.1rem;
	}
}

/* ---------------------------------------- 
 - 共通wrapper
---------------------------------------- */
@media screen and (max-width: 768px) {
	.wrapper {
		width: 100%;
		max-width: none;
		padding: 0 4%;
	}
}

/* ---------------------------------------- 
 - #Content
---------------------------------------- */
@media screen and (max-width: 768px) {
	#Content {
		/*padding-top: 14.92% !important;*/
		padding-bottom: 0px;
		/*margin-top: 14.92% !important;
		margin-top: 11.86% !important;*/
		margin-top: 44px;
		font-size: 1.4rem;
		/*本文基本フォントサイズ 14px*/
	}

	#Content h2.ttl {
		font-size: 1.8rem !important;
	}
}

/*#Content #Sec01
------------------------ */
@media screen and (max-width: 768px) {
	#Content #Sec01 {
		padding-top: 3rem;
	}
}

/*#Content .ttl-area
------------------------ */
@media screen and (max-width: 768px) {

	/*old*/
	#Content .ttl-area {
		display: flex;
		background-color: #f5f5f6;
		line-height: 3.6rem;
	}

	#Content .ttl-area h1 {
		width: 50%;
		height: 3.6rem;
		max-width: inherit;
		min-width: inherit;
		text-align: left;
		font-size: 1.2rem;
	}

	#Content .ttl-area h2 {
		width: 50%;
		height: 3.6rem;
		font-size: 1.2rem;
	}

	/* breadcrumb */
	#Content>div.breadcrumb {
		display: block;
		height: inherit;
		padding: 1em 0;
		font-size: 0.7rem;
	}

	#Content>div.breadcrumb ul {
		line-height: 1.8;
		height: auto;
		padding: 0 3.1%;

	}

	#Content>.breadcrumb ul li {
		font-size: 0.5rem;
	}

	#Content>.breadcrumb ul li a {
		font-size: 0.5rem;
	}

	/*.flex-order*/
	#Content .flex-column .flex-order-pcTop-spBottom {
		-webkit-order: 3;
		order: 3;
	}

	/*下向き矢印*/
	#Content>.breadcrumb ul li.arrow a span {
		content: '';
		width: 6px;
		height: 6px;
		border: 0px;
		border-top: solid 1px #de0012;
		border-right: solid 1px #de0012;
		-ms-transform: rotate(135deg);
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		position: absolute;
		margin-top: 4px;
		margin-left: 1em;
		margin-right: 1em;
	}


	#Content>.breadcrumb ul li.current::after {
		content: "";
	}

	/*メディアクエリによる表示*/
	#Content>.breadcrumb ._pc {
		display: none !important;
	}

	#Content>.breadcrumb ._sp {
		display: inherit !important;
	}

	#Content>.breadcrumb ul.child_sp {
		display: block !important;
	}

	#Content>.breadcrumb ul.child_sp li:first-child::before {
		content: "（ ";
		padding: 0;
		color: #000;
	}
}

/*#Content .wrapper
------------------------ */
@media screen and (max-width: 768px) {
	#Content .wrapper {
		width: 100%;
		max-width: none;
		padding: 0 4%;
	}

	/*h3：カラムタイトル*/
	#Content .wrapper .col h3 {
		font-size: 1.8rem;
	}

	#Content .wrapper .col h3 span {
		font-size: 1.4rem !important;
	}

	#Content .wrapper .col h3 span.note {
		display: inline;
		font-size: 1rem !important;
	}

	/*.img：カラム画像*/
	#Content .wrapper .col .img {
		width: 100%;
		/*max-width: 270px;*/
	}

	#Content .wrapper .img.small,
	#Content .wrapper .col .img.small {
		width: 100%;
		max-width: 266px;
		text-align: center;
		margin-top: 1.5em;
	}

	#Content .wrapper .img.small img,
	#Content .wrapper .col .img.small img {
		width: 100%;
		max-width: 266px;
	}

	#Content .wrapper .img.middle,
	#Content .wrapper .col .img.middle {
		width: 100%;
		/*max-width: 340px;*/
		text-align: center;
	}

	#Content .wrapper .img.middle img,
	#Content .wrapper .col .img.middle img {
		width: 100%;
		max-width: 340px;
		text-align: center;
	}

	/*.img：カラムテキスト*/
	#Content .wrapper .col .txt {
		padding-top: 1em !important;
	}
}

/*１カラムの場合
.wrapper
------------------------ */
@media screen and (max-width: 768px) {

	/* 画像サイズ 270px */
	/* 画像サイズ 340px */
	#Content .wrapper .col.col-imgR,
	#Content .wrapper .col.col-imgR.imgM {
		min-height: none;
	}

	#Content .wrapper .col.col-imgR .img.small,
	#Content .wrapper .col.col-imgR.imgM .img.middle {
		width: 100%;
		position: relative;
		top: inherit;
		right: inherit;
		padding-top: 3rem;
	}

	#Content .wrapper .col .txt,
	#Content .wrapper .col h3,
	#Content .wrapper .col.col-imgR .txt,
	#Content .wrapper .col.col-imgR .txt,
	#Content .wrapper .col.col-imgR h3,
	#Content .wrapper .col.col-imgR.imgM .txt,
	#Content .wrapper .col.col-imgR.imgM h3 {
		max-width: none;
		margin-right: 0;
	}
}

/*左右半々の２カラムの場合
.wrapper.col-lr-wrapper
------------------------ */
@media screen and (max-width: 768px) {

	#Content .col-lr-wrapper,
	#Content .wrapper.col-lr-wrapper {
		display: block;
		margin: 0 auto;
	}

	#Content .col-lr-wrapper .col-l,
	#Content .col-lr-wrapper .col-r,
	#Content .col-lr-wrapper>.col,
	#Content .wrapper.col-lr-wrapper .col-l,
	#Content .wrapper.col-lr-wrapper .col-r,
	#Content .wrapper.col-lr-wrapper>.col {
		width: 100%;
		max-width: none;
		margin-right: 0;
		margin-left: 0;
	}

	#Content .col-lr-wrapper .col,
	#Content .wrapper.col-lr-wrapper .col {
		padding-top: 3rem;
	}

	#Content .col-lr-wrapper .col-r .col:first-child,
	#Content .wrapper.col-lr-wrapper .col-r .col:first-child {
		padding-top: 3rem;
	}
}

/* ページ下の注釈 */
@media screen and (max-width: 768px) {
	#Content .wrapper p.note {
		/*注釈*/
		/*padding-top: 3rem;
		font-size: 1.2rem;
		text-align: left;*/
	}
}

/* ---------------------------------------- 
 - #Pagetop
---------------------------------------- */
@media screen and (max-width: 768px) {
	#Pagetop {
		bottom: 3rem;
		right: 0;
		width: 11.7%;
		height: auto;
		max-width: 46px;
	}
}

/* ---------------------------------------- 
 - footer
---------------------------------------- */
@media screen and (max-width: 768px) {
	footer {
		text-align: left;
	}

	footer .wrapper {
		width: 100%;
		margin: 0;
		display: block;
	}
}

/*#FuncNav
----------------------*/
@media (max-width: 768px) {
	footer #FuncNav {
		display: none;
	}
}

/*.gnav-footer
----------------------*/
@media (max-width: 768px) {

	/*.gnav-footer*/
	footer .gnav-footer .wrapper {
		width: 100%;
		display: block;
		padding: 0 4%;
	}

	footer .gnav-footer .wrapper ul.menu {
		width: 100%;
		padding: 1em 0;
		display: block;
	}

	footer .gnav-footer .wrapper ul.menu li {
		width: 100%;
		box-sizing: border-box;
	}

	footer .gnav-footer .wrapper ul.menu li a {
		width: 100%;
		box-sizing: border-box;
		display: block;
		padding: 1em 0.25em;
		border: #404040 solid 1px;
		background: rgba(255, 255, 255, 1) url(../images/sp/ico_arr_red_r_sp.png) 96.5% center no-repeat;
		background-size: 3%;
		font-size: 1.6rem;
	}
}

/*.footer-utility
----------------------*/
@media (max-width: 768px) {
	footer .footer-utility {
		background: #fff;

		display: -webkit-flex;
		display: flex;
		flex-direction: column-reverse;
	}

	footer .footer-utility .wrapper {
		padding-bottom: 0;
	}

	footer .footer-utility .wrapper .area_utilityLink {
		padding: 1em;
	}

	footer .footer-utility .wrapper .area_utilityLink p {
		padding-top: 1em;
		font-size: 0.9rem;
	}

	footer .footer-utility .wrapper .area_utilityLink #Sp_share_area {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: center;
		justify-content: center;
	}

	footer .footer-utility .wrapper .area_utilityLink #Sp_share_area a {
		width: 42.53%;
		display: block;
		padding: 0 1.49%;
		font-size: 1.2rem;
	}

	/*.area_shares*/
	footer .footer-utility .wrapper .area_shares {
		display: none;
	}

}

/*.copyright
----------------------*/
@media screen and (max-width: 768px) {

	/*.copyright*/
	/*.logo*/
	footer .copyright p.logo {
		width: 24.32%;
		max-width: 163px;
	}

	/*.cpr*/
	footer p.cpr {
		font-size: 0.9rem;
		line-height: 20px;
	}

}