@charset "utf-8";
/*===============================================================
	
	2016/5/2
	
===============================================================*/

/* 初期化
----------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
  font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	outline: none;
}
blockquote, q {	quotes: none;	}
blockquote:before, blockquote:after,
q:before, q:after {	content: '';	content: none;}
input, textarea { margin: 0;	padding: 0;}
table{	border-collapse: collapse; border-spacing:0;	}
body { font-family: 'Roboto', 'Montserrat', 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", 'YuGothic',sans-serif, 'Hiragino Kaku Gothic Pro','メイリオ','Meiryo','ＭＳ Ｐゴシック','Osaka','sans-serif'; }
h1,h2,h3,h4,h5,h6,p,li,th,td,dt,dd { font-size:14px; line-height:22px; }
caption,th,td { text-align:left; vertical-align:top; }
img { vertical-align:top; border:0; }
ul,li { list-style:none; }
option { padding-right:1em; }
address,caption { font-style:normal; font-weight:normal; }
a {	outline:none;	text-decoration:underline; }
a:focus {	outline:none;	}
ul a ,li a {	zoom:1;	}

/* HTML5
----------------------------------------------------------------*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
video {
	background:#000;
}

/* 文字サイズ、装飾
----------------------------------------------------------------*/
.bold, strong  {	font-weight:bold; }
.cap {
	font-size:12px;
	line-height:15px;
	}		
