@charset "UTF-8";
/* ==========================================================================

	2019/2/14

   ========================================================================== */
@import url("/extra/library/common/css/smart_phone.css") only screen and (max-width: 1030px);
/* Base
   ========================================================================== */
#campaign_tv_sales_waku1 {
	margin: 0 auto 20px;
}
body {
	background: #fff;
	-webkit-font-smoothing: antialiased;
}
.clearText {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

/* Contents
========================================================================== */
#page, .container {
	font-family: Meiryo, メイリオ, sans-serif !important;
}
.thiscontents {
	width: 100%;
}
a {
	-webkit-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	color: #0066CC;
}
a:hover {
	color: #0099CC;
}
.thiscontents * {
	box-sizing: border-box;
}
.thiscontents img {
	width:100%; height: auto;
}

/* 基本
----------------------------------------------------------------*/
.thiscontents .clear {
	width: 100%;
	overflow: hidden;
}
.thiscontents .cf:before,
.thiscontents .cf:after {
	content: " ";
	display: table;
}
.thiscontents .cf:after {
	clear: both;
}
.thiscontents .cf {
	*zoom: 1;
}
.thiscontents .clearboth {
	clear: both;
}
.thiscontents .flol {
	display: inline;
	float: left;
}
.thiscontents .flor {
	display: inline;
	float: right;
}
.thiscontents .pc {}
.thiscontents .tablet {
	display: none;
}
.thiscontents .sp {
	display: none;
}
.thiscontents .sp_tablet {
	display: none;
}
.thiscontents img {
	vertical-align: bottom;
	padding: 0;
	margin: 0;
	pointer-events: none;
	-webkit-touch-callout: none;
}
.thiscontents .fitimg,
.thiscontents .fitimg img {
	width: 100%;
	height: auto;
}
.thiscontents p {
	margin: 0;
	padding: 0;
}
.thiscontentsh1, .thiscontents h2,
.thiscontents h3, .thiscontents h4,
.thiscontents h5, .thiscontents h6 {
	font-weight: bold;
}
.thiscontents p {
	margin: 0;
	padding: 0;
}
.thiscontents sup {
	margin: 0;
	padding: 0;
	font-size: 11px;
	line-height: 15px;
}
.thiscontents .photo img {
	width: 100%;
	height: auto;
}
#footerNavi,
#footerListWrap{
  display: none;
}
#page .footerlogo {
  margin-top: 20px;
}
.red {
  color: #ee5d44;
}
.attention {
  font-size: 10px;
	vertical-align: top;
	color: #666;
}
@media screen and (max-width: 1030px) {
.thiscontents .pc {
	display: none;
}
.thiscontents .tablet,
.thiscontents .pc_tablet,
.thiscontents .sp_tablet {
	display: block;
}
/*.thiscontents {
	padding-top: 40px;
}*/
}
@media screen and (max-width: 736px) {
.thiscontents {
	margin-bottom: 10px;
}
.thiscontents .sp {
	display: block;
}
.thiscontents .pc_tablet,
.thiscontents .tablet {
	display: none;
}
#footer-outer_sp .navArea {
  display: none;
}
.attention {
  font-size: 3vw;
}
#footer .copyrightArea {
  margin-top: 2vw;
}
}

/*===============================================================
	
	girid
	
===============================================================*/
.gridcontainer {
	margin-top: -30px;
}
.gridcontainer .grid {
	float: left;
}
.grid {
	margin-top: 30px;
}
/*	gridSize :460 gutterSize :40 column :2 */
.gridwrp_2 {
	width: 104.167%;
}
.gridwrp_2 .grid_2 {
	width: 96.000%;
	margin-right: 4.000%;
}
.gridwrp_2 .grid_1 {
	width: 46.000%;
	margin-right: 4.000%;
}
.gridwrp_1 .grid_2 {
	width: 192.000%;
	margin-right: 8.000%;
}
/*	gridSize :290 gutterSize :40 column :3 */
.gridwrp_3 {
	width: 104.211%;
}
.gridwrp_3 .grid_3 {
	width: 95.960%;
	margin-right: 4.040%;
}
.gridwrp_3 .grid_2 {
	width: 62.626%;
	margin-right: 4.040%;
}
.gridwrp_3 .grid_1 {
	width: 29.293%;
	margin-right: 4.040%;
}
/*	gridSize :210 gutterSize :40 column :4 */
.gridwrp_4 {
	width: 104.167%;
}
.gridwrp_4 .grid_4 {
	width: 96.000%;
	margin-right: 4.000%;
}
.gridwrp_4 .grid_3 {
	width: 71.000%;
	margin-right: 4.000%;
}
.gridwrp_4 .grid_2 {
	width: 46.000%;
	margin-right: 4.000%;
}
.gridwrp_4 .grid_1 {
	width: 21.000%;
	margin-right: 4.000%;
}

