@charset "utf-8";


/*===============================================================
	
	文字
	
===============================================================*/

body {
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}
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;
}
.text-bold {
  font-weight: bold;
}
.text-15rem {
  font-size: 1.5rem;
}
.text-26rem {
  font-size: 2.6rem;
}
.text-3rem {
  font-size: 3rem;
}

/* テキスト装飾 ----------------------- */

.heading00 {
  line-height: 1.4;
  font-weight: normal;
  padding: 0;
  font-size: 1.4rem;
  display:block;
}
.heading01 {
  line-height: 1.6rem;
  font-weight: bold;
  padding: 0 0 10px 1rem;
  border-bottom: 1px solid #000;
  margin-bottom: 3rem;
}
.heading02 {
  background-color: #0c3388;
  margin-bottom: 3rem;
  padding: 1.2rem;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
}
.heading03 {
  line-height: 1.4;
  font-weight: bold;
  padding: 0 0 10px 0.4rem;
  border-bottom: 2px solid #555;
  margin-bottom: 20px;
}
.heading04 {
  background-color: #0c3388;
  margin-bottom: 3rem;
  padding: 1.2rem;
  color: #ffffff;
  text-align: left;
  font-weight: bold;
}
.heading05 {
  line-height: 1.5;
  border-bottom: solid 1px #000;
  padding-bottom: 10px;
}

/* 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;
}


/*===============================================================
	
	画像
	
===============================================================*/

.fig img,
.fitimg img,
.fitimg video, 
.photo img {
	width:100%;
	height:auto;
}
.fig {
	border:solid 1px #ddd;
}
.borderimg {
	border:solid 1px #ddd;
}


/*===============================================================
	
	フロート
	
===============================================================*/

.clear {
	width:100%;
	overflow:hidden;
}
.clearboth {
	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;	}

.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;	}

.mb-6 { margin-bottom: 4rem; }
.pb-6 { padding-bottom: 4rem; }

.mt1rem { margin-top: 1rem; }
.mt15rem { margin-top: 1.5rem; }
.mt2rem { margin-top: 2rem; }
.mt25rem { margin-top: 2.5rem; }
.mt3rem { margin-top: 3rem; }
.mt35rem { margin-top: 3.5rem; }
.mt4rem { margin-top: 4rem; }
.mt45rem { margin-top: 4.5rem; }
.mt5rem { margin-top: 5rem; }
.mb1rem { margin-bottom: 1rem; }
.mb15rem { margin-bottom: 1.5rem; }
.mb2rem { margin-bottom: 2rem; }
.mb25rem { margin-bottom: 2.5rem; }
.mb3rem { margin-bottom: 3rem; }
.mb35rem { margin-bottom: 3.5rem; }
.mb4rem { margin-bottom: 4rem; }
.mb45rem { margin-bottom: 4.5rem; }
.mb5rem { margin-bottom: 5rem; }

.p10 { padding: 10px; }
.p20 { padding: 20px; }
.p30 { padding: 30px; }
.p1rem { padding: 1rem; }
.p15rem { padding: 1.5rem; }
.p2rem { padding: 2rem; }

.pt10 { padding-top: 10px; }
.pt20 { padding-top: 20px; }
.pt30 { padding-top: 30px; }
.pt40 { padding-top: 40px; }
.pt50 { padding-top: 50px; }
.pt60 { padding-top: 60px; }
.pb10 { padding-bottom: 10px; }
.pb20 { padding-bottom: 20px; }
.pb30 { padding-bottom: 30px; }
.pb40 { padding-bottom: 40px; }
.pb50 { padding-bottom: 50px; }
.pb60 { padding-bottom: 60px; }

.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; }






/*===============================================================
	
	リスト
	
===============================================================*/

.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;
}

/* SP向けレイアウトの指定：～736px localnav_link */
@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 */


/*=================================================================
  Navigation
==================================================================*/

.navigation ul.navbar-nav li.menu-item {
  color: #fff;
  line-height: 26px;
  padding: 20px 15px;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: .2s ease-in-out 0s;
}

/* org 
.navigation .navbar-light .navbar-nav .nav-item .nav-link:hover, .navigation .navbar-light .navbar-nav .nav-item .nav-link:active, .navigation .navbar-light .navbar-nav .nav-item .nav-link:focus {
  background: none;
  color: #28ABE3;
}

.navigation .navbar-light .navbar-nav .nav-item.active .nav-link {
  color: #28ABE3;
}
*/

.navigation .navbar-light .navbar-nav .nav-item .nav-link:hover, .navigation .navbar-light .navbar-nav .nav-item .nav-link:active, .navigation .navbar-light .navbar-nav .nav-item .nav-link:focus {
  background: none;
}

.navigation .navbar-light .navbar-nav .nav-item.active .nav-link {
  color: #28ABE3;
}


@media (max-width: 991px) {
  .navigation .menu-link {
    padding: 10px !important;
  }
}

@media (min-width: 992px) {
  /*
  .navigation .navbar-light .navbar-nav .nav-item .nav-link a:hover,
  .navigation .navbar-light .navbar-nav .nav-item .nav-link a:active,
  .navigation .navbar-light .navbar-nav .nav-item .nav-link a:focus,
  .navigation .navbar-light .navbar-nav .nav-item.active .nav-link a {
    color: #ffffff;
  }
  */
  .navigation .navbar-light .navbar-nav a {
    color: #ffffff;
  }
}

.sticky-header {
  background: #fff;
}
.navigation.sticky-header .navbar-light .navbar-nav a {
  color: #000000;
}


/*-------------------------------------------------------------
	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;
}

/* 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 */



/*===============================================================
	
	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;
}