.red	{	color:#f06971;		}
.violet {	color:#6d6886; }
.yellow	{	color:#f4e228;		}
.blue	{	color:#1d50a2;		}
.lightblue { color:#00afd7; }
.green	{	color:#80c878;	}
.brown	{	color:#633;		}
.pink	{	color:#db89ad;		}
.gray	{	color:#eaeeed;		}
.deepgray { color:#92999f ;}
.align_center	{	text-align:center;		}
.align_right	{	text-align:right;		}
.align_left	{	text-align:left;		}
.replace {	overflow:hidden;	white-space:nowrap;	text-indent:100%;	}

/* フロート関係
----------------------------------------------------------------*/
.clear {
	width:100%;
	overflow:hidden;
}
.clearboth {
	clear:both;
}
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
  *zoom: 1;
}
.flol {
	float:left;
}
.flor {
	float:right;
}
/* マージン
----------------------------------------------------------------*/
.mt0	{	margin-top:0px !important; }
.mt05	{	margin-top:5px;		}
.mt10	{	margin-top:10px;	}
.mt15	{	margin-top:15px;	}
.mt20	{	margin-top:20px;	}
.mt25	{	margin-top:25px;	}
.mt30	{	margin-top:30px;	}
.mt40	{	margin-top:40px;	}
.mt50	{	margin-top:50px;	}
.mt60	{	margin-top:60px;	}
.mt70	{	margin-top:70px;	}
.mt80	{	margin-top:80px;	}
.mt90	{	margin-top:90px;	}
.mt100	{	margin-top:100px;	}
.mt01e	{	margin-top:1em;		}
.mt02e	{	margin-top:2em;	}
.mt03e	{	margin-top:3em;	}

.mb05	{	margin-bottom:5px;	}
.mb10	{	margin-bottom:10px;	}
.mb15	{	margin-bottom:15px;	}
.mb20	{	margin-bottom:20px;	}
.mb25	{	margin-bottom:25px;	}
.mb30	{	margin-bottom:30px;	}
.mb40	{	margin-bottom:40px;	}
.mb50	{	margin-bottom:50px;	}
.mb60	{	margin-bottom:60px;	}
.mb70	{	margin-bottom:70px;	}
.mb80	{	margin-bottom:80px;	}
.mb90	{	margin-bottom:90px;	}
.mb100	{	margin-bottom:100px;	}
.mb01e	{	margin-bottom:1em;	}
.mb02e	{	margin-bottom:2em;	}
.mb03e	{	margin-bottom:3em;	}

.pt0	{	padding-top:0px !important; }
.pt05	{	padding-top:5px;		}
.pt10	{	padding-top:10px;	}
.pt15	{	padding-top:15px;	}
.pt20	{	padding-top:20px;	}
.pt25	{	padding-top:25px;	}
.pt30	{	padding-top:30px;	}
.pt40	{	padding-top:40px;	}
.pt50	{	padding-top:50px;	}
.pt60	{	padding-top:60px;	}
.pt70	{	padding-top:70px;	}
.pt80	{	padding-top:80px;	}
.pt90	{	padding-top:90px;	}
.pt100	{	padding-top:100px;	}

.pb05	{	padding-bottom:5px;	}
.pb10	{	padding-bottom:10px;	}
.pb15	{	padding-bottom:15px;	}
.pb20	{	padding-bottom:20px;	}
.pb25	{	padding-bottom:25px;	}
.pb30	{	padding-bottom:30px;	}
.pb40	{	padding-bottom:40px;	}
.pb50	{	padding-bottom:50px;	}
.pb60	{	padding-bottom:60px;	}
.pb70	{	padding-bottom:70px;	}
.pb80	{	padding-bottom:80px;	}
.pb90	{	padding-bottom:90px;	}
.pb100	{	padding-bottom:100px;	}

.p05	{	padding:5px; }
.p10	{	padding:10px;	}
.p15	{	padding:15px;	}
.p20	{	padding:20px;	}
.p25	{	padding:25px;	}
.p30	{	padding:30px;	}
.p40	{	padding:40px;	}
.p50	{	padding:50px;	}

.p1em	{	padding:1em; }
.p15em	{	padding:1.5em; }
.p2em	{	padding:2em; }
.p5em	{	padding:5em; }
.p8em	{	padding:8em; }
.p10em	{	padding:10em; }
.p14em	{	padding:14em; }

.pt1rem { padding-top: 1rem; }
.pt15rem { padding-top: 1.5rem; }
.pt2rem { padding-top: 2rem; }
.pt25rem { padding-top: 2.5rem; }
.pt3rem { padding-top: 3rem; }
.pt35rem { padding-top: 3.5rem; }
.pt4rem { padding-top: 4rem; }
.pt45rem { padding-top: 4.5rem; }
.pt5rem { padding-top: 5rem; }
.pb1rem { padding-bottom: 1rem; }
.pb15rem { padding-bottom: 1.5rem; }
.pb2rem { padding-bottom: 2rem; }
.pb25rem { padding-bottom: 2.5rem; }
.pb3rem { padding-bottom: 3rem; }
.pb35rem { padding-bottom: 3.5rem; }
.pb4rem { padding-bottom: 4rem; }
.pb45rem { padding-bottom: 4.5rem; }
.pb5rem { padding-bottom: 5rem; }

/* html/body設定
----------------------------------------------------------------*/
html {
}
body {
	width: 100%;
	color:#000;
	background:#ddd;
	text-align:left;
	font-size:14px;
	line-height:25px;
	-webkit-text-size-adjust:none; /* 縦横文字サイズ同じ */
	-webkit-font-smoothing: antialiased;
}
a {
	color:#000;
	text-decoration:none;
	-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;
	-ms-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;  
	-moz-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
	-o-transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
}
a:hover { color:#1d50a2; }

.boxshadow {
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.20);
	-moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.20);
	-webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.20);
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～640px */
@media only screen and (max-width: 736px) {
}	/* for SP max-width: 736px */

/*===============================================================
	
	基本文字サイズ
	
===============================================================*/
h2 {
	/*font-size:172%;	/* 24px */
	font-weight:bold;
}
h3 {
	/*font-size:172%;	/* 24px */
	font-weight:bold;
}
h4 {
	/*font-size:115%;	/* 16px */
	line-height:1.4;
}
p {
	/*font-size:100%;	/* 14px */
	line-height:1.8;
}
sup {
	margin:0;
	padding:0;
	font-size:11px;
	line-height:15px;
}

/*===============================================================
	
	PC/SP/TABLET
	
===============================================================*/
.sp {
	display:none;
}
.pc {
	/*display:block;*/
}
.tablet {
	display:none;
}
.sp {
	display:none;
}
.sp_tablet {
	display:none;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.pc {
	display:none;
}
.tablet,
.pc_tablet,
.sp_tablet {
	display:block;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.sp {
	display:block;
}
.pc_tablet,
.tablet {
	display:none;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	img fig
	
===============================================================*/
.fig img,
.fitimg img,
.fitimg video, 
.photo img {
	width:100%;
	height:auto;
}

.fig {
	border:solid 1px #ddd;
}
.content .fig {
	margin-top:30px;
}
.borderimg {
	border:solid 1px #ddd;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content .fig {
	margin-top:15px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	レイアウト
	
===============================================================*/
.wrapper {
}
.content_width {
	width:960px;
	margin:0 auto;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.content_width {
	width:100%;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */
/*===============================================================
	
	ヘッダ
	
===============================================================*/
.header_wrp {
	width:100%;
	background: #fff;
}
/* 20250508 旧ヘッダー用
.header {
	width:100%;
	height:70px;
	position:relative;
}
*/
/* 20250731 新ヘッダー用 */
.header {
	width:100%;
	height:100px;
	position:relative;
}

.header .logo {
	position:absolute;
	width:210px;
	height:40px;
	top:20px;
	left:0;
}
.header .logo img {
	width:100%;height:auto;
}
.header .logo span {
	font-weight:bold;
	color:#898989;
}
.header .nav {
	position:absolute;
	width:400px;
	height:30px;
	top:30px;
	right:0;
}
.header .nav ul {
	float:right;
}
.header .nav ul li {
	float:left;
	margin-left:20px;
	font-size:13px;
	line-height:18px;
}
.header .nav ul li a {
	text-decoration:none;
	color:#000;
	padding-bottom:5px;
}
.header .nav ul li a:hover {
	border-bottom:solid 2px #f4e228;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.header_wrp {
	height:40px;
}
.header {
	width:100%;
	height:40px;
	position:relative;
	position:fixed;
	background:#fff;
	z-index:500;
	box-shadow:0px 0px 3px rgba(0, 0, 0, 0.20);
}
.header .logo {
	position:static;
	width:105px;
	height:20px;
	margin:0 auto;
	padding-top:10px;
}
.header .nav {
	display:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
}	/* for SP max-width: 736px */

/*===============================================================
	
	navigation
	
===============================================================*/
.navigation_outer {
	width:100%;
	height:40px;
}
.navigation_wrp {
	width:100%;
	position:relative;
	background:#fff;
	z-index:999;
	box-shadow:0 5px 3px -3px rgba(0, 0, 0, 0.1);
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.navigation_outer {
	width:100%;
	height:0;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	navigation	
-------------------------------------------------------------*/
.navigation {
	position:relative;
}
.navigation ul {
	width:100%;
	overflow:hidden;
}
.navigation ul li {
	width:14.2857%;
	float:left;
}
.navigation ul li a {
	display:block;
	text-align:center;
	font-size:15px;
	line-height:40px;
	text-decoration:none;
	color:#000;
	border-bottom:solid 3px #fff;
}
.navigation ul li a:hover {
	border-bottom:solid 3px #f4e228;
}
.navigation ul li.current a {
	border-bottom:solid 3px #1d50a2;
}
.navigation ul li.active a {
	border-bottom:solid 3px #f4e228;
}
.navigation ul li .subnav {
	display:none;
	position:absolute;
	top:43px;
	left:0;
	width:100%;
	padding:30px;
	background:#fff;
	border:solid 1px #ddd;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.navigation ul li .subnav li {
	width:33%;
	float:left;
}
.navigation ul li .subnav li a {
	text-align:left;
	background-image:url(../images/asset/txtlink_arw.png);
	background-repeat:no-repeat;
	background-position:left center;
	padding-left:16px;
	font-size:14px;
	line-height:40px;
	border:0;
	color:#000;
}
.navigation ul li .subnav li a:hover {
	border:0;
	color:#6d6886;
}
.navigation ul li .subnav li.blank_link a {
	text-align:left;
	background-image:url(../images/asset/txtlink_arw.png);
	background-image:url(../images/asset/icon-blank-nav.gif);
	background-repeat:no-repeat;
	background-position:left center;
	padding-left:16px;
	font-size:14px;
	line-height:40px;
	border:0;
	color:#000;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {
.navigation_wrp .navigation {
	display:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */
/*-------------------------------------------------------------
	subnav	
-------------------------------------------------------------*/
.subnav .icon {
	margin-left:5px;
	font-weight:bold;
}
.navigation_wrp .subnav .icon {
	color:#6d6886;
}

/* タブレット以下 */
@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 */



/*===============================================================
	
	フッタ
	
===============================================================*/
.footer_wrp {
	width:100%;
	text-align:center;
	background:#fff;
}
.footer {
	padding:30px 0;
}
.footer .logo {
	width:210px;
	margin:0 auto;
}
.footer .logo img {
	width:100%;height:auto;
}
.footer p {
	font-size:12px;
	font-weight:bold;
	width:300px;
	margin:0 auto;
	margin-top:10px;
}
.footer p strong {
	display:block;
	margin-top:0;
	font-size:12px;
	font-weight:normal;
}
.footer a {
	color:#000;
	text-decoration:none;
}
.footer a:hover {
	color:#666;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.footer {
	padding:20px 0;
}
.footer .logo {
	width:120px;
	margin:0 auto;
}
.footer p {
	font-size:12px;
	line-height:1.2;
	font-weight:bold;
	width:100%;
	margin:0 auto;
	margin-top:5px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.footer_sitemap
-------------------------------------------------------------*/
.footer_sitemap_wrp {
	width:100%;
	background:#1d50a2;
	padding-bottom:0;
}
.footer_sitemap {
	text-align:left;
	border-bottom:solid 1px rgba(0,0,0,0.1);
	padding-bottom:20px;
}
.footer_sitemap + .footer_sitemap {
	border-bottom:solid 0px rgba(0,0,0,0.1);
	border-top:solid 1px rgba(255,255,255,0.1);
}
.footer_sitemap a {
	text-decoration:none;
	color:#fff;
}
.footer_sitemap a:hover {
	text-decoration:underline;
	color:#fff;
}
.footer_sitemap .blank_link a {
	background:url(../images/asset/icon-blank-pc.gif);
	background-repeat:no-repeat;
	background-image:url(../images/asset/icon-blank-pc.gif);
	background-position:right -3px;
	padding-right:20px;
}
.footer_sitemap ul {
	width:25%;
	float:left;
}
.footer_sitemap ul li {
	font-size:14px;
	line-height:25px;
	font-weight:bold;
	margin-top:20px;
}
.footer_sitemap ul li ul {
	width:100%;
	float:none;
}
.footer_sitemap ul li ul li {
	font-size:12px;
	line-height:20px;
	font-weight:normal;
	margin-top:0px;
}
.footer_sitemap_wrp .menubtn {
	display:none;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {
.footer_sitemap_wrp {
	padding-bottom:20px;
}
.footer_sitemap {
	display:none;
}
.footer_sitemap_wrp .menubtn {
	display:block;
	padding-top:20px;
}
.footer_sitemap_wrp .menubtn a {
	display:block;
	border:solid 1px rgba(255,255,255,0.5);
	border-radius:5px;
	width:100px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	color:#fff;
	text-align:center;
	margin:0 auto;
	text-decoration:none;
	line-height:40px;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	footer_copy_wrp	
-------------------------------------------------------------*/
.footer_copy_wrp {
	width:100%;
	background:#ddd;
	text-align:center;
	padding:20px 0;
}
.footer_copy_wrp .copyright {
	color:#666;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.footer_copy_wrp {
	padding:10px 0;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	MENU
	
===============================================================*/

/* タブレット以下 */
@media screen and (max-width: 960px) {
.menu_bg {
	background:#6d6886;
	position:absolute;
	z-index:300;
	top:0;
	left:0;
}
.menu_icon {
	position:absolute;
	position:fixed;
	top:10px;
	right:10px;
	z-index:300;
}
.menu .menu_nav {
	background:#6d6886;
	position:absolute;
	top:40px;
	width:100%;
	z-index:300;
}
.menu .navlist {
	width:100%;
	overflow:hidden;
}
.menu .navlist li a {
	width:100%;
	font-weight:bold;
	display:block;
	border-top:solid 1px rgba(255,255,255,0.1);
	border-bottom:solid 1px rgba(0,0,0,0.2);
	font-size:18px;
	line-height:50px;
	text-decoration:none;
	padding:0 20px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	color:#fff;
	background-image:url(../images/asset/sp_nav_arw.png);
	background-position:right center;
	background-repeat:no-repeat;
	background-size:50px 50px;
}
.menu .navlist li .subnav li a {
	font-weight:normal;
	font-size:14px;
	line-height:40px;
	padding:0 20px 0 40px;
	color:#6d6886;
	background:#fff;
	border-bottom:solid 1px rgba(0,0,0,0.1);
	background-image:url(../images/asset/sp_subnav_arw.png);
	background-position:left center;
	background-repeat:no-repeat;
	background-size:40px 40px;
}
.menu .navlist li .subnav li.blank_link a {
	background-image:url(../images/asset/sp_subnav_blank.png);
	background-size:40px 40px;
}


.menu .closebtn {
	border-top:solid 1px rgba(255,255,255,0.1);
	padding:30px 0;
}
.menu .closebtn a {
	display:block;
	border:solid 1px rgba(255,255,255,0.5);
	border-radius:5px;
	width:100px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	color:#fff;
	text-align:center;
	margin:0 auto;
	text-decoration:none;
	line-height:40px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	menu-trigger
-------------------------------------------------------------*/
/* タブレット以下 */
@media screen and (max-width: 960px) {
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 30px;
	height: 20px;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #000;
	border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 10px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
/* animation */
.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
	-moz-transform: translateY(10px) rotate(-45deg);
	-ms-transform: translateY(10px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
	-webkit-transform: translateY(0) rotate(180deg);
	transform: translateY(0) rotate(45deg);
	-moz-transform: translateY(0) rotate(45deg);
	-ms-transform: translateY(0) rotate(45deg);
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
	-moz-transform: translateY(-10px) rotate(45deg);
	-ms-transform: translateY(-10px) rotate(45deg);
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	grid
	
===============================================================*/
.gridconatiner {
	margin-top:-50px;
}
.gridconatiner .grid {
	float:left;
}
.grid {
	margin-top:50px;
}
/*	gridSize :445 gutterSize :50 column :2 */
.gridwrp_2 { width:105.319%;}
.gridwrp_2 .grid_2 { width:94.949%; margin-right:5.051%; }
.gridwrp_2 .grid_1 { width:44.949%; margin-right:5.051%; }
.gridwrp_2 .grid:nth-child(2n+1) {
	clear:both;
}

/*	gridSize :280 gutterSize :50 column :3 */
.gridwrp_3 { width:105.319%;}
.gridwrp_3 .grid_3 { width:94.949%; margin-right:5.051%; }
.gridwrp_3 .grid_2 { width:61.616%; margin-right:5.051%; }
.gridwrp_3 .grid_1 { width:28.283%; margin-right:5.051%; }
.gridwrp_3 .grid:nth-child(3n+1) {
	clear:both;
}

/*	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%; }
.gridwrp_4 .grid:nth-child(4n+1) {
	clear:both;
}

.column + .gridconatiner {
	margin-top:-20px;
} 

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.gridconatiner {
	margin-top:-30px;
}
.gridwrp_3,
.gridwrp_3 .grid_1,
.gridwrp_2,
.gridwrp_2 .grid_1 {
	width:100%; margin-right:0;
}
.gridwrp_4 { width:105.000%;}
.gridwrp_4 .grid_1 { width:45.238%; margin-right:4.762%; }

.grid {
	margin-top:30px;
}
.grid:first-child {
	/*margin-top:0px;*/
}
.gridwrp_4 .grid:nth-child(2) {
	/*margin-top:0;*/
}

.sp_gridwrp2 .gridwrp_3 { width:105.319%;}
.sp_gridwrp2 .gridwrp_3 .grid_2 { width:94.949%; margin-right:5.051%; }
.sp_gridwrp2 .gridwrp_3 .grid_1 { width:44.949%; margin-right:5.051%; }
.sp_gridwrp2 .gridwrp_3 .grid:nth-child(2n+1) {
	clear:both;
}
.sp_gridwrp2 .gridwrp_3 .grid:nth-child(3n+1) {
	clear:none;
}
.sp_gridwrp2 .gridwrp_2 { width:105.319%;}
.sp_gridwrp2 .gridwrp_2 .grid_2 { width:94.949%; margin-right:5.051%; }
.sp_gridwrp2 .gridwrp_2 .grid_1 { width:44.949%; margin-right:5.051%; }
.sp_gridwrp2 .gridwrp_2 .grid:nth-child(2n+1) {
	clear:both;
}
.sp_gridwrp2 .gridwrp_2 .grid:nth-child(3n+1) {
	clear:none;
}
.sp_gridwrp2 .linkarea p {
	padding: 0;
}
.column + .gridconatiner {
	margin-top:0;
} 
}	/* for SP max-width: 736px */

/*===============================================================
	
	fixed
	
===============================================================*/
.fixed {
	position: fixed;
	top: 0;
}
.bg_fixed {
	background-attachment: fixed;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {
.fixed {
	position: fixed;
	top: 0;
}
}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	PAGETOP
	
===============================================================*/
#btn_pagetop {
	width:100%;
	overflow:hidden;
}

#btn_pagetop a {
	display:block;
	position:absolute;
	right:-300px;
	top:0;
	width:50px;
	height:50px;
	color:#fff;
	background-image: url(../images/asset/pagetop-arw-pc.png);
	background-position:center center;
	background-repeat:no-repeat;
	background-color:#6d6886;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
	z-index:600;
	position:fixed;
	border-radius:30px;
}
#btn_pagetop a:hover {
	background-color:#7e77a4;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
#btn_pagetop a {
	width:40px;
	height:40px;
	background-size:40px 40px;
	background-color:#7e77a4;
}
#btn_pagetop a:hover {
}

}	/* for SP max-width: 736px */

/*===============================================================
	
	テーブル
	
===============================================================*/
table {
	width:700px;
	margin:0 auto;
	text-align:left;
	border-top:solid 1px rgba(0,0,0,0.2);
	margin-top:30px;
}
table th {
	padding:15px;
	font-weight:bold;
	border-bottom:solid 1px rgba(0,0,0,0.2);
	font-size:20px;
	color:#1d50a2;
}
table td {
	padding:15px;
	border-bottom:solid 1px rgba(0,0,0,0.2);
	font-size:20px;
}
table td.right {
	text-align:right;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
table {
	width:100%;
	margin:0 auto;
	padding:0;
	margin-top:15px;
}

table th {
	font-size:12px;
	line-height:1.5;
	width:35%;
	padding:10px 0;
}
table td {
	font-size:12px;
	line-height:1.5;
	padding:10px 0;
}
table td.right {
	white-space:nowrap;
}
table td p {
	font-size:12px;
	line-height:1.4;
}

}	/* for SP max-width: 736px */


/*===============================================================
	
	フォーム
	
===============================================================*/
.form {
}

/* タブレット以下 */
@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 */

/*===============================================================
	
	btn_detail
	
===============================================================*/
.btn_detail {
	width:600px;
	margin:0 auto;
	margin-top:40px;
}
.btn_detail a {
	text-decoration:none;
	display:block;
	background-color:#1d50a2;
	text-align:center;
	color:#fff;
	font-size:20px;
	font-weight:bold;
	padding:25px 0;
	border-radius:0px;
	box-shadow:#f4e228 0px 2px 0px 0px;
	-webkit-box-shadow:#f4e228 0px 2px 0px 0px;
	-moz-box-shadow:#f4e228 0px 2px 0px 0px;
}
.btn_detail a span {
	display:inline-block;
	font-size:16px;
	padding-bottom:3px;
	font-weight:bold;
}
.btn_detail a:hover {
	text-decoration:none;
	background-color:#105ad1;
}
.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;
}

.content + .btn_detail {
	margin-top:80px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.btn_detail {
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.btn_detail {
	width:80%;
	margin:0 auto;
	margin-top:20px;
}
.btn_detail a {
	font-size:16px;
	padding:15px 0;
}
.btn_detail a span {
	display:none;
}
.content + .btn_detail {
	margin-top:30px;
}
}	/* for SP max-width: 736px */


/*===============================================================
	
	btn_detail_100p
	
===============================================================*/

.btn_detail_100p {
	width:100%;
	margin:0 auto;
	margin-top:40px;
}
.btn_detail_100p a {
	text-decoration:none;
	display:block;
	background-color:#1d50a2;
	text-align:center;
	color:#fff;
	font-size:20px;
	font-weight:bold;
	padding:25px 0;
	border-radius:0px;
	box-shadow:#f4e228 0px 2px 0px 0px;
	-webkit-box-shadow:#f4e228 0px 2px 0px 0px;
	-moz-box-shadow:#f4e228 0px 2px 0px 0px;
}
.btn_detail_100p a span {
	display:inline-block;
	font-size:16px;
	padding-bottom:3px;
	font-weight:bold;
}
.btn_detail_100p a:hover {
	text-decoration:none;
	background-color:#105ad1;
}
.btn_detail_100p_red a {
	background-color:#c91b36;
}
.btn_detail_100p_red a:hover {
	background-color:#e31838;
}
.btn_detail_100p_black a {
	background-color:#000;
}
.btn_detail_100p_black a:hover {
	background-color:#222;
}

.content + .btn_detail_100p {
	margin-top:80px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.btn_detail_100p {
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.btn_detail_100p {
	width:80%;
	margin:0 auto;
	margin-top:20px;
}
.btn_detail_100p a {
	font-size:16px;
	padding:15px 0;
}
.btn_detail_100p a span {
	display:none;
}
.content + .btn_detail_100p {
	margin-top:30px;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	btn_white	
-------------------------------------------------------------*/
.btn_white {
	width:300px;
	margin:0 auto;
	margin-top:30px;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

.btn_white a ,
.btn_white input[type="submit"] {
	text-decoration:none;
	display:block;
	background-color:#fff;
	text-align:center;
	color:#1d50a2;
	font-size:18px;
	line-height:20px;
	font-weight:bold;
	padding:15px 0;
	border:solid 1px #1d50a2;
	width: 100%;
	cursor: pointer;
}
.btn_white a:hover ,
.btn_white input[type="submit"]:hover {
	text-decoration:none;
	color:#fff;
	background-color:#1d50a2;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.btn_white {
	width:80%;
	margin:0 auto;
	margin-top:20px;
}
.btn_white a ,
.btn_white input[type="submit"] {
	font-size:14px;
	line-height:20px;
	padding:10px 0;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	headline
	見だし
	
===============================================================*/
.headline {
	text-align:center;
}
.section * + .headline {
	margin-top:80px;
}
.headline_icon {
	max-width:150px;
	margin:0 auto;
}
.headline_icon img {
	width:100%;height:auto;
}

.headline h2 {
	font-size:30px;
	line-height:1.4;
}
.headline h3 {
	font-size:20px;
	line-height:1.4;
	margin-top:10px;
}
.headline_icon + h2,
.headline_icon + h3 {
	margin-top:10px;
}
.headline .read {
	font-size:18px;
	line-height:1.6;
	margin-top:10px;
}
.headline .discription {
	width:700px;
	margin:0 auto;
	text-align:left;
}
.headline .discription p {
	font-size:14px;
	line-height:1.6;
	margin-top:15px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section * + .headline {
	margin-top:50px;
}
.headline h2 {
	font-size:18px;
}
.headline h3 {
	font-size:14px;
	margin-top:0;
}
.headline_icon + h2,
.headline_icon + h3 {
	margin-top:5px;
}
.headline .read {
	font-size:14px;
	margin-top:10px;
	text-align:left;
}
.headline .discription {
	width:100%;
	margin:0 auto;
	text-align:left;
}
.headline .discription p {
	font-size:12px;
	margin-top:10px;
}
.headline_icon {
	max-width:100px;
	margin:0 auto;
	padding-bottom:10px;
}
}	/* for SP max-width: 736px */
/*===============================================================
	
	subhead
	小見出し
	
===============================================================*/
.subhead {
}

/* タブレット以下 */
@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 */
/*===============================================================
	
	背景
	
===============================================================*/
.bg_graytile {
	background-image:url(../images/asset/bg_graytile.jpg);
	background-position:top center;
	background-repeat:repeat;
}
/*===============================================================
	
	seciton
	headlineとcontentなど、複数の要素、機能を取りまとめるコンテナ的な親要素。
	幅はsection_innerに記述する
	
===============================================================*/
.section_wrp {
	background: #fff;
}
.section {
	width:100%;
	border-bottom:solid 1px rgba(0,0,0,0.1);
}
.section_inner {
	width:960px;
	margin:0 auto;
	padding:50px 0 100px 0;
}
.section_inner2 {
	padding-bottom:50px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.section_inner {
	width:100%;
	margin:0 auto;
	padding:50px 20px 100px 20px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.section_inner2 {
	padding-bottom:50px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section_inner {
	width:100%;
	margin:0 auto;
	padding:20px 20px 40px 20px;
}
.section_inner2 {
	padding-bottom:20px;
}

}	/* for SP max-width: 736px */


/*===============================================================
	
	content 
	個別のコンテンツ
	
===============================================================*/
.section .content {
}
.section .headline + .content {
	margin-top:30px;
}
.section .content + .content {
	margin-top:80px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.section .content {
	width:100%;
	margin:0 auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section .content {
	width:100%;
	margin:0 auto;
}
.section .headline + .content {
	margin-top:20px;
}
.section .content + .content {
	margin-top:30px;
}

}	/* for SP max-width: 736px */


/*===============================================================
	
	column
	囲み、メモなどサブ的な括り。
	
===============================================================*/
.column {
	width:700px;
	margin:0 auto;
}
.column h3 {
	font-size:20px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column h4 {
	font-size:18px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column p {
	margin-top:30px;
	font-size:16px;
}
.column * + p {
	margin-top:20px;
	font-size:16px;
}
.column p.caution {
	font-size:12px;
}
.column .bbottom {
	border-bottom:1px solid #000;
	padding-bottom:10px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.column {
	width:100%;
	margin:0 auto;
}
.column h3 {
	font-size:18px;
	margin-top:15px;
}
.column h4 {
	font-size:16px;
	margin-top:15px;
}
.column p {
	margin-top:10px;
	font-size:14px;
	line-height:1.6;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	.notes	
-------------------------------------------------------------*/
.notes {
	background:#eee;
	padding:20px;
	margin-top:20px;
}
.notes p {
	font-size:12px;
	line-height:20px;
}
.notes > p {
	margin-top:0;
}


/* タブレット以下 */
@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 */

/*===============================================================
	
	linkarea
	
===============================================================*/
.linkarea {
}
.linkarea h3 {
	font-size:18px;
	text-align:center;
	margin:0 auto;
	margin-top:20px;
}
.linkarea h3 .underline {
	border-bottom:solid 2px #000;
	padding-bottom:10px;
	font-weight:bold;
}
.linkarea h3 a,
.linkarea h4 a {
	text-decoration:none;
	color:#000;
}
.linkarea p {
	margin-top:25px;
	line-height:1.6;
}
/* link	*/
.linkarea_hover h3 a,
.linkarea_hover h4 a,
.linkarea.hover h3 a,
.linkarea.hover h4 a {
	color:#6d6886;
}
.linkarea_hover h3 .underline,
.linkarea.hover h3 .underline {
	border-bottom:solid 2px #6d6886;
}
.linkarea.haslink.hover img {
	opacity:0.8;
}
.linkarea.nolink h3 a {
	color:#000;
}
.linkarea.nolink h3 .underline {
	border-bottom:solid 2px #ddd;
	border-bottom:solid 0px #ddd;
}
.linkarea.nolink p {
	margin-top:20px;
	line-height:1.6;
}
.haslink {
	cursor:pointer;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.linkarea h3 {
	font-size:14px;
	text-align:center;
	margin:0 auto;
	margin-top:20px;
}
.linkarea h3 .underline {
}
.linkarea h3 a,
.linkarea h4 a {
	text-decoration:none;
	color:#000;
}
.linkarea p {
	font-size:12px;
	margin-top:20px;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.linkarea h3 {
	font-size:14px;
	margin-top:15px;
}
.linkarea h3 .underline {
	padding-bottom:2px;
}
.linkarea p {
	margin-top:10px;
	line-height:1.5;
	padding:0 20px;
}
.linkarea.nolink p {
	margin-top:10px;
}
.linkarea.haslink.hover img {
	opacity:1;
}

}	/* for SP max-width: 736px */

/*===============================================================
	
	linkarea sp_hover
	
===============================================================*/
.linkarea .fitimg {
	position:relative;
	display:block;
}
.linkarea img {
	width:100%;height:auto;
}
.linkarea .hover_mask,
.linkarea .hover_line {
	opacity:0;
	transition: all .2s;
}
.linkarea .hover_mask {
	position:absolute;
	top:0;
	left:0;
	display:block;
	background:rgba(0,0,0,0.5);
	z-index:10;
	-webkit-transform:scaleX(0.5) scaleY(0.5);
	transform:scaleX(0.5) scaleY(0.5);
	-moz-transform: scaleX(0.5) scaleY(0.5);
	-ms-transform: scaleX(0.5) scaleY(0.5);
}
.linkarea .hover_line {
	position:absolute;
	top:0; left:0; right:0; bottom:0;
	margin:auto;
	display:block;
	width:25px;
	height:2px;
	background:#fff;
	z-index:11;
}
.linkarea .hover_line_h {
	-webkit-transform:rotate(-90deg);
	transform:rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
}
.linkarea_hover .hover_mask,
.linkarea_hover .hover_line {
	opacity:1;
}
.linkarea_hover .hover_mask,
.linkarea_hover .hover_line_h {
	-webkit-transform:scaleX(1) scaleY(1) rotate(0deg);
	transform:scaleX(1) scaleY(1) rotate(0deg);
	-moz-transform:scaleX(1) scaleY(1) rotate(0deg);
	-ms-transform:scaleX(1) scaleY(1) rotate(0deg);
}
.linkarea_hover .hover_line_v {
	-webkit-transform:rotate(90deg);
	transform:rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
}

/* arw版　override **/
.linkarea.linkarea_arw .hover_line {
	left:auto; right:40px; top:0; bottom:0;
	margin:auto;
	display:block;
	width:20px;
	height:2px;
	background:#fff;
	z-index:11;
}
.linkarea.linkarea_arw .hover_line_h,
.linkarea.linkarea_arw .hover_line_V {
	-webkit-transform:rotate(0deg);
	transform:rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
}
.linkarea_hover.linkarea_arw .hover_line_h {
	right:18px;
	-webkit-transform:rotate(45deg) translateY(-10px);
	transform:rotate(45deg) translateY(-10px);
	-moz-transform: rotate(45deg) translateY(-10px);
	-ms-transform: rotate(45deg) translateY(-10px);
}
.linkarea_hover.linkarea_arw .hover_line_v {
	right:18px;
	-webkit-transform:rotate(-45deg) translateY(10px);
	transform:rotate(-45deg) translateY(10px);
	-moz-transform: rotate(-45deg) translateY(10px);
	-ms-transform: rotate(-45deg) translateY(10px);
}
/* arw版　overrideここまで */

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */



/*===============================================================
	
	griditem
	
===============================================================*/
.griditem h3 {
	font-weight:bold;
	font-size:22px;
	line-height:1.4;
}
.griditem h3 .violet {
	font-weight:bold;
}
.griditem h3 + .photo {
	margin-top:20px;
}
.griditem p {
	font-size:16px;
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.griditem h3 {
	font-size:16px;
}
.griditem h3 + .photo {
	margin-top:10px;
}
.griditem h4 {
	font-size:14px;
	margin-top:15px;
}
.griditem p {
	font-size:14px;
	margin-top:10px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.griditem 
-------------------------------------------------------------*/
.griditem .caption h4 {
	font-weight:bold;
	font-size:20px;
	margin-top:20px;
}
.griditem .caption p {
	font-size:16px;
	line-height:1.8;
	margin-top:10px;
}
.griditem .caption ul {
	margin-top:10px;
}
.griditem .caption li {
	font-size:16px;
	line-height:1.8;
}
.griditem.linkarea h4 {
	font-size:18px;
}
.griditem .cap {
	font-size:small;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.griditem .caption h4 {
	font-size:14px;
	margin-top:15px;
}
.griditem .caption p {
	font-size:12px;
	margin-top:0;
}
.griditem .caption ul {
	margin-top:0;
}
.griditem .caption li {
	font-size:12px;
	line-height:1.6;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	photo
	
===============================================================*/
.photo {
	width:100%;height:auto;
	position:relative;
}
.photo .num {
	position:absolute;
	top:-10px;
	left:10px;
	width:70px;
	text-align:center;
	color:#6d6886;
	background:#f4e228;
	font-weight:bold;
	font-size:30px;
	line-height:50px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.photo .num {
	position:absolute;
	top:-10px;
	left:10px;
	width:50px;
	font-size:20px;
	line-height:30px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	txtbg_photo
	
===============================================================*/
.txtbg_photo {
	background-color:#000;
	background-image:url(../images/txtbg_photo_dfj_pos.jpg);
	background-position:top center;
	background-repeat:no-repeat;
	padding:30px;
	margin-top:30px;
}
.txtbg_photo.txtbg_photo_dfr_pos {
	background-image:url(../images/txtbg_photo_dfr_pos.jpg);
	background-position:center center;
}
.txtbg_photo.txtbg_photo_livenet_sensor {
	background-image:url(../images/txtbg_photo_livenet_sensor.jpg);
	background-position:bottom center;
}
.txtbg_photo.txtbg_photo_livenet_data {
	background-image:url(../images/txtbg_photo_livenet_data.jpg);
	background-position:center center;
}
.txtbg_photo.txtbg_photo_dfm {
	background-image:url(../images/txtbg_photo_dfm_web.jpg);
	background-position:center center;
}
.txtbg_photo.txtbg_photo_livenet_data h3 {
	background:url(../images/icon/data_arw.png) no-repeat center right;
	background-size:32px 32px;
	color:#fff;
	font-size:30px;
	width:190px;
	margin:0 auto;
	padding:10px 0;
}
.txtbg_photo.txtbg_photo_company_about {
	background-image:url(../images/txtbg_photo_company_about.jpg);
	background-position:center center;
	text-align:center;
}
.txtbg_photo.txtbg_photo_company_about h3 {
	color:#fff;
	font-size:30px;
	padding:10px 0 30px;
	margin-top:0 !important;
}
.txtbg_photo .list li {
	width:50%;
	float:left;
	text-align:center;
	font-size:20px;
	line-height:40px;
	font-weight:bold;
	color:#fff;
}
.txtbg_photo .list3column li {
	width:33%;
	float:left;
	text-align:center;
	font-size:20px;
	line-height:40px;
	font-weight:bold;
	color:#fff;
}
.txtbg_photo .list3column2 li {
	width:31.1111%;
	float:left;
	border:2px solid #fff;
	margin-left:3.3333%;
	margin-top:20px;
	padding:35px 0;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.txtbg_photo .list3column2 li:first-child {
	margin-left:0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

.txtbg_photo .list3column2 li {
	font-size:18px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.txtbg_photo {
	background-size:cover;
	padding:20px;
	margin-top:15px;
}
.txtbg_photo.txtbg_photo_livenet_data h3 {
	background-size:20px 20px;
	font-size:18px;
	width:115px;
	padding:0;
}
.txtbg_photo.txtbg_photo_company_about h3 {
	font-size:18px;
	padding:10px 0 20px;
}
.txtbg_photo .list li {
	width:100%;
	float:none;
	text-align:center;
	font-size:16px;
	line-height:30px;
	font-weight:bold;
	color:#fff;
}
.txtbg_photo .list3column2 li {
	width:100%;
	float:none;
	text-align:center;
	font-size: 16px;
	line-height:30px;
	margin-left:0;
	margin-top:10px;
	padding:10px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	localnav_btns
	
===============================================================*/
.localnav_btns {
}

/* ------------------------------------------------ */
/*	gridSize :220 gutterSize :20 column :4 */
/* ------------------------------------------------ */
.localnav_btns ul { width:102.128%;}
.localnav_btns li { width:22.917%; margin-right:2.083%; }

.localnav_btns li {
	margin-top:20px;
	float:left;
}
.localnav_btns li a {
	text-decoration:none;
	display:block;
	background-color:#fff;
	text-align:center;
	color:#1d50a2;
	font-size:16px;
	line-height:20px;
	font-weight:bold;
	padding:15px 0;
	border:solid 1px #1d50a2;
}
/* 20210322追加2行用 */
.localnav_btns li.line2 a {
	text-decoration:none;
	display:block;
	background-color:#fff;
	text-align:center;
	color:#1d50a2;
	font-size:16px;
	line-height:20px;
	font-weight:bold;
	padding:5px 0;
	border:solid 1px #1d50a2;
}
.localnav_btns li a:hover {
	text-decoration:none;
	color:#fff;
	background-color:#1d50a2;
}
/* 20210322追加2行用 */
.localnav_btns li.line2 a:hover {
	text-decoration:none;
	color:#fff;
	background-color:#1d50a2;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
	.localnav_btns li a {
		font-size:14px;
	}
	/* 20210322追加2行用 */
	.localnav_btns li.line2 a {
		font-size:14px;
	}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.localnav_btns ul {
		width:100%;
	}
	.localnav_btns li {
		width:100%;
		float:none;
		margin:0 auto;
		margin-top:5px;
	}
	/* 20210322追加2行用 */
	.localnav_btns li a {
		font-size:14px;
		line-height:20px;
		padding:10px 0;
	}
	.localnav_btns li.line2 a {
		font-size:14px;
		line-height:20px;
		padding:0;
	}

	.localnav_btns ul li a,.localnav_btns ul li.line2 a {
		text-align:left;
		border:0;
		padding:0;
		margin:0;
		text-decoration:none;
		color:#7e77a4;
		font-size:16px;
		line-height:2;
		font-weight:bold;
		margin-right:0;
		padding-right:0;
		border-right:solid 0px #ccc;
		background-image:url(../images/asset/txtlink_arw.png);
		background-repeat:no-repeat;
		background-position:left center;
		background-size:4px 7px;
		padding-left:10px;
		
	}
	.localnav_btns ul li:last-child a,.localnav_btns ul li.line2:last-child a {
		margin-right:0;
		padding-right:0;
		border-right:solid 0px #ddd;
	}
	.localnav_btns ul li a:hover,.localnav_btns ul li.line2 a:hover {
		color:#1d50a2;
		background-color:#fff;
	}
}	/* for SP max-width: 736px */

/*===============================================================
	
	localnav_link
	
===============================================================*/
.localnav_link {
  position: relative;
  overflow: hidden;
  padding-top:30px;
}
.localnav_link ul {
  position: relative;
  left: 50%;
  float: left;
}
.localnav_link ul li {
  position: relative;
  left: -50%;
  float: left;
}
.localnav_link ul li a {
	text-decoration:none;
	color:#000;
	margin-right:20px;
	padding-right:20px;
	border-right:solid 1px #ccc;
	font-size:16px;
}
.localnav_link ul li:last-child a {
	margin-right:0;
	padding-right:0;
	border-right:solid 0px #ddd;
}
.localnav_link ul li a:hover {
	color:#1d50a2;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.localnav_link {
  position: relative;
  overflow: hidden;
  padding:20px;
  border-bottom:solid 1px #ddd;
}
.localnav_link ul {
  position: relative;
  left: 0;
  float: none;
}
.localnav_link ul li {
  position: relative;
  left: 0;
  float: none;
}
.localnav_link ul li a {
	text-decoration:none;
	color:#7e77a4;
	font-size:16px;
	line-height:2;
	font-weight:bold;
	margin-right:0;
	padding-right:0;
	border-right:solid 0px #ccc;
	background-image:url(../images/asset/txtlink_arw.png);
	background-repeat:no-repeat;
	background-position:left center;
	background-size:4px 7px;
	padding-left:10px;
}
.localnav_link ul li:last-child a {
	margin-right:0;
	padding-right:0;
	border-right:solid 0px #ddd;
}
.localnav_link ul li a:hover {
	color:#1d50a2;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	footer_localnav_link
	
===============================================================*/

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {


.footer_localnav_link {
	width:100%;
	padding:0;
	background:#fff;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.footer_localnav_link .navlist li a {
	font-weight:bold;
	display:block;
	border-top: solid 1px rgba(255, 255, 255, 0.1);
	border-bottom: solid 1px rgba(0, 0, 0, 0.2);
	font-size: 18px;
	line-height: 50px;
	text-decoration: none;
	padding: 0 20px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	color: #fff;
	background-image: url(../images/asset/sp_nav_arw.png);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 50px 50px;
	background-color: #6d6886;
}
.footer_localnav_link .subnav li a {
	display:block;
	text-align:left;
	font-weight: normal;
	font-size: 14px;
	line-height: 40px;
	padding: 0 20px 0 40px;
	color: #6d6886;
	background: #fff;
	border-bottom: solid 1px #eee;
	background-image: url(../images/asset/sp_subnav_arw.png);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 40px 40px;
}
.footer_localnav_link .subnav li a:hover {
	color:#6d6886;
}
.footer_localnav_link .subnav li a.active {
	background-color:#f0eff7;
}
.footer_localnav_link .subnav li.blank_link a {
	background-image: url(../images/asset/sp_subnav_blank.png);
	background-size: 40px 40px;
}

}	/* for SP max-width: 736px */


/*===============================================================
	
	txtlink
	
===============================================================*/
.txtlink {
}
.txtlink a {
	background-image:url(../images/asset/txtlink_arw.png);
	background-position:left center;
	background-repeat:no-repeat;
	padding-left:14px;
	display:block;
	text-decoration:none;
	color:#000;
	line-height:1.4;
}
.txtlink a:hover {
	text-decoration:underline;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.txtlink a {
	background-position:left 4px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	accordion
	
===============================================================*/
.accordion {
	position:relative;
}
.accordion_icon {
	position:absolute;
	width:40px;
	height:40px;
	right:13px;
	top:13px;
}
.accordion_icon_inner {
	position: relative;
	width: 40px;
	height: 40px;
}
.accordion_icon span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
	position: absolute;
	top:0;
	left: 0;
	width: 40px;
	height: 4px;
	background-color: #fff;
	border-radius: 0px;
}
.accordion_icon span:nth-of-type(1) {
	-webkit-transform: translateY(18px) rotate(360deg);
	transform: translateY(18px) rotate(360deg);
	-ms-transform: translateY(18px) rotate(360deg);
	-moz-transform: translateY(18px) rotate(360deg);
}
.accordion_icon span:nth-of-type(2) {
	top:18px;
}
.active .accordion_icon span:nth-of-type(1) {
	-webkit-transform: translateY(18px) rotate(90deg);
	transform: translateY(18px) rotate(90deg);
	-ms-transform: translateY(18px) rotate(90deg);
	-moz-transform: translateY(18px) rotate(90deg);
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.accordion_icon {
	position:absolute;
	width:20px;
	height:20px;
	right:13px;
	top:13px;
}
.accordion_icon_inner {
	position: relative;
	width:20px;
	height:20px;
}
.accordion_icon span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
	position: absolute;
	top:0;
	left: 0;
	width: 20px;
	height: 3px;
	background-color: #fff;
	border-radius: 0px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.accordion_icon {
	position:absolute;
	width:20px;
	height:20px;
	right:5px;
	top:0px;
}
.accordion_icon_inner {
	position: relative;
	width:20px;
	height:20px;
}
.accordion_icon span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
	position: absolute;
	top:0;
	left: 0;
	width: 20px;
	height: 2px;
	background-color: #9993b6;
	border-radius: 0px;
}
}	/* for SP max-width: 736px */
/*-------------------------------------------------------------
	.accordion_title
-------------------------------------------------------------*/
.accordion_title {
	background-color:#6d6886;
	position:relative;
	width:100%;
	cursor:pointer;
}
.accordion_title:hover {
	background-color:#7e77a4;
}
.accordion_title h3 {
	font-size:30px;
	line-height:1.5;
	padding:10px;
	color:#fff;
	text-align:center;
}
.accordion_title .icon {
	position:absolute;
	top:-10px;
	left:-10px;
	width:100px;
	text-align:center;
	color:#6d6886;
	font-size:20px;
	font-weight:bold;
	line-height:30px;
	background:#f4e228;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.accordion_title {
}
.accordion_title h3 {
	font-size:15px;
	line-height:20px;
	padding:10px 30px 10px 10px;
	color:#fff;
	text-align:left;
}
.accordion_title .icon {
	position:absolute;
	top:-15px;
	left:-10px;
	width:50px;
	text-align:center;
	color:#6d6886;
	font-size:12px;
	font-weight:bold;
	line-height:20px;
	background:#f4e228;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.accordion_body
-------------------------------------------------------------*/
.accordion_body	{
	background:#eeedf1;
	padding:35px;
}

/*===============================================================
	
	section_case
	
===============================================================*/
.section_case {
}
.section_case .case {
}
.section_case .case + .case {
	margin-top:30px;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section_case .case {
	width:100%;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.case .solution	
-------------------------------------------------------------*/
.case .solution	{
	background:#eeedf1;
	padding:35px;
}
.case .solution	.txt,
.case .solution	.fig {
	width:45%;
	border:0;
	margin-top:0;
}
.case .solution	h3 {
	font-size:25px;
	line-height:1.4;
	font-weight:bold;
}
.case .solution	h3 span {
	font-weight:bold;
}
.case .solution	p {
	margin-top:20px;
}
.case .solution .txtlink {
}
.case .solution .txtlink a {
	font-size:18px;
	font-weight:bold;
}
.case .solution .txtlink a span {
	font-weight:bold;
}
.case .solution .txtlink a:hover {
	text-decoration:underline;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.case .solution	{
	background:#eeedf1;
	padding:15px;
}
.case .solution	.txt,
.case .solution	.fig {
	width:100%;
}
.case .solution	.txt {
	margin-top:15px;
}
.case .solution	h3 {
	font-size:16px;
}
.case .solution	 p {
	margin-top:5px;
	font-size:12px;
	line-height:1.6;
}
.case .solution .txtlink {
	margin-top:15px;
}
.case .solution .txtlink a {
	font-size:14px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	section_top_topics
	
===============================================================*/
.section_top_topics .left {
	float:left;
	width:64.89%;
}
.section_top_topics .topic_list {
}
.section_top_topics .rss_list {
	margin-top:50px;
}
.section_top_topics .bnr_list {
	float:right;
	width:29.78%;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.section_top_topics .left,
.section_top_topics .bnr_list {
	float:none;
	width:100%;
}
.section_top_topics .rss_list {
	margin-top:30px;
}
.section_top_topics .bnr_list {
	margin-top:20px;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.section_top_topics .topic_list
-------------------------------------------------------------*/
.section_top_topics .topic_list h3 {
	font-size:25px;
}
.content .topic_list dl {
	width:100%;
	overflow:hidden;
	border-bottom:solid 1px #ddd;
	margin-top:20px;
}
.content .topic_list dt {
	width:8em;
	float:left;
	padding:10px 0;
	font-size:14px;
}
.content .topic_list dd {
	padding:10px 0;
	padding-left:8em;
	border-top:solid 1px #ddd;
	font-size:14px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section_top_topics .topic_list h3 {
	font-size:18px;
}	
.content .topic_list dt {
	width:100%;
	float:none;
	padding:10px 0 0 0;
	font-size:12px;
	font-weight:bold;
	border-top:solid 1px #ddd;
}
.content .topic_list dd {
	padding:0px 0 10px 0;
	border-top:solid 0px #ddd;
	font-size:12px;
	line-height:1.5;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	.section_top_topics .rss_list
-------------------------------------------------------------*/
.section_top_topics .rss_list h3 {
	font-size:25px;
}
.section_top_topics .rss_list h3 span {
	font-size:12px;
	margin-left:10px;
}
.section_top_topics .rss_news {
	margin-top:20px;
}
.section_top_topics .rssHeader {
	display:none;
}
.section_top_topics .rssBody {
}
.section_top_topics .rssBody ul {
	border-top:solid 1px #ddd;
}
.section_top_topics .rssBody li {
	border-bottom:solid 1px #ddd;
	padding:10px 0;
}
.section_top_topics .rssBody h5 {
	font-size:14px;
	line-height:22px;
	font-weight:bold;
}
.section_top_topics .rssBody div {
	color:#666;
	font-size:12px;
	line-height:18px;
}
.btn_more {
	width:200px;
	margin:0 auto;
	margin-top:30px;
}
.btn_more span {
	text-decoration:none;
	display:block;
	background-color:#fff;
	text-align:center;
	color:#1d50a2;
	font-size:18px;
	line-height:20px;
	font-weight:bold;
	padding:15px 0;
	border:solid 1px #1d50a2;
	cursor:pointer;
	-webkit-transition:all 0.1s linear;
	-ms-transition:all 0.1s linear;  
	-moz-transition:all 0.1s linear;
	-o-transition:all 0.1s linear;
}
.btn_more span:hover {
	text-decoration:none;
	color:#fff;
	background-color:#1d50a2;
}
.btn_more.active .open {
	display:none;
}
.btn_more.active .close {
	display:block;
}
.btn_more .close {
	display:none;
}
.rssBody .more_content ul {
	border-top:none;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.section_top_topics .rss_list h3 {
	font-size:18px;
}	
.section_top_topics .rssBody h5 {
	font-size:12px;
	line-height:18px;
}
.btn_more {
	width:80%;
	margin:0 auto;
	margin-top:20px;
}
.btn_more span {
	font-size:14px;
	line-height:20px;
	padding:10px 0;
}
/*.btn_more span:hover {
	background:#fff;
	color:#1d50a2;
}*/
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.section_top_topics .bnr_list
-------------------------------------------------------------*/
.section_top_topics .bnr_list img {
	width:100%;height:auto;
}
.section_top_topics .bnr_list li {
	margin-top:10px;
}
.section_top_topics .bnr_list li:first-child {
	margin-top:0;
}

/* タブレット以下 */
@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 */

/*===============================================================
	
	ssaj_link
	日本防犯設備協会へのリンク
	
===============================================================*/
.ssaj_link {
	border:solid 1px #ddd;
	padding:25px;
}

.ssaj_link .txtlink {
	margin-top:15px;
	font-weight:bold;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.ssaj_link {
	padding:20px;
}
.ssaj_link p {
	font-size:14px;
	line-height:1.4;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.ssaj_link {
	padding:15px;
}
.ssaj_link p {
	font-size:12px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	maker_list
	
===============================================================*/
.maker_list {
	margin-top:30px;
}
.maker_list li {
	text-align:center;
	width:33.33%;
	float:left;
	font-size:20px;
	line-height:35px;
	font-weight:bold;
	color:#6d6886;
}
.maker_list {
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.maker_list ul {
	margin-top:10px;
}
.maker_list li {
	text-align:center;
	width:50%;
	float:left;
	font-size:14px;
	line-height:20px;
	font-weight:bold;
	color:#6d6886;
	margin-top:10px;
}
}	/* for SP max-width: 736px */

/*===============================================================
	
	mainvisual
	
===============================================================*/
.mainvisual {
	width:1400px;
	width:100%;
	height:400px;
	margin:0 auto;
	background-image:url(../images/index_mainvisual_img.jpg);
	background-position:top center;
	background-repeat:no-repeat;
	background-size:cover;
}
.mainvisual_content {
	width:960px;
	height:400px;
	margin:0 auto;
	position:relative;
}
.mainvisual_content h1,
.mainvisual_content h2 {
	position:absolute;
	font-weight:bold;
	top:11%;
	left:0;
	font-size:78px;
	line-height:1.2;
	color:#fff;
}
.mainvisual_content .solution_link {
	position:absolute;
	font-weight:bold;
	top:63%;
	left:1%;
	font-size:18px;
	line-height:1.2;
}
.mainvisual_content .solution_link a {
	border-bottom:solid 2px #fff;
	padding-bottom:8px;
	color:#fff;
}
.mainvisual_content .solution_link a:hover {
	color:#fff;
	border-bottom:solid 0px #fff;
}
.mainvisual .title {
	display:none;
}
.mainvisual_content .badge {
	position:absolute;
	/* width:120px; 20221006変更 */ 
	width:160px;
	/*top:44%;*/
	/*left:65%;*/
	/* bottom:11%; 20221006変更 */
	bottom:8%;
	/* left:0%; 20221006変更 */
	left:2%;
}
.mainvisual_content .badge2 {
	/* left:14%; 20221006変更 */
	left:23%;
}
.mainvisual_content .badge3 {
	/* 20221006変更 */
	/* left:28%; */
	display:none;
}
.mainvisual_content .badge img {
	width:100%;height:auto;
}
/* タブレット以下 */
@media screen and (max-width: 1400px) {
.mainvisual {
	width:100%;
}
}	/* for tablet max-width: 960px */

/* タブレット以下 */
@media screen and (max-width: 960px) {
.mainvisual {
	width:100%;
	height:auto;
	background:none;
}
.mainvisual_content {
	width:100%;
	height:auto;
}
.mainvisual_content h1,
.mainvisual_content .scroll_info {
	display:none;
}
.mainvisual_content .solution_link {
	position:static;
	font-weight:bold;
	font-size:12px;
	line-height:1.2;
	text-align:center;
}
.mainvisual_content .solution_link a,
.mainvisual_content .solution_link a:hover {
	display:block;
	color:#fff;
	background:#1d50a2;
	padding:10px 0;
	text-align:center;
	border-bottom:0;
}
.mainvisual_content .solution_link a:before {
	content:'';
	position:absolute;
	border:solid 1px #fff;
	width:10px;
	height:10px;
	border-top:none;
	border-left:none;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top:0; bottom:0;
	right:15px;
	margin:auto;
}
.mainvisual .title {
	display:block;
}
.mainvisual .title img {
	width:100%;height:auto;
}
.mainvisual_content .badge {
	display:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {


}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	solution_visual	
-------------------------------------------------------------*/
.solution_visual {
	width:100%;
	height:600px;
	margin:0 auto;
	background-image:url(../images/index_solution_visual_img.jpg);
	background-position:top center;
	background-repeat:no-repeat;
	background-size:cover;
	color:#fff;
}
.solution_visual .mainvisual_content {
	height:600px;
}
.solution_visual .mainvisual_content h2 {
	position:absolute;
	top:40%;
	left:0;
	font-size:73px;
	line-height:1.2;
	width:100%;
	text-align:center;
}
.solution_visual .mainvisual_content p {
	position:absolute;
	top:58%;
	left:0;
	font-size:30px;
	line-height:1.2;
	width:100%;
	text-align:center;
	font-weight:bold;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.solution_visual {
	background:none;
	height:auto;
}

.solution_visual .mainvisual_content {
	display:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	pagetitle
	
===============================================================*/
.pagetitle {
	width:100%;
	position:relative;
	background-color:#46435b;
	background-image:url(../images/bg_poly_violet.jpg);
	background-repeat:repeat-x;
	background-position:top center;
	text-align:center;
	padding:50px 0;
	color:#fff;
}
.pagetitle_content {
	width:100%;
	margin:0 auto;
}
.pagetitle .type {
	font-size:25px;
	line-height:1.2;
	font-weight:bold;
}
.pagetitle .title {
	font-size:40px;
	line-height:1.2;
	font-weight:bold;
}
.pagetitle .type + .title {
	font-size:55px;
	margin-top:15px;
}
.pagetitle .subtitle {
	margin-top:20px;
}
.pagetitle .subtitle .inner {
	font-size:25px;
	line-height:1.2;
	font-weight:bold;
	background:#fff;
	color:#333;
	display:inline;
	padding:10px 20px;
}
.pagetitle .read {
	font-size:20px;
	line-height:1.5;
	margin-top:20px;
}
.pagetitle .caption {
	font-size:18px;
	line-height:1.5;
	margin-top:10px;
	font-weight:bold;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {
.pagetitle .type {
	font-size:20px;
}
.pagetitle .title {
	font-size:30px;
}
.pagetitle .type + .title {
	font-size:50px;
	margin-top:15px;
}
.pagetitle .subtitle {
	margin-top:20px;
}
.pagetitle .subtitle .inner {
	font-size:20px;
	line-height:1.2;
	font-weight:bold;
	background:#fff;
	color:#333;
	display:inline;
	padding:10px 10px;
}
.pagetitle .read {
	font-size:16px;
	line-height:1.5;
	margin-top:20px;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.pagetitle {
	padding:20px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	background-size:700px 200px;
}
.pagetitle .type {
	font-size:16px;
}
.pagetitle .title {
	font-size:20px;
}
.pagetitle .type + .title {
	font-size:28px;
	margin-top:10px;
}
.pagetitle .subtitle {
	margin-top:15px;
	background:#fff;
	padding:8px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.pagetitle .subtitle .inner {
	font-size:14px;
	line-height:12px;
	background:none;
	padding:0;
	margin:0;
}
.pagetitle .subtitle .inner + .inner {
	display:inline;
	padding:0;
}
.pagetitle .read {
	font-size:14px;
	line-height:1.5;
	margin-top:10px;
	text-align:left;
}
.pagetitle .caption {
	font-size:14px;
	line-height:1.5;
	margin-top:5px;
	font-weight:bold;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	pagetitle_dfr	
-------------------------------------------------------------*/
.pagetitle_dfr {
	background-color:#3a9d36;
	background-image:url(../images/bg_poly_green.jpg);
}
.pagetitle_dfr .pagetitle_content {
	background-image:url(../images/ill_camera_right.png);
	background-repeat:no-repeat;
	background-position:right 10px;
}
.pagetitle_dfr .subtitle .inner {
	color:#5ab753;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.pagetitle_dfr .pagetitle_content {
	background:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	pagetitle_dfj	
-------------------------------------------------------------*/
.pagetitle_dfj {
	background-color:#ba4d7d;
	background-image:url(../images/bg_poly_pink.jpg);
}
.pagetitle_dfj .pagetitle_content {
	background-image:url(../images/ill_camera_right.png);
	background-repeat:no-repeat;
	background-position:right 10px;
}
.pagetitle_dfj .subtitle .inner {
	color:#ba4d7d;
}
.pagetitle_dfj .type + .title {
	font-size:60px;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.pagetitle_dfj .pagetitle_content {
	background:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.pagetitle_dfj .type + .title {
	font-size:28px;
}
}	/* for SP max-width: 736px */
/*-------------------------------------------------------------
	pagetitle_dfs	
-------------------------------------------------------------*/
.pagetitle_dfs {
	background-color:#a36acd;
	background-image:url(../images/bg_poly_purple.jpg);
}
.pagetitle_dfs .pagetitle_content {
	/*
	background-image:url(../images/ill_camera_right.png);
	background-repeat:no-repeat;
	background-position:right 10px;
	*/
}
.pagetitle_dfs .subtitle .inner {
	color:#a36acd;
}
.pagetitle_dfs .type + .title {
	font-size:60px;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.pagetitle_dfs .pagetitle_content {
	background:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.pagetitle_dfs .type + .title {
	font-size:25px;
}
}	/* for SP max-width: 736px */
/*-------------------------------------------------------------
	pagetitle_dfm	
-------------------------------------------------------------*/
.pagetitle_dfm {
	background-color:#598ec3;
	background-image:url(../images/bg_poly_light_blue.jpg);
}
.pagetitle_dfm .subtitle .inner {
	color:#598ec3;
}
.pagetitle_dfm .type + .title {
	font-size:60px;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.pagetitle_dfm .pagetitle_content {
	background:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.pagetitle_dfm .type + .title {
	font-size:28px;
}
}	/* for SP max-width: 736px */
/*-------------------------------------------------------------
	pagetitle_livenet	
-------------------------------------------------------------*/
.pagetitle_livenet {
	background-color:#2f6ece;
	background-image:url(../images/bg_poly_blue.jpg);
}
.pagetitle_livenet .pagetitle_content {
	background-image:url(../images/ill_camera_right.png);
	background-repeat:no-repeat;
	background-position:right 10px;
}
.pagetitle_livenet .subtitle .inner {
	color:#2f6ece;
}
.pagetitle_livenet .type + .title {
	font-size:60px;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {
.pagetitle_livenet .pagetitle_content {
	background:none;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.pagetitle_livenet .type + .title {
	font-size:28px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	bnr
-------------------------------------------------------------*/
.bnr {
	width:450px;
	height:auto;
	margin:50px auto 0 auto;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.bnr {
	width:auto;
	margin-top:20px;
}

}	/* for SP max-width: 736px */

/*===============================================================
	
	section_w700　幅700pxの下層ページ
	
===============================================================*/
.section_w700 {
	border-top:0;
}
.section_w700 .section_inner {
	width:700px;
	margin:0 auto;
	padding: 50px 0 100px;
}
.section_w700 .headline + .title {
	margin-top:50px;
}
.section_w700 .headline h2 + .fitimg {
	margin-top:20px;
}

.section_w700 .title {
	font-size:22px;
	line-height:1.5;
	border-bottom:solid 1px #000;
	padding-bottom:10px;
}
.section_w700 .read + .title {
	margin-top:50px;
}

.section_w700 .title + .content {
	margin-top:30px;
}
.section_w700 .content + .title {
	margin-top:80px;
}

.section_w700 .content p {
	font-size:16px;
	margin-top:20px;
}
.section_w700 .content h4 {
	font-size:18px;
	font-weight:bold;
	margin-top:40px;
}

.section_noborder {
	border-bottom:0;
}

.section_noborder .section_inner {
	padding-bottom:0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.section_w700 .section_inner {
	width:100%;
	margin:0 auto;
	padding: 20px 20px 40px 20px;
}
.section_w700 .headline + .title {
	margin-top:20px;
}
.section_w700 .headline h2 + .fitimg {
	margin-top:10px;
}
.section_w700 .title {
	font-size:18px;
	line-height:1.5;
	border-bottom:solid 1px #000;
	padding-bottom:5px;
}

.section_w700 .title + .content {
	margin-top:15px;
}

.section_w700 .content + .title {
	margin-top:20px;
}

.section_w700 .content p {
	font-size:14px;
	margin-top:15px;
}
.section_w700 .content h4 {
	font-size:15px;
	font-weight:bold;
	margin-top:30px;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	section_company	会社案内
-------------------------------------------------------------*/

.pdf_link a {
	width:280px;
	display: block;
	background:url(../images/asset/icon_pdf.png) no-repeat 10px 10px;
	background-size:30px 30px;
	text-align: center;
	color: #1d50a2;
	font-size: 16px;
	line-height: 20px;
	font-weight: bold;
	padding: 15px 0;
	margin:0 auto;
	border: solid 1px #1d50a2;
	text-decoration:none;
}
.pdf_link a:hover {
	text-decoration: none;
	color: #fff;
	background-color: #1d50a2;
}
.localnav_btns.office {
	width:700px;
	margin:0 auto;
}
/* localnav_link */
.access_second_localnav_link {
	padding-top:10px;
}
.access iframe {
	width:100%;
	margin-top:20px;
}

/*-------------------------------------------------------------
	philosophy	
-------------------------------------------------------------*/
.philosophy {
	padding:20px;
	border:solid 1px #eee;
}
.section_company .philosophy .message {
	font-size:16px;
	font-weight:bold;
	margin-top:0;
}
.philosophy .name {
	text-align:right;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.philosophy {
	padding:15px;
	border:0;
}
.section_company .philosophy .message {
	font-size:14px;
}
.section_company .philosophy .message br {
	display:none;
}
.philosophy .name {
	text-align:right;
}
.localnav_btns.office {
	width:auto;
}
.access_second_localnav_link {
	padding-top:0px;
}


}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	content dl	
-------------------------------------------------------------*/
.content dl {
	width:100%;
	overflow:hidden;
	border-bottom:solid 1px #ddd;
}
.content dt {
	width:10em;
	float:left;
	padding:15px;
	font-size:16px;
	font-weight:bold;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.content dd {
	padding:15px;
	padding-left:10em;
	border-top:solid 1px #ddd;
	font-size:16px;
}
.section_w700 .content dd h4 {
	font-size:16px;
}

.section_dfm_spec .content dt {
	width:12em;
}
.section_dfm_spec .content dd {
	padding-left:12em;
}



/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content dt,
.section_dfm_spec .content dt {
	width:100%;
	float:none;
	padding:15px 0 0 0;
	font-size:14px;
	font-weight:bold;
	border-top:solid 1px #ddd;
}
.content dd,
.section_dfm_spec .content dd {
	padding:0px 0 15px 0;
	border-top:solid 0px #ddd;
	font-size:14px;
	line-height:1.5;
}
.section_w700 .content dd h4 {
	font-size:14px;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------	
	section_support　サポート	
------------------------------------------------------------*/

.full_list {
	width:102.8571%;
}
.full_list li {
	float:left;
	margin-top:20px;
	width:22.2222%;
	margin-right:2.7777%;
	border:1px solid #ccc;
	padding:15px 0;
	font-weight:normal;
	text-align:center;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	background-image: url(../images/asset/bg_graytile.jpg);
	background-position: top center;
	background-repeat: repeat;
	font-size:20px;
}
.full_list li:first-child {
	margin-left:0;
}
.section_support h3 {
	margin-top:50px;
	text-align:center;
	font-size:20px;
}
.section_support_spot h4 {
}
.section_support .notes {
	margin-top:40px;
}
.section_support dl {
	margin-top:30px;
}
.section_support dt {
	font-weight:bold;
	color: #1d50a2;
}
.section_support dt.dt2 {
	width:20em;
}
.section_support dd.dd2 {
	padding-left:20em;
}
.section_support dd {
	text-align:right;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.full_list li {
	font-size:16px;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	

.full_list li {
	width:47.2221%;
	margin-right:2.7777%;
	margin-top:10px;
	font-size:14px;
}
.section_support h3 {
	margin-top:30px;
	font-size:14px;
}
.section_support_spot h4 {
	font-size:14px;
}
.section_support .notes {
	margin-top:20px;
}
.section_support dl {
	margin-top:10px;
}
.section_support dt {
	width:auto;
}
.section_support dd {
	width:auto;
	text-align:left;
}
.section_support dt.dt2 {
	width:auto;
}
.section_support dd.dd2 {
	padding-left:0;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------	
	section_area　対応エリア	
-------------------------------------------------------------*/
.section_area .headline + .content {
	/*margin-top:30px;*/
}

.area_map {
	width:600px;
	margin:0 auto;
	height:auto;
	padding:50px 0;
}
.section_area h3 {
	font-size:22px;
	margin-top:50px;
	border-bottom: solid 1px #000;
	padding-bottom:10px;
}
.section_area h3:first-child {
	margin-top:0;
}
.section_area .area_map + dl {
	margin-top:0;
}
.section_index .content h3 {
	margin-top:20px;
}
.section_index .column .title {
	font-size:22px;
	margin-top:40px;
	line-height: 1.5;
	border-bottom:1px solid #000;
	padding-bottom:10px;
	text-align:left;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.area_map {
	width:100%;
	padding:20px 0;
	display:none;
}
.section_area h3 {
	font-size:18px;
	margin-top:30px;
}
.section_index .content h3 {
	margin-top:15px;
}
.section_index .column .title {
	font-size:18px;
	margin-top:30px;
	padding-bottom:5px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	section_teye_rec　
	section_teye_box　製品情報
	section_teye_dome	
-------------------------------------------------------------*/

.section_w700 .chara h3 + p {
	text-align:center;
}
.spec_list {
	width:100%;
	border:none;
}
.spec_list th {
	color:#000;
	font-size:14px;
	border:1px solid #ccc;
	background:#fafafa;
}
.spec_list .th2 {
	display:none;
	background:#fff;
}
.spec_list td {
	font-size:14px;
	border:1px solid #ccc;
}
.section_teye_rec .spec_list td {
	text-align:center;
}
.section_teye_dome .bx-wrapper .bx-pager {
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {


}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.section_w700 .chara h3 {
	font-size:16px;
	text-align:left;
}	
.section_w700 .chara h3 + p {
	text-align:left;
	margin-top:0;
}
.section_teye_rec img {
	width:100%;
}
.section_teye_rec .btn_detail a span,
.section_teye_box .btn_detail a span,
.section_teye_dome .btn_detail a span {
	font-size:13px;
	display:inline-block;
	padding-bottom:0;
}
.section_teye_rec .align_center img:last-child {
	width:82.89%;
}
.spec_list {
	border-bottom:1px solid #ccc;
}
.spec_list .th1 {
	display:none;
}
.spec_list th {
	font-size:12px;
	display:block;
	width:100%;
	border-bottom:none;
	padding:10px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	text-align:left;
}
.spec_list .th2 {
	display:block;
	padding-bottom:0;
}
.spec_list .th2 + td{
	border-top:none;
	padding-top:0;
}
.spec_list td {
	font-size:12px;
	display:block;
	width:100%;
	border-bottom:none;
	padding:10px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.section_teye_rec .spec_list td {
	text-align:left;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	section_news　お知らせ	
-------------------------------------------------------------*/
.section_news .section_inner {
	width:auto;
	max-width:700px;
	margin:0 auto;
}
.section_news .date {
	font-size:14px;
	line-height:1.4;
}
.section_news .title {
	font-size:24px;
	line-height:1.5;
	border-bottom:solid 1px #000;
	padding-bottom:10px;
}


/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.section_news .date {
	font-size:12px;
	line-height:1.4;
	font-weight:bold;
}
.section_news .title {
	font-size:20px;
	padding-bottom:0;
}


}	/* for SP max-width: 736px */

/*===============================================================
	
	ビジュアルエディタ部分（フロントおよび入力欄共通）
	
===============================================================*/

html .mceContentBody {
	text-align:left;
	font-size:16px;
	line-height:1.8;
}
/* タブレット以下 */
@media screen and (max-width: 1000px) {
html .mceContentBody {
}
}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
html .mceContentBody {
	width:auto;
	font-size:14px;
	line-height:1.6;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
見出し
-------------------------------------------------------------*/
html .mceContentBody h3 {
	font-size:22px;
	line-height:1.5;
	margin-top:40px;
}
html .mceContentBody h4 {
	font-size:18px;
	line-height:1.4;
	font-weight:bold;
	padding-bottom:0px;
	margin-top:30px;
}
html .mceContentBody p {
	font-size:16px;
	line-height:1.8;
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
html .mceContentBody h3 {
	font-size:18px;
	padding-bottom:5px;
	margin-top:20px;
}
html .mceContentBody h4 {
	font-size:15px;
	margin-top:20px;
}
html .mceContentBody p {
	font-size:14px;
	line-height:1.6;
	margin-top:10px;
}	
	
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
リンク
-------------------------------------------------------------*/
html .mceContentBody a {
	color:#1d50a2;
}

html .mceContentBody a:hover {
	text-decoration:underline;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
テキスト
-------------------------------------------------------------*/

html .mceContentBody strong {
}

html .mceContentBody em {
	font-style:italic;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
画像
-------------------------------------------------------------*/
html .mceContentBody img {
	width:auto;
	margin:0 auto;
}
.aligncenter {
	clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
html .mceContentBody img {
	max-width: 100%;
	height: auto;
	width /***/:auto;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
引用
-------------------------------------------------------------*/
html .mceContentBody blockquote {
	background-color: #eee;
	padding: 1em;
	margin-top: 1em;
}

html .mceContentBody blockquote p {
	margin-top: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
その他
-------------------------------------------------------------*/
html .mceContentBody .kbd {
	margin: 0 0.3em 0 0.3em;
	padding: 1px 7px 1px 5px;
	border: solid #ABABAB;
	border-width: 1px 2px 2px 1px;
	/*border: 3px outset #dddddd;*/
	background: #ffffff url(../img/common/kbd.png) no-repeat 100% 100%;
	font-style: normal;
	font-weight: normal;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */



/*-------------------------------------------------------------
リスト
-------------------------------------------------------------*/

html .mceContentBody ul,ol {
	margin-top: 1em;
}

html .mceContentBody ul li {
	font-size:16px;
	list-style-type: disc;
	line-height: 1.2;
	margin-bottom: 0.7em;
	margin-left: 1.5em;
}

html .mceContentBody ol li {
	font-size:16px;
	list-style-type: decimal-leading-zero;
	margin-left: 2.3em;
	line-height: 1.2;
	margin-bottom: 0.7em;
}

html .mceContentBody dl {
	margin-bottom: 1em;
	line-height: 1.2;
}

html .mceContentBody dl dt {
	font-size:16px;
	font-weight: bold;
}

html .mceContentBody dl dd {
	font-size:16px;
	margin-bottom: 0.7em;
	padding-left: 2em;
}

html .mceContentBody table {
	width: 100%;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

html .mceContentBody ul li {
	font-size:14px;
}

html .mceContentBody ol li {
	font-size:14px;
}
html .mceContentBody dl dt {
	font-size:14px;
}

html .mceContentBody dl dd {
	font-size:14px;
}
	
	
}	/* for SP max-width: 736px */



/*-------------------------------------------------------------
テーブル
	
-------------------------------------------------------------*/
html .mceContentBody table{
	margin-top:20px;
	border-collapse:collapse;
	border:none;
	border-spacing:0;
}

html .mceContentBody table th,
html .mceContentBody table td {
	padding:15px;
	font-size:16px;
	line-height:20px;
	vertical-align:top;
	border:solid 1px #000;
	font-weight:normal;
	text-align:left;
}

html .mceContentBody table th {
	color:#000;
	border: 1px solid #ddd;
	font-weight: bold;
}

html .mceContentBody table td {
	color: #000;
	border: 1px solid #ddd;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

	
html .mceContentBody table{
	margin-top:10px;
}
html .mceContentBody table th,
html .mceContentBody table td {
	display:block;
	padding:10px;
	margin:0;
	width:auto;
	box-sizing:border-box;
	font-size:14px;
}
html .mceContentBody table th,
html .mceContentBody table td {
	border-top:0;
}

html .mceContentBody table tr:first-child th {
	border-top:1px solid #ddd;
}

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	form_section　お問い合わせ
-------------------------------------------------------------*/

.form_content table {
	border-top:1px solid #ddd;
	margin:30px auto;
}
.form_content table th {
	padding:20px 0;
	font-size:16px;
	color:#000;
	width:200px;
	border-bottom:1px solid #ddd;
}
.form_content table td {
	padding:20px 0;
	font-size:16px;
	color:#000;
	margin-left:200px;
	line-height:30px;
	border-bottom:1px solid #ddd;
}
.form_content table td {
	padding:20px 0;
	font-size:16px;
	color:#000;
	margin-left:200px;
	line-height:30px;
	border-bottom:1px solid #ddd;
}
.form_content table td input {
	margin-right:10px;
	color:#333;
}
.form_content table td label {
	margin-right:20px;
	cursor:pointer;
}
.form_content table td .post_mark {
	margin-right:5px;
	float:left;
}
.form_content .btn_white {
	margin-top:20px;
}
.form_content .mark {
	color:#c00;
	padding-left:5px;
}
.form_content p .mark {
	padding-left:0;
}
.form_content table td input.text_l ,
.form_content table td input.text_m ,
.form_content table td input.text_s {
	padding:5px 10px;
	background:#fff;
	border:1px solid #ddd;
	font-size:16px;
	border-radius:3px; 
	margin-right:0;
	-webkit-border-radius:3px; 
	-moz-border-radius:3px; 
}
.form_content table td input.text_l {
	width:75%;
}
.form_content table td input.text_m {
	width:50%;
}
.form_content table td input.text_s {
	width:25%;
}
.form_content table td select {
	font-size:100%;
}
.form_content table td textarea {
	width:75%;
	height:125px;
	padding:5px 10px;
	background:#fff;
	border:1px solid #ddd;
	font-size:16px;
	border-radius:3px; 
	-webkit-border-radius:3px; 
	-moz-border-radius:3px;
}
.form_content table td p {
	margin:0px 0 5px;
}
.form_content .notes {
	height:300px;
	overflow:scroll;
	margin-top:0;
}
.form_content .notes h5 {
	margin-top:20px;
	font-weight:bold;
}
.form_content .notes p {
	margin:5px 0 0 0;
	font-size:12px;
	line-height:18px;
}
.form_content .agree {
	text-align:center;
	margin-top:10px;
}
/* タブレット以下 */
@media screen and (max-width: 940px) {

.form_content p {
	margin:0;
	padding:0;
}
.form_content table {
	width:100%;
}
.form_content .btn_white {
	padding-bottom:20px;
}

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.form_content p {
	font-size:14px;
}
.form_content table {
	margin:20px 0 0;
}
.form_content table th ,
.form_content table td {
	padding:10px 10px;
	width:auto;
	display:block;
}
.form_content table th {
	font-size:14px;
	width:auto;
	float:none;
	padding-bottom:5px;
	border-bottom:none;
}
.form_content table td {
	font-size:14px;
	margin-left:0;
	line-height:30px;
	padding-top:0;
}
.form_content table td p {
	margin:0;
}
.form_content .mark {
	font-size:14px;
	padding-left:0;
}
.form_content table td input.text_l ,
.form_content table td input.text_m ,
.form_content table td textarea {
	width:100%;
	font-size:14px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.form_content table td input.text_s {
	width:auto;
	font-size:14px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.form_content table td select {
	width: 90%;
}
.form_content .notes h5 {
	margin-top:10px;
}
.form_content .notes h5 + p {
	margin-top:0;
}

}	/* for SP max-width: 736px */

/*-------------------------------------------------------------	
	jquery mailform バリデート
-------------------------------------------------------------*/
.validate {
	padding-bottom:5px;
}
.validate p {
	background:#fee;
	padding:2px 10px;
	color:#c00;
	line-height:25px;
	border-radius:3px; 
	-webkit-border-radius:3px; 
	-moz-border-radius:3px; 
}
.validate_submit {
	margin:0 auto;
	text-align:center;
	padding-bottom:20px;
}
.validate_submit p {
	padding:10px;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.validate_submit {
	margin:0 auto;
	text-align:left;
}
}	/* for SP max-width: 736px */



/*-------------------------------------------------------------
	msgbox_section　お問い合わせ完了
-------------------------------------------------------------*/
.msgbox_section {
	margin-left:auto;
	margin-right:auto;
}

.msgbox_section p {
	padding-top: 30px;
	text-align: center;
}

.msgbox_section .mailmsg {
	margin:20px auto 0;
	width:700px;
	padding:20px;
	border:1px solid #ddd;
	border-radius:3px; 
	-webkit-border-radius:3px; 
	-moz-border-radius:3px;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	font-size:16px;
}
.msgbox_section .back_link {
	padding:30px;
	text-align:center;
}
.msgbox_section .back_link a {
	display:block;
	margin:0 auto;
	width:auto;
}

/* タブレット以下 */
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.msgbox_section {
	width:auto;
	padding:20px;
	padding-bottom: 0;
}
.msgbox_section p {
	padding: 10px;
	text-align: center;
}
.msgbox_section .mailmsg {
	width:auto;
	padding:10px;
	font-size:14px;
	margin:10px auto 0;
}
.msgbox_section .back_link {
	margin-top:0px;
}

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	section_privacy　プライバシーポリシー	
-------------------------------------------------------------*/

.section_privacy h3 {
	margin-top:40px;
}

.section_privacy ul {
	margin-top:20px;
	padding-left:1em;
}
.section_privacy li {
	font-size:16px;
	line-height:1.8;
	text-indent:-1em;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.section_privacy h3 {
	margin-top:20px;
}	
.section_privacy ul {
	margin-top:15px;
}
.section_privacy li {
	font-size:14px;
}

}

/*-------------------------------------------------------------
	section_sitemap　サイトマップ
-------------------------------------------------------------*/

.section_sitemap {
	text-align:left;
}
.section_sitemap a {
	text-decoration:none;
	color:#000;
}
.section_sitemap a:hover {
	color:#6d6886;
}
.section_sitemap .mainnav {
	width:50%;
	float:left;
}
.section_sitemap .mainnav > li {
	width:90%;
	font-size:18px;
	line-height:25px;
	font-weight:bold;
	margin-top:30px;
}
.section_sitemap .mainnav > li a {
	display:block;
	padding-bottom:5px;
	border-bottom:1px solid #000;
}
.section_sitemap .subnav {
	margin-top:15px;
	width:100%;
}
.section_sitemap .subnav .icon {
	color:#6d6886;
	width:100%;
}
.section_sitemap .subnav li {
	font-size:14px;
	line-height:20px;
	font-weight:normal;
	margin-top:5px;
	
}
.section_sitemap .subnav li a {
	padding-left:13px;
	background-image: url(../images/asset/txtlink_arw.png);
	background-position: left center;
	background-repeat:no-repeat;
	border-bottom:none;
	padding-bottom:0;
}


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

.section_sitemap .mainnav {
	width:100%;
	float:none;
}
.section_sitemap .mainnav li {
	font-size:16px;
	padding-bottom:0;
	margin-top:10px;
}
.section_sitemap .subnav {
	margin-top:0;
}
.section_sitemap .subnav li {
	font-size:14px;
	margin-top:5px;
}

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
}

/*===============================================================
	
	scroll_info
	
===============================================================*/
.scroll_info {
	position: absolute;
	bottom: 0;
	left: 50%;
}
.scroll_info a {
	z-index: 2;
	display: inline-block;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	text-decoration: none;
	padding-top:50px;
	color:#fff;
}
.scroll_info a span {
	position: absolute;
	top: 0;
	left: 50%;
	width: 30px;
	height: 50px;
	margin-left: -15px;
	border: 2px solid #fff;
	border-radius: 50px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	font-size:12px;
}
.scroll_info a span::before {
	position: absolute;
	top: 10px;
	left: 50%;
	content: '';
	width: 6px;
	height: 6px;
	margin-left: -3px;
	background-color: #fff;
	border-radius: 100%;
	-webkit-animation: sdb 2s infinite;
	animation: sdb 2s infinite;
	box-sizing: border-box;
}
.scroll_info a:hover {
	opacity:0.7;
}
@-webkit-keyframes sdb {
	0% {
		-webkit-transform: translate(0, 0);
		opacity: 0;
	}
	40% {
		opacity: 1;
	}
	80% {
		-webkit-transform: translate(0, 20px);
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}
@keyframes sdb {
	0% {
		transform: translate(0, 0);
		opacity: 0;
	}
	40% {
		opacity: 1;
	}
	80% {
		transform: translate(0, 20px);
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

/* タブレット以下 */
@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 */

/*===============================================================
	
	next_offer
	
===============================================================*/
.next_offer {
	text-align:center;
	margin-top:80px;
}
.next_offer h3 {
	font-size:25px;
	line-height:1.5;
	color:#1d50a2;
}
.next_offer h3:after {
	display:block;
	content:'';
	margin:0 auto;
	margin-top:10px;
	width:30px;
	height:30px;
	border-bottom:solid 1px #1d50a2;
	border-right:solid 1px #1d50a2;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
.next_offer {
	text-align:center;
	margin-top:40px;
}
.next_offer h3 {
	font-size:16px;
	line-height:1.5;
	color:#1d50a2;
}
.next_offer h3:after {
	display:block;
	content:'';
	margin:0 auto;
	margin-top:0;
	width:20px;
	height:20px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

}	/* for SP max-width: 736px */


/*===============================================================
	
	/* ページャー（MTPlugin::PageBute.pl）
	
===============================================================*/
.wp-pagenavi {
	text-align: center;
	margin-top: 30px;
}
.wp-pagenavi span ,
.wp-pagenavi a {
	border: 1px solid #eee;
	background: #eee;
	padding: 11px 10px 9px;
	width: 20px;
	display: inline-block;
	line-height: 20px;
	height: 20px;
	padding: 5px;
	text-align: center;
	margin: 0 5px;
	font-weight: bold;
}
.wp-pagenavi span {
	border: 1px solid #1d50a2;
	color: #1d50a2;
	background: #fff;
}
.wp-pagenavi a:hover {
	border: 1px solid #1d50a2;
	color: #fff;
	background: #1d50a2;
}

/*
.pager {
  position: relative;
  overflow: hidden;
	padding:30px 0 10px 0;
	text-align:center;
}

.pager ul {
  position: relative;
  left: 50%;
  float: left;
}

.pager ul li {
  position: relative;
  left: -50%;
  float: left;
	margin-right:10px;
	font-size:14px;
	line-height:25px;
}
.pager a{
	color:#fff;
	display:block;
	background:#0081cc;
	border:1px solid #0081cc;
	text-decoration:none;
}
.pager a:hover{
	color:#fff;
	background:#00a1ff;
	border-color:#00a1ff;
}
.pager .link_page a {
	width:25px;
	height:25px;
	border-radius:3px;
}
.pager .link_next a {
	border-radius:3px;
	padding:0 10px;
	background:#0081cc;
}
.pager .link_prev a {
	border-radius:3px;
	padding:0 10px;
	background:#0081cc;
}
.pager .link_next a:hover {
	background:#00a1ff;
}
.pager .link_prev a:hover {
	background:#00a1ff;
}


.pager .current_page {
	color:#0081cc;
	font-weight:bold;
	border:1px solid #0081cc;
	width:25px;
	height:25px;
	line-height:25px;
	border-radius:3px;
}
*/

/* タブレット以下 */
@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 */



/*===============================================================
	
	404 NOT FOUND
	
===============================================================*/
.notfound {
	text-align: center;
}
.notfound h4 {
	margin-top:0px;
	font-size:20px;
	line-height:25px;
	font-weight:bold;
}
.notfound p {
	margin-top: 20px;
}
.notfound p a {
	text-decoration: underline;
}
.notfound ul {
	margin-top: 10px;
	background: #eee;
	padding:40px;
}
.notfound li {
	margin-top: 10px;
}
.notfound li:first-child {
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {


}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.notfound {
	text-align: left;
}
.notfound ul {
	padding:20px;
}
.notfound li {
	margin-top: 5px;
}

}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
	foo	
-------------------------------------------------------------*/
.foo {
}

/* タブレット以下 */
@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 */

/*-------------------------------------------------------------
	foo	
-------------------------------------------------------------*/
.foo {
}

/* タブレット以下 */
@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 */


/*===============================================================
	
	20201207追加
	FontAwesome
	
===============================================================*/

/* 20250820 import廃止 /common/css/all.css */

/*===============================================================
	
	20201104追加
	YouTube
	
===============================================================*/

.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

.youtube_link a {
	width:100%;
	display: block;
	text-align: center;
	color: #1d50a2;
	font-size: 16px;
	line-height: 20px;
	font-weight: bold;
	padding: 15px 0;
	margin:0 auto;
	border: solid 1px #1d50a2;
	text-decoration:none;
}
.youtube_link a:hover {
	text-decoration: none;
	color: #fff;
	background-color: #1d50a2;
}
.youtube_link a i {
	color: #ff0101;
}


/*===============================================================
	
	20201225追加
	PDFlink,btn
	
===============================================================*/

.pdf_link02 a {
	width:100%;
	display: block;
	background:url(../images/asset/icon_pdf.png) no-repeat 10px 10px;
	background-size:30px 30px;
	text-align: center;
	color: #1d50a2;
	font-size: 16px;
	line-height: 20px;
	font-weight: bold;
	padding: 15px 0;
	margin:0 auto;
	border: solid 1px #1d50a2;
	text-decoration:none;
}
.pdf_link02 a:hover {
	text-decoration: none;
	color: #fff;
	background-color: #1d50a2;
}

.btn_detail .p100 {
	width:100%;
}

.displayb {
	display: block;
}


/* 202107在庫処分table用 */
@media only screen and (min-width: 737px) {
	th.wid1em {
		width:1rem;
	}
}	/* for SP max-width: 736px */

@media only screen and (min-width: 737px) {
	h3.h3 {
		height:3em;
	}
}	/* for SP max-width: 736px */

img.b1 {
	border: #cdcdcd 1px solid;
}


.box01 {
	margin:1.5em 10%;
}

@media only screen and (max-width: 736px) {
	.box01 {
		margin:1.5em 0;
	}
}	/* for SP max-width: 736px */

.fontb {
	font-weight: bold;
}

/* /202107在庫処分table用 */

/* 20210721 通用口ガードマン用 */

ul.center li {
	text-align: center;
	padding: 10px 0 0 0;
}

ul.t1rem li {
	font-size: 1.1rem;
}

/* /20210721 通用口ガードマン用 */


/*-------------------------------------------------------------
	content dl.l02	
-------------------------------------------------------------*/
.content dl.l02 {
	width:100%;
	overflow:visible;
	border-bottom:0;
}
.content dl.l02 dt {
	width:100%;
	float:none;
	padding:15px;
	font-size:16px;
	font-weight:bold;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.content dl.l02 dd {
	padding-left:0;
	padding:0 0 25px 0;
	border-top:0;
	border-bottom:solid 1px #ddd;
	font-size:16px;
}


/*===============================================================
	
	pc-only
	
===============================================================*/

.pc-only {
  display: inline-block;
}
@media (max-width: 767px) {
  .pc-only {
    display: none;
  }
}

.tab-only {
  display: none;
}
@media (max-width: 960px) {
  .tab-only {
    display: inline-block;
  }
}

.sp-only {
  display: none;
}
@media (max-width: 767px) {
  .sp-only {
    display: inline-block;
  }
}

/* 20250818 */
.sp-only-disb {
  display: none;
}
@media (max-width: 767px) {
  .sp-only-disb {
    display: block;
  }
}


/*===============================================================
	
	linkarea
	
===============================================================*/

.linkarea img.auto {
	width: auto;
	height: auto;
}


.section_teye_rec .align_center img.auto {
	width:auto;
}

/*-------画像hover用-------------*/

.hoverimg a:hover {
	opacity: 0.8;
}


/*===============================================================
	
	form post-password-form
	
===============================================================*/

.post-password-form {
		margin: 0 4em;
		padding: 2em 0;
}




/*===============================================================
	
	.galle.griditem
	
===============================================================*/
.galle.griditem {
}
.galle.griditem h3 {
	font-size:18px;
	text-align:center;
	margin:0 auto;
	margin-top:20px;
}
.galle.griditem h3 .underline {
	border-bottom:solid 2px #000;
	padding-bottom:10px;
	font-weight:bold;
}
.galle.griditem h3 a {
	text-decoration:none;
	color:#000;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	.galle.griditem h3 {
		font-size:14px;
		text-align:center;
		margin:0 auto;
		margin-top:20px;
	}
	.galle.griditem h3 .underline {
	}
	.galle.griditem h3 a {
		text-decoration:none;
		color:#000;
	}
}	/* for tablet max-width: 960px */

	/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.galle.griditem h3 {
		font-size:14px;
		margin-top:15px;
	}
	.galle.griditem h3 .underline {
		padding-bottom:2px;
	}
}	/* for SP max-width: 736px */

/*===============================================================
	
	.galle.griditem sp_hover
	
===============================================================*/
.galle.griditem .fitimg {
	position:relative;
	display:block;
}
.galle.griditem img {
	width:100%;height:auto;
}
.galle.griditem .hover_mask,
.galle.griditem .hover_line {
	opacity:0;
	transition: all .2s;
}
.galle.griditem .hover_mask {
	position:absolute;
	top:0;
	left:0;
	display:block;
	background:rgba(0,0,0,0.5);
	z-index:10;
	-webkit-transform:scaleX(0.5) scaleY(0.5);
	transform:scaleX(0.5) scaleY(0.5);
	-moz-transform: scaleX(0.5) scaleY(0.5);
	-ms-transform: scaleX(0.5) scaleY(0.5);
}
.galle.griditem .hover_line {
	position:absolute;
	top:0; left:0; right:0; bottom:0;
	margin:auto;
	display:block;
	width:25px;
	height:2px;
	background:#fff;
	z-index:11;
}
.galle.griditem .hover_line_h {
	-webkit-transform:rotate(-90deg);
	transform:rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
}
/* arw版　overrideとは */


/*===============================================================
	
	table 特許一覧用
	
===============================================================*/

table.patentlist01 {
	border-collapse: collapse;
	width: 100%;
}
.patentlist01 th,
.patentlist01 td{
	padding: 30px 10px;
	border: solid 1px #ccc;
	text-align:center;
	box-sizing:border-box;
	font-size: 18px;
}
.patentlist01 th.gray {
	background: #e1e1e1;
	color: #000;
}
.patentlist01 th {
	background: #0B308E;
	color: #fff;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
		.patentlist01 .head{
			display:none;
	}
	.patentlist01 {
			width: 100%;
	}
	table.patentlist01 td {
			display: block;
			width: 100%;
			border-bottom:none;
	}
	table.patentlist01 td:first-child{
			background: #ff7bac;
			color:#fff;
			font-weight:bold;
	}
	table.patentlist01 td:before{
			content: attr(data-label);
			font-size: 0.7rem;
			font-weight:bold;
			color: #999;
			display: block;
	}
	.patentlist01 tr:last-child{
			border-bottom: solid 1px #ccc;
	}
	.patentlist01 th,
	.patentlist01 td{
		font-size: 12px;
	}
	.patentlist01 th.gray {
		background: #0B308E;
		color: #fff;
	}
}


/*===============================================================
	
	img fig50
	20240206

===============================================================*/

.fig50 img {
	width:50%;
	height:auto;
	border:solid 1px #ddd;
}

.fig50-nobod img {
	width:50%;
	height:auto;
}

.content .fig50,
.content .fig50-nobod {
	margin-top:30px;
	text-align-last: center;
}
.borderimg {
	border:solid 1px #ddd;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.content .fig50 {
	margin-top:15px;
}
}	/* for SP max-width: 736px */


/*===============================================================
	
	動画制作告知ページ レイアウト
	
===============================================================*/



/*===============================================================
	
	動画制作告知ページ テキスト
	
===============================================================*/

.fontsize15em {
	font-size: 1.5em;
}

h3.center {
	font-size:20px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
h3.centermorebig {
	font-size:2.2em;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
	line-height: 1.4;
}

h4.center {
	font-size:18px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}

h4.centermorebig {
	font-size:1.8em;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	h3.center,
	h3.centermorebig {
		font-size:18px;
		margin-top:15px;
	}
	h4.center,
	h4.centermorebig {
		font-size:16px;
		margin-top:15px;
	}
}	/* for SP max-width: 736px */

.li-cap01 {
	padding-left: 1.5em;
	font-size: 0.9em;
}

.bgw {
	padding:0.5em;
	background-color: #ffffff;
}

.headline h2.morebig {
	font-size: 3em;
	line-height: 1.4;
}

.content h3.morebig {
	font-size: 2.2em;
	font-weight: bold;
	text-align: center;
	margin-top: 30px;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.section * + .headline {
		margin-top:50px;
	}
	.headline h2.morebig {
		font-size:18px;
	}
	.content h3.morebig {
		font-size:18px;
		margin-top:15px;
	}
}	/* for SP max-width: 736px */


/*===============================================================
	
	動画制作告知ページ スライドショー用
	20240201
	https://www.esz.co.jp/blog/185.html
	
===============================================================*/

.main_imgBox {
	/* height: 1080px; */
	/* height: auto; */
	width:100%;
	/* padding-bottom:35%; */
	overflow: hidden;
	position: relative; }

.main_imgBox50 {
	/* height: 1080px; */
	/* height: auto; */
	width:100%;
	padding-bottom:50%;
	overflow: hidden;
	position: relative; }

.main_Box75A,
.main_Box75B,
.main_Box75C {
	/* height: 1080px; */
	/* height: auto; */
	width:100%;
	padding-bottom:0%;
	overflow: hidden;
	/*position: relative;*/
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	/*position: absolute;*/
 }
 .main_Box75A {
	background-image: url('/common/images/slide/img03.jpg');
 }
 .main_Box75B {
	background-image: url('/common/images/slide/img04.jpg');
 }
 .main_Box75C {
	background-image: url('/common/images/slide/img05.jpg');
 }

	/*
.main_logo {
	z-index:11;
	position: absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:50%;
	height:auto;
}
*/

.main_txtbox {
	z-index:11;
	position: absolute;
	top:20%;
	left:25%;
	/* transform:translate(-50%,-50%); */
	/* width:16%; */
	height:auto;
	/* padding: 1.2em; */
	/* background-color: #000000; */
}

.main_txtbox_inner {
	padding: 1.2em;
	background-color: #000000;
	color: #ffffff;
	font-family: 'Roboto', 'Montserrat', 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", YuGothic, Meiryo, sans-serif;
	font-weight: 400;
	line-height: 1.2;
}

.main_txtbox_sp {
	/* width: 100%; */
	display: block;
	margin: 0 auto;
	padding: 0.8em;
	background-color: #ffffff;
	color: #000000;
	font-size: 1em;
	font-weight: 600;
	align-items: center;
	text-align: center;
}

.main_txtbox2 {
	z-index:11;
	/* position: absolute; */
	/* top:3%; */
	/* left:0%; */
	/* transform:translate(-50%,-50%); */
	/* width:16%; */
	height:auto;
	/* padding: 1.2em; */
	/* background-color: #000000; */
	margin-top:20px;
}


/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	
.main_txtbox2 {
	z-index:11;
	position: unset;
	top:0%;
	left:0%;
	/* transform:translate(-50%,-50%); */
	/* width:16%; */
	height:auto;
	/* padding: 1.2em; */
	/* background-color: #000000; */
	display: block;
}
}

.main_txtbox2_inner {
	padding: 1.2em;
	background-color: #000000;
	color: #ffffff;
	font-family: 'Roboto', 'Montserrat', 'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", YuGothic, Meiryo, sans-serif;
	line-height: 1.2;
}

.main_txtbox2_sp {
	/* width: 100%; */
	display: block;
	margin: 0 auto;
	padding: 0.8em;
	background-color: #000000;
	color: #ffffff;
	font-size: 1em;
	align-items: center;
	text-align: center;
}

.font2em {
	font-size: 2em;
	font-weight: 900;
}

.font3em {
	font-size: 3em;
	font-weight: 900;
}

.main_img {
	z-index:10;
	opacity: 0;
	width: 100%;
	/* height: 1080px; */
	padding-bottom:35%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-animation: anime 16s 0s infinite;
	animation: anime 16s 0s infinite; }

	.main_img:nth-of-type(2) {
			-webkit-animation-delay: 8s;
			animation-delay: 8s; }

.main_img50 {
	z-index:10;
	opacity: 0;
	width: 100%;
	/* height: 1080px; */
	padding-bottom:50%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-animation: anime 16s 0s infinite;
	animation: anime 16s 0s infinite; }

.main_img50:nth-of-type(2) {
		-webkit-animation-delay: 8s;
		animation-delay: 8s; }

/* アニメ無し */
.main_img75 {
	z-index:10;
	opacity: 0;
	width: 100%;
	padding-bottom:75%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0; }

/*
.main_img75 {
	z-index:10;
	opacity: 0;
	width: 100%;
	padding-bottom:75%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-animation: anime 16s 0s infinite;
	animation: anime 16s 0s infinite; }

	.main_img75:nth-of-type(2) {
			-webkit-animation-delay: 8s;
			animation-delay: 8s; }
*/
	/*
	.main_img:nth-of-type(3) {
			-webkit-animation-delay: 12s;
			animation-delay: 12s; }
	*/

.main_imgM {
	opacity: 0;
	width:100%;
	height:100%;
	object-fit: cover;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-animation: anime 16s 0s infinite;
	animation: anime 16s 0s infinite; }

	.main_imgM:nth-of-type(2) {
			-webkit-animation-delay: 8s;
			animation-delay: 8s; }

	/*
	.main_imgM:nth-of-type(3) {
			-webkit-animation-delay: 12s;
			animation-delay: 12s; }
	*/

@keyframes anime {
	0% {
		opacity: 0;
	}
	25% {
			opacity: 1;
	}
	50% {
			opacity: 1;
	}
	75% {
			opacity: 0;
				transform: scale(1.1);
															z-index:9;
	}
	100% { opacity: 0 }
}

@-webkit-keyframes anime {
	0% {
		opacity: 0;
	}
	25% {
			opacity: 1;
	}
	50% {
			opacity: 1;
	}
	75% {
			opacity: 0;
				transform: scale(1.1);
															z-index:9;
	}
	100% { opacity: 0 }
}


/*===============================================================
	
	動画制作告知ページ スライドショー02用
	20240206
	https://coco-factory.jp/ugokuweb/move01/6-1-8/
	
===============================================================*/

.slider img {
	width:100%;/*スライダー内の画像を横幅100%に*/
	height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
	margin:0 10px;/*スライド左右の余白調整*/
}

ul.slider{
	margin:0;
	padding: 0;
	list-style: none;
}


/*===============================================================
	
	動画制作告知ページ 元アコーディオン
	
===============================================================*/


.accordio2 {
	position:relative;
}
.accordio2_icon {
	position:absolute;
	width:40px;
	height:40px;
	right:13px;
	top:13px;
}
.accordio2_icon_inner {
	position: relative;
	width: 40px;
	height: 40px;
}
.accordio2_icon span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
	position: absolute;
	top:0;
	left: 0;
	width: 40px;
	height: 4px;
	background-color: #fff;
	border-radius: 0px;
}
.accordio2_icon span:nth-of-type(1) {
	-webkit-transform: translateY(18px) rotate(360deg);
	transform: translateY(18px) rotate(360deg);
	-ms-transform: translateY(18px) rotate(360deg);
	-moz-transform: translateY(18px) rotate(360deg);
}
.accordio2_icon span:nth-of-type(2) {
	top:18px;
}
.active .accordio2_icon span:nth-of-type(1) {
	-webkit-transform: translateY(18px) rotate(90deg);
	transform: translateY(18px) rotate(90deg);
	-ms-transform: translateY(18px) rotate(90deg);
	-moz-transform: translateY(18px) rotate(90deg);
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.accordio2_icon {
	position:absolute;
	width:20px;
	height:20px;
	right:13px;
	top:13px;
}
.accordio2_icon_inner {
	position: relative;
	width:20px;
	height:20px;
}
.accordio2_icon span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
	position: absolute;
	top:0;
	left: 0;
	width: 20px;
	height: 3px;
	background-color: #fff;
	border-radius: 0px;
}
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.accordio2_icon {
	position:absolute;
	width:20px;
	height:20px;
	right:5px;
	top:0px;
}
.accordio2_icon_inner {
	position: relative;
	width:20px;
	height:20px;
}
.accordio2_icon span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
	position: absolute;
	top:0;
	left: 0;
	width: 20px;
	height: 2px;
	background-color: #9993b6;
	border-radius: 0px;
}
}	/* for SP max-width: 736px */
/*-------------------------------------------------------------
	.accordion2_title
-------------------------------------------------------------*/
.accordio2_title {
	background-color:#000000;
	position:relative;
	width:100%;
	cursor:pointer;
}
.accordio2_title:hover {
	background-color:#222222;
}
.accordio2_title h3 {
	font-size:30px;
	line-height:1.5;
	padding:10px;
	color:#fff;
	text-align:center;
}
.accordio2_title .icon {
	position:absolute;
	top:-10px;
	left:-10px;
	width:100px;
	text-align:center;
	color:#ffffff;
	font-size:20px;
	font-weight:bold;
	line-height:30px;
	background:#111111;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.accordio2_title h3 {
	font-size:1.5em;
	line-height:20px;
	padding:10px 30px 10px 10px;
	color:#fff;
	text-align:left;
}
.accordio2_title .icon {
	position:absolute;
	top:-15px;
	left:-10px;
	width:50px;
	text-align:center;
	color:#ffffff;
	font-size:12px;
	font-weight:bold;
	line-height:20px;
	background:#111111;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------

	.accordio2_body

-------------------------------------------------------------*/

.accordio2_body	{
	background:#eeeeee;
	padding:35px;
}


/*-------------------------------------------------------------

	.case .solution2	

-------------------------------------------------------------*/

.case .solution2	{
	background:#eeeeee;
	padding:35px;
	height: 800px;
}
.case .solution2 .txt,
.case .solution2 .fig {
	width:100%;
	border:0;
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	.case .solution2	{
		height:760px;
	}
	.case .solution2 .txt {
		height:300px;
	}	
} /* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.case .solution2	{
		height:880px;
	}
	.case .solution2 .txt {
		height:300px;
	}
}	/* for SP max-width: 736px */

.case .solution2 h3 {
	font-size:25px;
	line-height:1.4;
	font-weight:bold;
}
.case .solution2 h3 span {
	font-weight:bold;
}
.case .solution2 p {
	margin-top:20px;
}

/* ボタン処理までしたいが */
.case .solution2 .txtlink {
	padding: 0.7em;
	border: #aaaaaa 1px solid;
	text-align: center;
}

.case .solution2 .txtlink a {
	font-size:18px;
	font-weight:bold;
}
.case .solution2 .txtlink a span {
	font-weight:bold;
}
.case .solution2 .txtlink a:hover {
	text-decoration:underline;
}
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.case .solution2	{
	background:#eeedf1;
	padding:15px;
	height: auto;
}
.case .solution2 .txt,
.case .solution2 .fig {
	width:100%;
}
.case .solution2 .txt {
	margin-top:15px;
}
.case .solution2 h3 {
	font-size:1.3em;
}
.case .solution2 p {
	margin-top:5px;
	font-size:1.2em;
	line-height:1.6;
}
.case .solution2 .txtlink {
	margin-top:15px;
}
.case .solution2 .txtlink a {
	font-size:14px;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------

	.case .solution3	

-------------------------------------------------------------*/

.case .solution3	{
	background:#eeeeee;
	padding:35px;
}
.case .solution3 .txt,
.case .solution3 .fig {
	width:47%;
	border:0;
	margin-top:0;
}
.case .solution3 h3 {
	font-size:25px;
	line-height:1.4;
	font-weight:bold;
}
.case .solution3 h3 span {
	font-weight:bold;
}
.case .solution3 p {
	margin-top:20px;
}
.case .solution3 .txtlink {
}
.case .solution3 .txtlink a {
	font-size:18px;
	font-weight:bold;
}
.case .solution3 .txtlink a span {
	font-weight:bold;
}
.case .solution3 .txtlink a:hover {
	text-decoration:underline;
}
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.case .solution3	{
	background:#eeedf1;
	padding:15px;
}
.case .solution3 .txt,
.case .solution3 .fig {
	width:100%;
}
.case .solution3 .txt {
	margin-top:15px;
}
.case .solution3 h3 {
	font-size:16px;
}
.case .solution3 p {
	margin-top:5px;
	font-size:12px;
	line-height:1.6;
}
.case .solution3 .txtlink {
	margin-top:15px;
}
.case .solution3 .txtlink a {
	font-size:14px;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------

	リスト	

-------------------------------------------------------------*/

.num-li01 {
	list-style-type: none;
	padding: 1em;
	/* border: 2px solid #2589d0; */
	counter-reset: li;
}

.num-li01 li {
	display: flex;
	align-items: center;
	padding: .3em;
	/* 20240305 */
	font-size: 1.4em;
}

.num-li01 li::before {
	display: inline-block;
	min-width: 1.7em;
	margin-right: 5px;
	border-radius: 50%;
	background-color: #111111;
	color: #fff;
	font-weight: bold;
	font-size: .75em;
	line-height: 1.7em;
	text-align: center;
	content: counter(li);
	counter-increment: li;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.num-li01 li {
		display: block;
		align-items: unset;
		padding: .3em;
		/* 20240305 */
		font-size: 1.4em;
	}
}	/* for SP max-width: 736px */

.ul18em li {
	font-size: 1.8em;
	line-height: 1.8em;
}
.ul14em li {
	font-size: 1.4em;
	line-height: 1.8em;
}
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.ul18em li,
	.ul14em li {
		font-size: 1.4em;
		line-height: 1.8em;
	}
}

.content dt.morebig {
	width:10em;
	float:left;
	padding:15px;
	font-size:1.6em;
	font-weight:bold;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	line-height: 1.6;
}
.content dd.morebig {
	padding:15px;
	padding-left:10em;
	border-top:solid 1px #ddd;
	font-size:1.6em;
	line-height: 1.6;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.content dt,
	.content dt.morebig {
		width:100%;
		float:none;
		padding:15px 0 0 0;
		font-size:14px;
		font-weight:bold;
		border-top:solid 1px #ddd;
	}
	.content dd,
	.content dd.morebig {
		padding:0px 0 15px 0;
		border-top:solid 0px #ddd;
		font-size:14px;
		line-height:1.5;
	}
}	/* for SP max-width: 736px */

/* ol装飾02 https://saruwakakun.com/html-css/reference/ul-ol-li-design */
.ollist02 ol {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
}
.ollist02 ol li {
  position: relative;
	line-height: 1.8em;
	font-size: 16px;
	padding: 0.5em 0.5em 1.5em 30px;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.ollist02 ol li {
		position: relative;
		padding: 0.5em 0.5em 1.5em 30px;
		margin-top:10px;
		font-size:14px;
		line-height:1.6;
	}
	}	/* for SP max-width: 736px */

.ollist02 ol li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*以下数字のデザイン変える*/
  display:inline-block;
  background: #000000;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/* 1文字分インデント */
.indent1em h3 {
	margin-top:40px;
}

.indent1em ul {
	margin-top:20px;
	padding-left:1em;
}
.indent1em li {
	font-size:16px;
	line-height:1.8;
	text-indent:-1em;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

.indent1em h3 {
	margin-top:20px;
}	
.indent1em ul {
	margin-top:15px;
}
.indent1em li {
	font-size:14px;
}

}


/*===============================================================
	
	column-w300,500
	
===============================================================*/

.column-w300 {
	width:300px;
	margin:0 auto;
}
.column-w300 h3 {
	font-size:20px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column-w300 h4 {
	font-size:18px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column-w300 p {
	margin-top:30px;
	font-size:16px;
}
.column-w300 * + p {
	margin-top:20px;
	font-size:16px;
}
.column-w300 p.caution {
	font-size:12px;
}
.column-w300 .bbottom {
	border-bottom:1px solid #000;
	padding-bottom:10px;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.column-w300 {
	width:100%;
	margin:0 auto;
}
.column-w300 h3 {
	font-size:18px;
	margin-top:15px;
}
.column-w300 h4 {
	font-size:16px;
	margin-top:15px;
}
.column-w300 p {
	margin-top:10px;
	font-size:14px;
	line-height:1.6;
}
}	/* for SP max-width: 736px */


.column-w420 {
	width:420px;
	margin:0 auto;
}
.column-w420 h3 {
	font-size:20px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column-w420 h4 {
	font-size:18px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column-w420 p {
	margin-top:30px;
	font-size:16px;
}
.column-w420 * + p {
	margin-top:20px;
	font-size:16px;
}
.column-w420 p.caution {
	font-size:12px;
}
.column-w420 .bbottom {
	border-bottom:1px solid #000;
	padding-bottom:10px;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.column-w420 {
	width:100%;
	margin:0 auto;
}
.column-w420 h3 {
	font-size:18px;
	margin-top:15px;
}
.column-w420 h4 {
	font-size:16px;
	margin-top:15px;
}
.column-w420 p {
	margin-top:10px;
	font-size:14px;
	line-height:1.6;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------

	プラン要素下揃え用
	上部テキストに適用	

-------------------------------------------------------------*/

.card-box {
  position: relative;
}

.card-box .fitimg {
  position: absolute;
  top: 23em;
  left: 0;
  right: 0;
  margin: 0 auto;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
	.card-box {
		position: relative;
	}
	
	.card-box .fitimg {
		position: absolute;
		top: 36em;
		left: 0;
		right: 0;
		margin: 0 auto;
	}
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
	.card-box {
		position:unset;
		display: block;
	}
	
	.card-box .fitimg {
		position:unset;
		top: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
		display: block;
	}
}	/* for SP max-width: 736px */

.bg06 {
	background-image: url('/common/images/slide/img06.jpg');
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.txtcolorw {
	color: #ffffff;
}

.bgcolorb {
	background-color: #4075c5;
}

.bgb {
	background-color: #4075c5;
	padding:1em;
}


/*-------------------------------------------------------------

	見出しテキスト	

-------------------------------------------------------------*/

.headline.title02 {
	text-align: left;
}
.headline.title02 .column h3 {
	display: inline-block;
	margin-top: 0;
	background-color: #000;
	color: #fff;
}


/*===============================================================
	
20240521
localnav_link02
	
===============================================================*/

.localnav_link02 {
  /*position: relative;*/
  overflow: hidden;
  padding-top:30px;
}
.localnav_link02 ul {
  /*position: relative;*/
  /*left: 50%;*/
  /*float: left;*/
	margin: 0 auto;
	text-align: center;
}
.localnav_link02 ul li {
  /*position: relative;*/
  /*left: -50%;*/
  /*float: left;*/
}
.localnav_link02 ul li a {
	text-decoration:none;
	color:#000;
	/*margin-right:20px;*/
	/*padding-right:20px;*/
	/*border-right:solid 1px #ccc;*/
	font-size:16px;
}
.localnav_link02 ul li:last-child a {
	margin-right:0;
	padding-right:0;
	border-right:solid 0px #ddd;
}
.localnav_link02 ul li a:hover {
	color:#1d50a2;
}
/* タブレット以下 */
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.localnav_link02 {
  position: relative;
  overflow: hidden;
  padding:20px;
  border-bottom:solid 1px #ddd;
}
.localnav_link02 ul {
  position: relative;
  left: 0;
  float: none;
}
.localnav_link02 ul li {
  position: relative;
  left: 0;
  float: none;
}
.localnav_link02 ul li a {
	text-decoration:none;
	color:#7e77a4;
	font-size:16px;
	line-height:2;
	font-weight:bold;
	margin-right:0;
	padding-right:0;
	border-right:solid 0px #ccc;
	background-image:url(../images/asset/txtlink_arw.png);
	background-repeat:no-repeat;
	background-position:left center;
	background-size:4px 7px;
	padding-left:10px;
}
.localnav_link02 ul li:last-child a {
	margin-right:0;
	padding-right:0;
	border-right:solid 0px #ddd;
}
.localnav_link02 ul li a:hover {
	color:#1d50a2;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------
画像
-------------------------------------------------------------*/
html .mceContentBody .gridwrp_2 .fitimg img {
	width:100%;
	margin:0 auto;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {

}	/* for tablet max-width: 1000px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
html .mceContentBody .gridwrp_2 .fitimg img {
	max-width: 100%;
	height: auto;
	width /***/:auto;
}
}	/* for SP max-width: 736px */


/*-------------------------------------------------------------

202505 お問い合わせフォーム用

-------------------------------------------------------------*/

.box-btn {
	position: relative;
}

.p-country-name {
	display: none;
}

/*-------------------------------------------------------------
	content02 dl	
-------------------------------------------------------------*/

.content02 dl {
	width:100%;
	overflow:hidden;
	/*border-bottom:solid 1px #ddd;*/
}
.content02 dt {
	width:20%;
	float:left;
	padding:15px;
	font-size:16px;
	font-weight:bold;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
  text-align: right;
}
.content02 dd {
	padding:15px;
	padding-left:20%;
	/*border-top:solid 1px #ddd;*/
	border-bottom:solid 1px #ddd;
	font-size:16px;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {

  .content02 dt,
  .section_dfm_spec .content02 dt {
    width:100%;
    float:none;
    padding:15px 0 0 0;
    font-size:14px;
    font-weight:bold;
    border-top:0;
    border-bottom:0;
    text-align: left;
  }
  .content02 dd,
  .section_dfm_spec .content02 dd {
    padding:0px 0 15px 0;
    border-top:0;
    border-bottom:solid 1px #ddd;
    font-size:14px;
    line-height:1.5;
  }
  .section_w700 .content dd h4 {
    font-size:14px;
  }
}	/* for SP max-width: 736px */

.bordertopddd01 {
  border-top:solid 1px #ddd;
}

.content02 h4 {
	line-height: 1.4;
	font-weight: 600;
	font-size: 1.5rem;
	margin-bottom: .5rem;
}

/*===============================================================
	button
===============================================================*/

.h-adr input.submit-button {
  border: solid 2px #fd832a;
  border-radius: 10px;
  background-color: #fd832a;
  display: inline-block;
  margin: 0 0.5rem 0 0.5rem;
  padding: 2rem 7rem; /* 文言が4文字の場合の対応として */
  color: #ffffff;
  text-decoration: none;
}
.h-adr input.submit-button:hover {
  background-color: #fefcf9;
  color: #fd832a;
  text-decoration: underline;
}
.h-adr input.back-button {
  border: solid 2px #EFBF3D;
  border-radius: 10px;
  background-color: #EFBF3D;
  display: inline-block;
  padding: 2rem 8rem; /* 文言が2文字の場合の対応として */
  margin: 0 0.5rem 0 0.5rem;
  color: #ffffff;
  text-decoration: none;
}
.h-adr input.back-button:hover {
  background-color: #fefcf9;
  color: #EFBF3D;
  text-decoration: underline;
}
@media (max-width: 767px) {
  .h-adr input.submit-button,
  .h-adr input.back-button {
    margin: 0 0 20px 0;
  }
}

.contact_cap {
  border: 1px solid #ddd;
  background-color: #F3F3F3;
  text-align: center;
  padding: 30px;
  margin: 3rem 0;
}

.content02 p.telnumber {
  margin: 0;
  font-size: 3rem;
}
@media (max-width: 767px) {
  .content02 p.telnumber {
    font-size: 2rem;
  }
}
.content02 p.telnumber a {
  color: #fd832a;
  text-decoration: none;
}
.content02 p.telnumber a:hover {
  color: #fd832a;
  text-decoration: underline;
}


/*-------------------------------------------------------------

202505 お問い合わせ追加ヘッダー用

-------------------------------------------------------------*/

@media (min-width: 960px) {

	.flex_outer {
		display: flex;
	}

  .header {
		width:85%;
  }

	.navigation {
		width:100%;
  }

	.header .nav {
		width: 330px;
		align-items: flex-end;
	}

	/* 20250818header nav */
	.header ul.navlist {
		margin-bottom: 0;
	}

	.spv-only {
		display: none;
	}

	.nav-con {
		width:15%;
	}
	
	.nav-con {
		/* 20250512 */
		/* height: 100%; */
		height: 100px;
		position: relative;
		background: #11277a;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}

  .nav-con:hover:after {
    transform: translate(-50%, -50%) scale(1, 1);
    opacity: 1;
  }

	.nav-con:after {
		content: '';
		position: absolute;
		left: 50%;
		top: 50%;
		width: calc(100% - 2px);
		height: calc(100% - 2px);
		transform: translate(-50%, -50%) scale(0.9, 0.9);
		background: #fff;
		opacity: 0;
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
	}

	.nav-con a {
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		/* 20250512 */
		/* height: 100%; */
		height: 100px;
		/* 20250512 */
		/* width: 75px; */
		width: 100%;
		padding: 0;
		color: #fff;
		text-decoration: none;
		z-index: 1;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}

  .nav-con a {
		/* 20250512 */
    /* width: 110px; */
    width: 100%;
  }

  .nav-con a:hover {
    color: #11277a;
  }


}


@media (max-width: 960px) {
  .pcv-only {
    display: none;
  }

	.spv-only {
		display: inline-block;
	}

	.nav-con {
		display: none;
	}
}


/*-------------------------------------------------------------

202509 ボタン追加

-------------------------------------------------------------*/

.bg-blue01 {
	background-color: #11277a;
}

.btn-n01 {
	/* 20250512 */
	/* height: 100%; */
	/* height: 100px; */
	position: relative;
	margin: 40px 0;
	background: #11277a;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.btn-n01:hover:after {
	transform: translate(-50%, -50%) scale(1, 1);
	opacity: 1;
}

.btn-n01:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	transform: translate(-50%, -50%) scale(0.9, 0.9);
	background: #fff;
	opacity: 0;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.btn-n01 a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	/* 20250512 */
	/* height: 100%; */
	/* height: 100px; */
	/* 20250512 */
	/* width: 75px; */
	width: 100%;
	padding: 0;
	color: #fff;
	text-decoration: none;
	font-size:20px;
	font-weight:bold;
	padding:30px;
	line-height: 0.8;
	z-index: 1;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.btn-n01 a {
	/* 20250512 */
	/* width: 110px; */
	width: 100%;
}

.btn-n01 a:hover {
	color: #11277a;
	text-decoration:none;
}

.btn-n01 a span {
	display:inline-block;
	font-size:16px;
	padding-bottom:3px;
	font-weight:bold;
}

	/* for SP max-width: 736px */
@media only screen and (max-width: 736px) {
	.btn-n01 {
		width:80%;
		margin:0 auto;
		margin-top:20px;
	}
	.btn-n01 a {
		font-size:16px;
		padding:15px 0;
		text-align: center;
		line-height: 1.5;
	}
	/*
	.btn-n01 a span {
		display:none;
	}
	*/
	.content + .btn-n01 {
		margin-top:30px;
	}
}
	/* /for SP max-width: 736px */

/*
.btn_detail {
	width:600px;
	margin:0 auto;
	margin-top:40px;
}
.btn_detail a {
	text-decoration:none;
	display:block;
	background-color:#1d50a2;
	text-align:center;
	color:#fff;
	font-size:20px;
	font-weight:bold;
	padding:25px 0;
	border-radius:0px;
	box-shadow:#f4e228 0px 2px 0px 0px;
	-webkit-box-shadow:#f4e228 0px 2px 0px 0px;
	-moz-box-shadow:#f4e228 0px 2px 0px 0px;
}
.btn_detail a span {
	display:inline-block;
	font-size:16px;
	padding-bottom:3px;
	font-weight:bold;
}
.btn_detail a:hover {
	text-decoration:none;
	background-color:#105ad1;
}
.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;
}

.content + .btn_detail {
	margin-top:80px;
}


@media only screen and (max-width: 736px) {
.btn_detail {
	width:80%;
	margin:0 auto;
	margin-top:20px;
}
.btn_detail a {
	font-size:16px;
	padding:15px 0;
}
.btn_detail a span {
	display:none;
}
.content + .btn_detail {
	margin-top:30px;
}
}
*/