/* PCのみ */
@media screen and (min-width: 1031px) {
.gridwrp_2 .grid:nth-child(2n+1) {
	clear: both;
}
.gridwrp_3 .grid:nth-child(3n+1) {
	clear: both;
}
.gridwrp_4 .grid:nth-child(4n+1) {
	clear: both;
}
} /* for PC min-width: 961px

/* タブレット以下 */
@media screen and (max-width: 1030px) {

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.gridwrp_3,
.gridwrp_3 .grid_1,
.gridwrp_3 .grid_2,
.gridwrp_2,
.gridwrp_2 .grid_1 {
	width: 100%;
	margin-right: 0;
}
.gridwrp_4 {
	width: 105.000%;
}
.gridwrp_4 .grid_1, .gridwrp_4 .grid_3 {
	width: 45.238%;
	margin-right: 4.762%;
}
.gridcontainer {
	margin-top: 0;
}
.grid {
	margin-top: 20px;
}
.grid:first-child {
	margin-top: 0px;
}
.gridwrp_4 .grid:nth-child(2) {
	margin-top: 0;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	flex_container
	
===============================================================*/
.flex_container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.flex_container .item {
	flex-basis: auto;
	margin-top: 20px;
}
.flex_container .item .txt {

}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	
} /* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
} /* for SP max-width: 736px */

/*----------------------------------------------------------------
アイテム比率
----------------------------------------------------------------*/
.flex_container .item_2_1 {
	width: 48%;
	margin-right: 4%;
}
.flex_container .item_3_1 {
	width: 31%;
	margin-right: 3.5%;
}
.flex_container .item_4_1 {
	width: 23%;
	margin-right: 2.6666%;
}
.flex_container .item_5_1 {
	width: 18.75%;
	margin-right: 1.5625%;
}
.flex_container .item_2_1:nth-child(2n),
.flex_container .item_3_1:nth-child(3n),
.flex_container .item_4_1:nth-child(4n),
.flex_container .item_5_1:nth-child(5n) {
	margin-right: 0;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
/*4→3カラム*/
.flex_container .item_4_1,
.flex_container .item_4_1:nth-child(4n) {
	width: 31%;
	margin-right: 3.5%;
}
/*5→4カラム*/
.flex_container .item_5_1,
.flex_container .item_5_1:nth-child(5n) {
	width: 23%;
	margin-right: 2.6666%;
}
.flex_container .item_4_1:nth-child(3n),
.flex_container .item_5_1:nth-child(4n) {
	margin-right: 0;
}
} /* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
/*2→1カラム*/
/*3→1カラム*/
.flex_container .item_2_1,
.flex_container .item_3_1 {
	width: 100%;
	margin-right: 0;
}
/*4→2カラム*/
/*5→2カラム*/
.flex_container .item_4_1,
.flex_container .item_4_1:nth-child(3n),
.flex_container .item_4_1:nth-child(4n),
.flex_container .item_5_1,
.flex_container .item_5_1:nth-child(4n),
.flex_container .item_5_1:nth-child(5n) {
	width: 48%;
	margin-right: 4%;
}
.flex_container .item_4_1:nth-child(2n),
.flex_container .item_5_1:nth-child(2n) {
	margin-right: 0;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	navigation
	
===============================================================*/
.nav_outer {
	width: 100%;
}
.navigation_wrp {
	width: 100%;
	height: 60px;
	background: #595959;
	z-index: 999;
}
.navigation_wrp .navigation {
	width: 600px;
	height: 60px;
	margin: 0 auto;
  padding: 20px 0;
  text-align: center;
}
.navigation li {
	line-height: 20px;
	font-size: 14px;
  font-weight: 700;
	display: inline-block;
  width: 180px;
}
.navigation li a {
	color: #fff;
	text-decoration: none;
  position: relative;
  padding-right: 10px;
}
.navigation li a:hover {
	color: #fbe660;
	text-decoration: none;
}
.navigation li a:after {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	top: 5px;
	bottom: auto;
	left: auto;
	right: auto;
	margin: auto;
  margin-left: 10px;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.navigation li a:hover:after {
  border-top: solid 2px #fbe660;
	border-left: solid 2px #fbe660;
}
.navigation li.entry a {
  background: #ee5d44;
  border-radius: 30px;
  padding: 5px 30px;
}
.navigation li.entry a:after {
  top: 10px;
}
.navigation li.entry a:hover {
  background: #fbe660;
  color: #666;
}
.navigation li.entry a:hover:after {
  border-top: solid 2px #666;
	border-left: solid 2px #666;
}


/* タブレット以下 */
@media screen and (max-width: 1030px) {
.nav_outer, .navigation_wrp {

}

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.navigation_wrp {
	height: auto;
}
.navigation_wrp .navigation {
	width: 100%;
	height: auto;
  padding: 0;
}
.navigation ul {
  display: flex;
  flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.navigation li {
	font-size: 4vw;
  width: 50%;
  padding: 4vw 0;
  flex-basis: auto;
}
.navigation li:first-child {
	border-right: 1px solid #ccc;
}
.navigation li.entry {
  width: 100%;
  flex-basis: auto;
  padding: 0;
}
.navigation li.entry a {
  display: block;
  width: 100%;
  margin: 0 auto;
  border-radius: 0;
  padding: 4vw 0;
}
.navigation li.entry a:after {
  top: 5vw;
}
} /* for SP max-width: 736px */



/*===============================================================
	
	header
	
===============================================================*/
.header {
	background: #fff;
}
.header .inner {
	padding: 28px 0;
}
.header .logo {
	width: 160px;
}
.header .logo a {
	display: block;
}
.header .logo img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
.header .inner {
	padding: 30px;
}
.header .logo {
	width: 116px;
}

} /* for tablet max-width: 1120px */

/* タブレット以下 */
@media screen and (max-width: 1030px) {
	
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.header .inner {
	padding: 15px;
}
.header .logo {
	width: 90px;
}
	
} /* for SP max-width: 736px */


/*===============================================================
	
	sp_menu
	
===============================================================*/
.sp_menu {
	display: none;
}
.linebtn {
	position: absolute;
	top: -1000px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.sp_menu {
	display: block;
	position: absolute;
	width: 100%;
	height: 40px;
	top: 50px;
	left: 0;
	z-index: 200;
	background: #000;
}
.sp_menu .inner {
	position: relative;
	width: 100%;
}
.sp_menu .menu {
	width: 100px;
	height: 40px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1200;
	background: none;
	color: #fff;
	text-align: center;
	border-top: solid 0 #000;
}
.sp_menu .menu a {
	display: block;
	position: relative;
	color: #fff;
	line-height: 40px;
	text-decoration: none;
	text-align: right;
	padding-right: 35px;
}
.active .menu a {}
.active .menu {
	background-color: rgba(0, 0, 0, 0.6);
}
.sp_menu .nav {
	position: absolute;
	top: 40px;
	left: 0;
	width: 100%;
	height: 0;
	background-color: rgba(0, 0, 0, 0.6);
	z-index: 1000;
	-webkit-overflow-scrolling: touch;
}
.sp_menu .nav .nav_container {
	position: relative;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	padding-bottom: 140px;
	box-sizing: border-box;
}
.sp_menu .nav .nav_container::-webkit-scrollbar {
	display: none;
}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.sp_menu .menu {
	width: 70px;
	height: 40px;
}
} /* for SP max-width: 736px */

/* SP向けレイアウトの指定：～320px */
@media only screen and (max-width: 320px) {
.sp_menu .menu {
	width: 40px;
	height: 40px;
	white-space: nowrap;
	text-indent: 100%;
	overflow: hidden;
}
} /* for SP max-width: 736px */

/*-------------------------------------------------------------
	menu-trigger
-------------------------------------------------------------*/
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.menu-trigger, .menu-trigger span {
	display: inline-block;
	-webkit-transition: all .3s;
	transition: all .3s;
	box-sizing: border-box;
}
.menu-trigger a {
	position: relative;
}
.menu-trigger span {
	position: absolute;
	right: 7px;
	width: 25px;
	height: 1px;
	background-color: #fff;
	border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
	top: 10px;
}
.menu-trigger span:nth-of-type(2) {
	top: 0;
	bottom: 0;
	margin: auto;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 10px;
}
/* animation */
.active .menu-trigger span:nth-of-type(1) {
	top: 9px;
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}
.active .menu-trigger span:nth-of-type(2) {
	opacity: 0;
	-webkit-transform: translateY(0) rotate(45deg);
	transform: translateY(0) rotate(45deg);
}
.active .menu-trigger span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
} /* for SP max-width: 736px */

/*-------------------------------------------------------------
	sp_sns
-------------------------------------------------------------*/
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.sp_menu .sp_sns {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 40px;
	z-index: 1000;
	overflow: hidden;
}
.sp_menu .sp_sns .sns li.twitter, .sp_menu .sp_sns .sns li.instagram, .sp_menu .sp_sns .sns li.facebook, .sp_menu .sp_sns .sns li.line {
	float: left;
	width: 40px;
}
.sp_menu .sp_sns .sns li.twitter a, .sp_menu .sp_sns .sns li.instagram a, .sp_menu .sp_sns .sns li.facebook a, .sp_menu .sp_sns .sns li.line a {
	background-image: url(/special/common/images/asset/sp_btn_twitter.png);
	background-color: #33ccff;
	background-position: 5px center;
	background-repeat: no-repeat;
	background-size: 30px 30px;
	padding: 0;
	white-space: nowrap;
	text-indent: 100%;
	overflow: hidden;
	display: block;
	width: 40px;
	height: 40px;
}
.sp_menu .sp_sns .sns li.instagram a {
	background-size: 40px 40px;
	background-position: center center;
}
.sp_menu .sp_sns .sns li.twitter a {
	background-image: url(/special/common/images/asset/sp_btn_twitter.png);
	background-color: #33ccff;
}
.sp_menu .sp_sns .sns li.instagram a {
	background-image: url(/special/common/images/asset/sp_btn_instagram.png);
	background-color: #33ccff;
}
.sp_menu .sp_sns .sns li.facebook a {
	background-image: url(/special/common/images/asset/sp_btn_facebook.png);
	background-color: #3b5998;
}
.sp_menu .sp_sns .sns li.line a {
	background-image: url(/special/common/images/asset/sp_btn_line.png);
	background-color: #00c300;
}
.sp_menu .sp_sns .sns li.socialplus {
	float: left;
	margin-left: 5px;
	margin-top: 2px;
}
} /* for tablet max-width: 1030px */

/*-------------------------------------------------------------
	sp_menu navigation
-------------------------------------------------------------*/
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.sp_menu .navigation {
	background-color: #000;
}
.sp_menu .navigation .localnav li {
	width: 100%;
	text-align: left;
	background: #fff;
}
.sp_menu .navigation .localnav li a {
	position: relative;
	display: block;
	line-height: 50px;
	color: #333;
	border-top: solid 1px rgba(0, 0, 0, 0.1);
	padding: 0 10px;
	box-sizing: border-box;
}
.sp_menu .navigation .localnav li a:after {
	position: absolute;
	content: " ";
	width: 12px;
	height: 12px;
	top: 0;
	bottom: 0;
	left: auto;
	right: 18px;
	margin: auto;
	border-top: solid 1px #999;
	border-left: solid 1px #999;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
} /* for SP max-width: 736px */

/*-------------------------------------------------------------
	sp_menu body
-------------------------------------------------------------*/
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.sp_menu .body {
	text-align: center;
	padding-bottom: 20px;
	background-color: #000;
	box-shadow: rgba(0, 0, 0, 0.701961) 0px 10px 10px 0px;
}
.sp_menu .body h3 {
	border-top: solid 1px #e63311;
	padding-top: 10px;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}
.sp_menu .body h3 span {
	color: #e63311;
}
.sp_menu .body h4 {
	border-top: solid 1px #e63311;
	padding-top: 10px;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	margin-top: 10px;
}
.sp_menu .body .btn a {
	width: 90%;
	margin: 0 auto;
	display: block;
	color: #fff;
	background: #222;
	border-radius: 5px;
	margin-top: 10px;
	font-size: 14px;
	line-height: 20px;
	padding: 10px 0;
	border-bottom: solid 2px rgba(0, 0, 0, 0.5);
}
.sp_menu .body .notmember {}
.sp_menu .body .notmember h4 {
	color: #e63311;
}
.sp_menu .body .notmember .btn a {
	color: #fff;
	background: #e63311;
}
.sp_menu .body .recommend ul {
	width: 100%;
	overflow: hidden;
}
.sp_menu .body .bnr {
	float: none;
	width: 90%;
	margin: 0 auto;
	margin-top: 10px;
}
.sp_menu .body .bnr img {
	width: 100%;
	height: auto;
}
.sp_menu .body .sp_vodlink {
	border-top: solid 1px #e63311;
	padding-top: 10px;
	margin-top: 20px;
}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.sp_menu .body .bnr {
	float: none;
	width: 90%;
	margin: 0 auto;
	margin-top: 10px;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	fixed
	
===============================================================*/
.fixed {
	position: fixed;
	top: 0;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.fixed {
	position: fixed;
	top: 0;
}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
} /* for SP max-width: 736px */

/*===============================================================
	
	timeline
	
===============================================================*/
.timeline {
	max-width: 100% !important;
	width: 100% !important;
	box-sizing: border-box;
}
.SandboxRoot body {
	background-color: transparent;
}
.timeline-widget {
	width: 100% !important;
	min-width: 100% !important;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
	
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.TwitterWidget #twitter-widget-0 {
	width: 100% !important;
}
.timeline {
	max-width: 100% !important;
	width: 100% !important;
	box-sizing: border-box;
	word-break: break-all;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	txtlink 2016/11/16
	
===============================================================*/
.txtlink {}
.txtlink a {
	position: relative;
	display: inline-block;
	color: #000;
	font-size: 16px;
	line-height: 1.4;
	text-decoration: none;
	padding-left: 15px;
}
.txtlink a:hover {
	color: #c00;
}
.txtlink a:after {
	position: absolute;
	content: "";
	width: 6px;
	height: 6px;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	margin: auto;
	border-top: solid 2px #c00;
	border-left: solid 2px #c00;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.txtlink.arw_prev a {}
.txtlink.arw_prev a:after {
	left: 3px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.txtlink.arw_after a {
	padding-left: 0;
	padding-right: 10px;
}
.txtlink.arw_after a:after {
	left: auto;
	right: 0;
}
.txtlink.arw_down a:after {
	top: 5px;
	bottom: auto;
	left: 2px;
	right: auto;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.txtlink.arw_after_down a {
	padding-left: 0;
	padding-right: 10px;
}
.txtlink.arw_after_down a:after {
	top: 5px;
	bottom: auto;
	left: auto;
	right: 0;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
/*	arw_box */
.txtlink.arw_box a {
	padding-left: 25px;
}
.txtlink.arw_box a:before {
	content: '';
	width: 20px;
	height: 20px;
	background: #000;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	margin: auto;
}
.txtlink.arw_box a:after {
	border-top: solid 1px #fff;
	border-left: solid 1px #fff;
	top: 0;
	bottom: 0;
	left: 5px;
	right: auto;
	margin: auto;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.txtlink a {
		font-size: 4vw;
		padding-left: 3.5vw;
	}
	.txtlink a:after {
		width: 1.5vw;
		height: 1.5vw;
	}
	.txtlink.arw_prev a {}
	.txtlink.arw_prev a:after {
		left: 1vw;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.txtlink.arw_after a {
		padding-right: 2vw;
	}
	.txtlink.arw_after a:after {}
	.txtlink.arw_down a:after {
		top: 1.5vw;
		left: 0.5vw;
	}
	.txtlink.arw_after_down a {
		padding-right: 2vw;
	}
	.txtlink.arw_after_down a:after {
		top: 1.5vw;
	}
	/*	arw_box */
	.txtlink.arw_box a {
		padding-left: 6vw;
	}
	.txtlink.arw_box a:before {
		width: 5vw;
		height: 5vw;
	}
	.txtlink.arw_box a:after {
		left: 1vw;
	}
} /* for SP max-width: 736px */

/*===============================================================
	
	PAGETOP
	
===============================================================*/
#btn_pagetop {
	width: 100%;
	overflow: hidden;
}
#btn_pagetop a {
	display: block;
	position: fixed;
	right: -300px;
	top: 0;
	width: 50px;
	height: 50px;
	color: #fff;
	background-color: #d2191a;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	z-index: 101;
	border-radius: 30px;
}
#btn_pagetop a:hover {
	background-color: #c00;
}
#btn_pagetop a:after {
	position: absolute;
	content: " ";
	width: 14px;
	height: 14px;
	top: 20px;
	left: 0;
	right: 0;
	bottom: auto;
	margin: auto;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	border-radius: 2px;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
#btn_pagetop a {
	width: 40px;
	height: 40px;
}
#btn_pagetop a:after {
	width: 12px;
	height: 12px;
	top: 17px;
	left: 0;
	right: 0;
	bottom: auto;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	以下案件毎のコンテンツ

===============================================================*/
/*===============================================================
	
	bg 背景
	
===============================================================*/
/* タブレット以下 */
@media screen and (max-width: 1030px) {
	
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
} /* for SP max-width: 736px */

/*===============================================================
	
	mainvisual
	
===============================================================*/
.mainvisual {
	width: 100%;
	background-color: #fbe660;
  background-image: url("../images/mainvisual/bg_illust.svg"),url("../images/mainvisual/bg_town.svg");
  background-repeat: no-repeat,repeat-x;
  background-position: left 50%,bottom center;
  background-size: 100% auto,60% auto;
	color: #222;
	text-align: center;
  padding-bottom: 30px;
}

@media screen and (max-width: 1250px) {
.mainvisual {
  background-position: left 65%,bottom center;
}	
} /* for tablet max-width: 1250px */
@media screen and (max-width: 1150px) {
.mainvisual {

}	
} /* for tablet max-width: 1250px */
/* タブレット以下 */
@media screen and (max-width: 1030px) {
 .mainvisual {
   background-position: left 35%,bottom center;
  background-size: 100% auto,80% auto;
 }
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.mainvisual {
  background-image: url("../images/mainvisual/bg_illust_sp.svg"),url("../images/mainvisual/bg_town.svg");
  background-position: left 38%,bottom center;
  background-size: 100% auto,120% auto;
  padding-bottom: 5vw;
}
} /* for SP max-width: 736px */

/*-------------------------------------------------------------
	mainvisual title
-------------------------------------------------------------*/
.mainvisual .top_header_wrp {
	margin: 0 auto;
  text-align: center;
}
.mainvisual .top_header_wrp .subtitle {
  display: inline-block;
  background: #ee5d44;
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  border-radius: 0 0 20px 20px;
  padding: 10px 20px;
}
.mainvisual .title {
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 20px;
}
.mainvisual .title span {
  font-size: 70px;
  font-weight: 800;
}
.mainvisual .title_txt {
  font-size: 18px;
  margin-top: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
	
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.mainvisual .top_header_wrp .subtitle {
  font-size: 4vw;
  border-radius: 0 0 4vw 4vw;
  padding: 2vw 5vw;
}
.mainvisual .title {
  font-size: 6vw;
  margin-top: 5vw;
}
.mainvisual .title span {
  font-size: 15vw;
}
.mainvisual .title_txt {
  font-size: 4vw;
  margin-top: 2.5vw;
}
} /* for SP max-width: 736px */


/*-------------------------------------------------------------
	.main_wrp
-------------------------------------------------------------*/
.main_wrp {
  position:relative;
  width: 800px;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 20px;
  margin-top: 100px;
  padding: 50px;
}
.main_wrp .icon_panda {
  position: absolute;
  width: 70%;
  height: auto;
  top: -90px;
  left: 0; right: 0;
  margin: 0 auto;
}
.main_wrp .main_title  {
	font-size: 45px;
  font-weight: 800;
  line-height: 1.1;
  margin-top: 15px;
}
.main_wrp .main_title .num {
  font-size: 120px;
  color: #ee5d44;
}
.main_wrp .main_title .txt {
  font-size: 80px;
  color: #ee5d44;
}
.main_wrp p {
  font-size: 13px;
  margin-top: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.main_wrp {
  width: 90%;
}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.main_wrp {
  margin-top: 14vw;
  padding: 8vw;
}
.main_wrp .icon_panda {
  width: 70%;
  top: -10vw;
}
.main_wrp .main_title  {
	font-size: 8vw;
  margin-top: 2vw;
}
.main_wrp .main_title .num {
  font-size: 18vw;
}
.main_wrp .main_title .txt {
  font-size: 12vw;
}
.main_wrp p {
  font-size: 3.5vw;
  margin-top: 2vw;
}
} /* for SP max-width: 736px */



/*===============================================================
	
	section
	複数のcontent、headlineなど格納するブロック
	
===============================================================*/
.section_wrp {
	background: #eee;
}
.section {
	width: 100%;
}
.section_inner {
	margin: 0 auto;
	padding: 50px 0 50px 0;
}
/* タブレット以下 */
@media screen and (max-width: 1240px) {
	.section_inner {
		margin: 0 auto;
		padding: 50px 20px 50px 20px;
	}
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.section_inner {
		margin: 0 auto;
		padding: 8vw 5vw;
	}
} /* for SP max-width: 736px */
/*===============================================================
	
	レイアウト
	
===============================================================*/
.wide_width {
	width: auto;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
.content_width {
	width: auto;
	max-width: 1030px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
.narrow_width {
	width: auto;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

/* タブレット以下 */
@media screen and (max-width: 1200px) {
.wide_width {
	width: 100%;
}
} /* for tablet max-width: 1200px */

/* タブレット以下 */
@media screen and (max-width: 1030px) {
.content_width {
	width: 100%;
}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
.narrow_width {
	width: 100%;
}
} /* for SP max-width: 800px */

/*===============================================================
	
	content 
	
===============================================================*/
.content {
	margin: 0 auto;
}
.content + .content {
	margin-top: 50px;
}
.headline + .content {
	margin-top: 50px;
}
/*.content p {
	font-size: 16px;
	line-height: 2;
}*/
.content p + p {
	margin-top: 20px;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
	.content {
		margin: 0 auto;
	}
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content {
	width: 100%;
	margin: 0 auto;
}
.content + .content {
	margin-top: 6vw;
}
.headline + .content {
	margin-top: 6vw;
}
/*.content p {
	font-size: 4vw;
	line-height: 1.8;
	margin-top: 0;
}*/
.content p + p {
	margin-top: 2vw;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	headline：見出し
	subhead：小見出し
	
===============================================================*/
.headline {
	text-align: center;
}
.headline .title {
	font-size: 30px;
	line-height: 1.2;
}
.headline .read {
	font-size: 16px;
	line-height: 1.4;
	margin-top: 10px;
}
.headline .label {
	font-size: 20px;
	line-height: 1.2;
	color: #ff9900;
	font-weight: bold;
	padding-bottom: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.headline .title {
	font-size: 7vw;
	padding-bottom: 0px;
}
.headline .read {
	font-size: 4vw;
	margin-top: 2vw;
}
.headline .label {
	font-size: 4.5vw;
	padding-bottom: 0px;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	content_title 
	
===============================================================*/
.content_title {
	text-align: center;
}
.content_title .title {
	font-size: 30px;
	line-height: 1.2;
}
.content_title .read {
	font-size: 20px;
	line-height: 1.4;
	margin-top: 20px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
	
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content_title .title {
	font-size: 18px;
}
} /* for SP max-width: 736px */

/*===============================================================
	
	btn_detail
	
===============================================================*/
.btn_detail {
	width: 400px;
	margin: 0 auto;
	margin-top: 40px;
}
.btn_detail a {
	position: relative;
	display: block;
	background-color: #e61e19;
	text-align: center;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
	padding: 15px 0;
	border-radius: 0px;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 0px 0px;
}
.btn_detail a:after {
	position: absolute;
	content: " ";
	width: 6px;
	height: 6px;
	top: 0;
	left: auto;
	bottom: 0;
	right: 10px;
	margin: auto;
	border-top: solid 1px #fff;
	border-left: solid 1px #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.btn_detail a:hover {
	text-decoration: none;
	background-color: #f00;
}
.btn_detail_red a {
	background-color: #c91b36;
}
.btn_detail_red a:hover {
	background-color: #e31838;
}
.btn_detail_black a {
	background-color: #000;
}
.btn_detail_black a:hover {
	background-color: #222;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.btn_detail {
	width: 100%;
	margin: 0 auto;
	margin-top: 4vw;
}
.btn_detail a {
	font-size: 4.5vw;
	padding: 4vw 0;
}
} /* for SP max-width: 736px */

/*-------------------------------------------------------------
	flexbtn	
-------------------------------------------------------------*/
.flexbtn {
	width: auto;
	text-align: center;
}
.flexbtn a {
	display: inline-block;
	padding: 15px 40px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
} /* for SP max-width: 736px */

/*===============================================================
	
	noto sans
	
===============================================================*/
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('/special/common/webfont/NotoSansCJKjp-Regular_subset.woff') format('woff');
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: bold;
  font-weight: 700;
  src: url('/special/common/webfont/NotoSansCJKjp-Bold_subset.woff') format('woff');
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: bold;
  font-weight: 800;
  src: url('/special/common/webfont/NotoSansCJKjp-Black_subset.woff') format('woff');
}
.noto_sans {
	font-family: 'Noto Sans JP', sans-serif;
  font-feature-settings: "palt";
}

/*===============================================================
	
	section_flow
	
===============================================================*/
.section_flow {
  background-color: #fff;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section_flow .section_inner {

}
.section_flow .headline + .content {
  margin-top: 12vw;
}
} /* for SP max-width: 736px */
/*===============================================================
	
	popbox
	
===============================================================*/ 
.popbox {
	position:relative;
	text-align:left;
	color:#333;
}
.popbox .popbox_body {
	position: relative;
  border: 1px solid #d6d5d5;
  border-radius: 10px;
  text-align: center;
}
.popbox .popbox_arw {
	position:relative;
	width:100%;
	height:25px;
	margin:0;
	overflow:hidden;
}
.popbox .popbox_arw:after {
	position: absolute;
	z-index:5;
	content:'';
	margin: auto;
	left: 0;
	right:0;
	top: -15px;
	width: 30px;
	height: 30px;
	background: #ccc;
	transform:rotate(45deg);
}
.popbox .popbox_inner {
	padding:25px 20px 20px;
}
/* タブレット以下 */
@media screen and (max-width: 1080px) {
.popbox .popbox_inner {
	padding:20px 15px;
}
}	/* for tablet max-width: 940px */
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.popbox .popbox_inner {
	padding:20px 10px 10px;
}
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.popbox .popbox_inner {
	padding:7vw 5vw 5vw;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	右
-------------------------------------------------------------*/
.popbox_right {
	position:relative;
	margin-top:30px;
} 
.popbox_right .popbox_body {
	margin-right:50px;
} 
.popbox_right .popbox_arw {
	position:absolute;
	width:20px;
	height:50px;
	margin:auto;
	top:0; bottom:0; left:auto; right:0;
	z-index:1;
} 
.popbox_right .popbox_arw:after {
	top:0; bottom:0; left:auto; right:8px;
}

/* タブレット以下 */
@media screen and (max-width: 1080px) {
.popbox_right .popbox_body {
	margin-right:30px;
} 
}	/* for tablet max-width: 108px */
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.popbox_right .popbox_body {
	margin-right:20px;
} 
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	flowbox
	
===============================================================*/
.flowbox {
}
.flowbox .popbox {
	float:left;
}
.flowbox .popbox_wrp {
	width:102.12%;
}
.flowbox3 .popbox {
	width:33.3%;
}
.flowbox4 .popbox {
	width:25%;
}
.flowbox4 .popbox4_3 {
	width:75%;
}

.flowbox5 .popbox {
	width:20%;
}
.flowbox + .flowbox {
	margin-top:50px;
}



/* タブレット以下 */
@media screen and (max-width: 1030px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.flowbox .popbox_wrp,
.flowbox3 .popbox,
.flowbox4 .popbox,
.flowbox5 .popbox {
	width:100%;
}
.flowbox .popbox + .popbox {
	margin-top: 6vw;
}	
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	.flowbox .popbox_right
-------------------------------------------------------------*/
.flowbox .popbox_right .popbox_arw {
	position:absolute;
	width:20px;
	height:50px;
	margin:auto;
	top:0; bottom:0; left:auto; right:10px;
	z-index:1;
}
.flowbox .popbox_right .popbox_arw:after {
	top:0; bottom:0; left:auto; right:15px;
}

/* タブレット以下 */
@media screen and (max-width: 1080px) {
.flowbox .popbox_right .popbox_arw {
	right:0;
}
}	/* for tablet max-width: 108px */

/* タブレット以下 */
@media screen and (max-width: 1030px) {
.flowbox .popbox_right .popbox_arw {
	right:-5px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.flowbox .popbox_right {
	position:relative;
	margin-top:0;
}
.flowbox .popbox_right .popbox_body {
	margin-left:0;
	width:100%;
}
.flowbox .popbox_right .popbox_arw {
	position:relative;
	width:100%;
	height:25px;
	margin:auto;
	overflow:hidden;
	right:0;
	margin-top: 15px;
}
.flowbox .popbox_right .popbox_arw:after {
	left: 0;
	right:0;
	top: auto;
	bottom:15px;
	width: 30px;
	height: 30px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	stepnumber	
-------------------------------------------------------------*/
.flowbox .stepnumber {
	position:absolute;
	top:-20px;
	left:0;
	right: 0;
	margin: auto;
	width:120px;
	color:#333;
	font-size:16px;
	line-height:2;
  font-weight: 700;
	text-align:center;
  background-color: #fbe660;
  border-radius: 30px;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
.flowbox .stepnumber {
  top: -13px;
  width: 100px;
  line-height:1.7;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.flowbox .stepnumber {
	top:-4vw;
  font-size: 4.5vw;
  width: 30vw;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.flowbox txt .step_name
-------------------------------------------------------------*/
.flowbox .popbox_body .step_name {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 0;
}
.flowbox .popbox_body .name_jcom {
  color: #e83816;
}
.flowbox .popbox_body .name_sakai {
  color: #ceb935;
}
.flowbox .popbox_body .name_customer {
  color: #5ca8b5;
}
.flowbox .popbox_body .step_name.arrow {
  position: relative;
  display: inline-block;
  padding: 0 0 0 20px;
  vertical-align: middle;
}
.flowbox .popbox_body .step_name.arrow::before,
.flowbox .popbox_body .step_name.arrow::after{
    position: absolute;
    top: 1.5px;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.flowbox .popbox_body .step_name.arrow::before{
    width: 16px;
    height: 16px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background:#898787;
}
.flowbox .popbox_body .step_name.arrow::after{
    left: 4.5px;
    width: 4px;
    height: 4px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.flowbox .popbox_body .step_name {
  font-size: 16px;
  }
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.flowbox .popbox_body .step_name {
  font-size: 5vw;
  }
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	.flowbox txt
-------------------------------------------------------------*/
.flowbox .popbox_body .step_title {
  font-size: 20px;
  font-weight: 700;
  margin-top: 20px;
}
.flowbox .popbox_body .step_txt {
  font-size: 14px;
  /*text-align: left;*/
  line-height: 1.6;
  margin-top: 20px;
}
.flowbox .popbox_body .photo {
  width: 80%;
  margin: 0 auto;
  margin-top: 10px;
}
.flowbox .popbox_body .panda_img {
  width: 40%;
  margin: 0 auto;
  margin-top: 20px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
.flowbox .popbox_body .step_title {
  font-size: 17px;
}
.flowbox .popbox_body .step_txt {
  font-size: 1.4vw;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.flowbox .popbox_body .step_title {
  font-size: 7vw;
  margin-top: 4vw;
}
.flowbox .popbox_body .step_txt {
  font-size: 4vw;
  margin-top: 4vw;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.step_subtitle
-------------------------------------------------------------*/
.flowbox .popbox_body .step_subtitle {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 20px;
}
.flowbox .popbox_body .step_subtitle span {
  font-size: 36px;
  font-weight: 800;
  color: #ee5d44;
}
.flowbox .popbox_body .step_sub_wrp {
  width: 100%;
  padding: 15px;
  margin-top: 30px;
  border-radius: 10px;
  background-color: #ffffd5;
  text-align: left;
}
.flowbox .popbox_body .step_sub_wrp .sub_ph {
  float: right;
  width: 40%;
  height: auto;
  margin-top: -8px;
  margin-right: -10px;
}
.flowbox .popbox_body .step_sub_wrp .sub_ph img {
  transform: rotate( 15deg );
}
.flowbox .popbox_body .step_subtxt {
  font-size: 14px;
  line-height: 1.3;
}
.flowbox .popbox_body .step_subtxt .step_subtxt {
  font-size: 20px;
  font-weight: 800;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
.flowbox .popbox_body .step_subtitle {
  font-size: 18px;
}
.flowbox .popbox_body .step_subtitle span {
  font-size: 32px;
}
.flowbox .popbox_body .step_sub_wrp {
  padding: 5px;
  margin-top: 20px;
  text-align: center;
}
.flowbox .popbox_body .step_sub_wrp .sub_ph {
  float: none;
  width: 40%;
  height: auto;
  margin: 0 auto;
  margin-top: -20px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.flowbox .popbox_body .step_subtitle {
  font-size: 6vw;
}
.flowbox .popbox_body .step_subtitle span {
  font-size: 12vw;
}
.flowbox .popbox_body .step_sub_wrp {
  width: 100%;
  padding: 5vw 10vw;
  margin: 0 auto;
  margin-top: 5vw;
  text-align: left;
}
.flowbox .popbox_body .step_sub_wrp .sub_ph {
  float: right;
  width: 45%;
  height: auto;
  margin-top: -3vw;
  margin-right: -3vw;
}
.flowbox .popbox_body .step_subtxt {
  font-size: 4vw;
}
.flowbox .popbox_body .step_subtxt .step_subtxt {
  font-size: 6vw;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	flowbox_plus
-------------------------------------------------------------*/
.flowbox_plus {
  position: relative;
  width: 460px;
  margin: 0 auto;
  margin-top: 60px;
  padding: 25px;
  border-radius: 16px;
  background-color: #ffffd5;
}
.flowbox_plus .step_plus {
  position: absolute;
	width:40px;
	height:40px;
	background:#fbe660;
	color:#222;
	text-align:center;
	border-radius:50%;
  top: -20px;left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
.flowbox_plus .step_plus span {
	line-height:1.1;
	display:block;
  font-size:34px;
}
.flowbox_plus .step_plus_ph {
  float: right;
  width: 25%;
  height: auto;
}
.flowbox_plus .step_plus_ph img {
  transform: rotate( 15deg );
}
.flowbox_plus .step_plus_txt {
  font-size: 30px;
  font-weight: 800;
  margin-top: 5px;
}

.flowbox_plus + .attention {
  text-align: center;
  margin-top: 10px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.flowbox_plus {
  position: relative;
  width: 100%;
  margin-top: 12vw;
  padding: 5vw;
  border-radius: 5vw;
}
.flowbox_plus .step_plus_txt {
  font-size: 6vw;
  font-weight: 800;
  margin-top: 5px;
}
.flowbox_plus .step_plus {
	width:10vw;
	height:10vw;
  top: -5vw;
}
.flowbox_plus .step_plus span {
  font-size: 9vw;
  line-height: 1;
}
}	/* for SP max-width: 736px */



/*===============================================================
	
	section_detail
	
===============================================================*/
.section_detail {
	background-color: #fdfbea;
}


/*-------------------------------------------------------------

	.topics_list dl	
	
-------------------------------------------------------------*/
.topics_list dl {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	width: 100%;
}
.topics_list dt {
	flex-basis: 23%;
	padding:30px 10px;
	font-size:15px;
	font-weight:700;
  color: #ee5d44;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border-bottom:dashed 1px #ccc;
}
.topics_list dd {
	flex-basis: 77%;
	padding:30px 0;
	border-bottom:dashed 1px #ccc;
	font-size:15px;
  line-height: 1.8;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

.topics_list dt:first-child,
.topics_list dd:nth-child(2) {
	border-top:dashed 1px #ccc;
}


/* タブレット以下 */
@media screen and (max-width: 1030px) {

}	/* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.topics_list dl {
	flex-flow: column;
}
.topics_list dt {
	width:100%;
	padding:4vw 0 0 0;
	font-size:3.5vw;
	font-weight:bold;
	border:none;
}
.topics_list dd {
	padding:1vw 0 4vw 0;
	border-top:solid 0px #ddd;
	font-size:3.5vw;
	line-height:1.5;
}
	
.topics_list dd:nth-child(2) {
	border-top:none;
}
}	/* for SP max-width: 736px */




/*===============================================================
	
	entry
	
===============================================================*/
.section_detail .entry {
	background-color: #fff;
  border-radius: 20px;
  padding: 50px;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {

} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section_detail .entry {
  border-radius: 5vw;
  padding: 8vw;
  margin-top: 12vw;
}
} /* for SP max-width: 736px */

/*-------------------------------------------------------------
	btn_entry
-------------------------------------------------------------*/
.btn_entry {
	width: 100%;
	margin-top: 20px;
}
.btn_entry a {
	position: relative;
	display: block;
	background-color: #ee5d44;
	text-align: center;
	color: #fff;
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
	padding: 25px 0;
	border-radius: 50px;
}
.btn_entry a:before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("../images/icn-mail-white.svg");
  background-size: contain;
  vertical-align: middle;
  margin-right: 10px;
}
.btn_entry a:hover {
	text-decoration: none;
	background-color: #fbe660;
  color: #666;
}


/* タブレット以下 */
@media screen and (max-width: 1030px) {
	
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.btn_entry {
	margin-top: 0;
}
.btn_entry a {
	font-size: 5vw;
	padding: 5vw 0;
	border-radius: 20vw;
}	
} /* for SP max-width: 736px */

/*-------------------------------------------------------------
	btn_freedial
-------------------------------------------------------------*/
.freecall_txt {
	font-size: 14px;
	text-align: center;
}
.btn_freecall {
  width: 100%;
}
.btn_freecall a {
    position: relative;
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #333;
    line-height: 1.3;
    padding: 10px 20px 10px 96px;
    border: 2px solid #939393;
    border-radius: 12px;
    text-align:left;
}
.btn_freecall a::before {
    content: "";
    position: absolute;
    top: 30%;
    left: 40px;
    display: inline-block;
    background: url("../images/icn-freecall.svg") no-repeat center center/contain;
    width: 40px;
    height:31px;
}

.btn_freecall .num {
    font-size: 24px;
    font-weight: 800;
    color:#08287f;
}
.btn_freecall a:hover {
	text-decoration: none;
	background-color: #fbe660;
}
.entry .attention {
  text-align: center;
  margin-top: 5px;
}
/* タブレット以下 */
@media screen and (max-width: 1030px) {
	
} /* for tablet max-width: 1030px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.freecall_txt {
	font-size: 3vw;
	text-align: center;
}
	.btn_freecall a {
    font-size: 3.5vw;
    padding: 2vw 5vw 2vw 22vw;
    border-radius: 3vw;
}
.btn_freecall a::before {
    top: 3.5vw;
    left: 6vw;
    width: 9vw;
    height:9vw;
}
.btn_freecall .num {
    font-size: 5.5vw;
}
} /* for SP max-width: 736px */