﻿@import url(https://fonts.googleapis.com/css?family=Raleway:400,300,300italic,400italic,500,500italic,600,600italic,700,700italic);
@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700);
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, 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: inherit;
	font-size: 100%;
	vertical-align: baseline;
	font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
	font-family: 'Abel', sans-serif;
}
html {
	line-height: 1.3;
}

ol{
	list-style: none
}
table {
	border-collapse: collapse;
	border-spacing: 0
}
caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle
}
q, blockquote {
	quotes: none
}
q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none
}
a img {
	border: none
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block
}
p {
	font-size: 15px;
	line-height: 1.4em;
	padding-bottom: 15px;
	color: #414A52
}
h1 {
	font-size: 45px;
	font-weight: 300;
	line-height: 68px
}
h2 {
	font-size: 50px;
	font-weight: 600;
	margin: 7px 0 7px 0px;
	text-align: center;
	color: #FFFFFF;
}
h3 {
	color: #0078B6;
	clear: left;
	font-size: 22px;
	margin: 20px auto 15px auto;
	padding: 10px 0 15px;
	text-align: center;
}
h3 span.line {
	padding: 2px 2px;
	border-bottom-style: solid;
	border-bottom-width: 6px;
}
h4 {
	
}
.bold-italic {
	font-weight: 600;
	font-style: italic
}
.btn.primary {
	display: inline-block;
	font-size: 13px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #fff;
	background-color: #63C6EE;
	padding: 20px;
	text-decoration: none;
	line-height: 1
}
.btn.primary:hover {
	background-color: #71D5D2
}
.btn.secondary {
	display: inline-block;
	font-size: 13px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #63C6EE;
	border: 2px solid #63C6EE;
	padding: 15px 20px;
	text-decoration: none;
	line-height: 1
}
.btn.secondary:hover {
	color: #fff;
	background-color: #71D5D2;
	border-color: #71D5D2
}
.btn.secondary:focus {
	color: #fff;
	background-color: #63C6EE;
	border-color: #63C6EE
}
.text-muted {
	color: #A2A2A2
}
a.text-link {
	color: #fff;
	margin-left: 30px;
	display: inline-block;
	font-size: 13px;
	letter-spacing: 1px;
	text-transform: uppercase
}
a.text-link:focus {
	color: #fff
}
a.text-link:after {
	font-family: FontAwesome;
	content: "\f105";
	opacity: 0;
	-webkit-transition: all 300ms;
	-moz-transition: all 300ms;
	-ms-transition: all 300ms;
	-o-transition: all 300ms;
	transition: all 300ms
}
a.text-link:hover {
	color: #fff
}
a.text-link:hover:after {
	opacity: 1;
	margin-left: 10px
}
.has-padding {
	padding: 70px 0px 35px 0px;
}
.has-padding-half {
	padding: 35px 0px 20px 0px;
}
.has-padding-mb {
	padding: 0px 0 15px 0px;
}
.has-padding-mbl {
	padding: 0px 0 30px 0px;
}
.has-padding-mt {
	padding: 15px 0 0px 0px;
}
.has-padding-mtl {
	padding: 30px 0 0px 0px;
}
.alternate-bg {
	background-color: #AEE2F5
}
.alternate-bg2 {
	background-color: #C1F3E8
}
.alternate-bg3 {
	background-color: #E1E1E1
}
.footer-bg {
	background-color: #FFFFFF
}
ul.list{
	list-style: disc;
	margin: 10px 0px 10px 20px;
	font-size: 14px;
}
ul.list li{
	margin: 0px 0px 4px 0px;
}

@media �screen {
}

@keyframes vjs-spinner-spin {
100% {
transform:rotate(360deg)
}
}
@keyframes vjs-spinner-fade {
0% {
border-top-color:#73859f
}
20% {
border-top-color:#73859f
}
35% {
border-top-color:#fff
}
60% {
border-top-color:#73859f
}
100% {
border-top-color:#73859f
}
}
@-webkit-keyframes vjs-spinner-fade {
0% {
border-top-color:#73859f
}
20% {
border-top-color:#73859f
}
35% {
border-top-color:#fff
}
60% {
border-top-color:#73859f
}
100% {
border-top-color:#73859f
}
}

body {
	overflow-x: hidden
}
html, body {
	font-family: Raleway, Verdana, Arial, sans-serif;
	font-size: 15px;
	font-weight: 400;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	color: #414A52;
	-webkit-text-size-adjust: 100%
}
.group:after {
	display: table;
	clear: both;
	content: ''
}
.no-padding {
	padding: 0
}
.no-margin {
	margin: 0
}
a {
	-webkit-transition-timing-function: ease;
	transition-timing-function: ease;
	-webkit-transition-duration: 200ms;
	transition-duration: 200ms;
	color: #63C6EE
}
a:hover {
	text-decoration: none;
	color: #71D5D2
}
ul, ol {
	margin: 0;
	padding: 0
}
ul li {
}
input, textarea {
	outline: none
}
.wide {
	width: auto;
	max-height: 100%
}
.tall {
	max-width: 100%;
	height: auto
}
.bold {
	font-weight: 600
}
.italic {
	font-style: italic
}
.has-top-margin {
	margin-top: 50px
}
.carousel-cell {
	display: table;
	text-algin: center;
    vertical-align: middle; /*セル内で上下中央揃えにする*/
	width: 100%;
	height: 600px;
	background-position: center;
	background-size: cover;
	padding: 0px 0px 0px 0px
}

.wp1, .wp2, .wp3, .wp4, .wp5, .wp6, .wp7, .wp8, .wp9, .wp10 {
	visibility: hidden
}
.wp1 {
	-webkit-animation-delay: .5s;
	animation-delay: .5s
}
.wp2 {
	-webkit-animation-delay: .8s;
	animation-delay: .8s
}
.wp3 {
	-webkit-animation-delay: 1s;
	animation-delay: 1s
}
.bounceInLeft, .bounceInRight, .fadeInUp, .fadeInUpDelay, .fadeInDown, .fadeInUpD, .fadeInLeft, .fadeInRight, .bounceInDown, .fadeIn {
	visibility: visible
}
.header-nav-wrapper {
	position: relative;
	background-color: #fff
}
.header-nav-wrapper .logo {
	display: inline-block;
	padding: 30px 20px 26px 30px;
	text-align: left;
}
.header-nav-wrapper .logo img{
	max-width: 100%;
	height: auto;
}
	
.header-nav-wrapper .primary-nav-wrapper {
	float: right;
	-webkit-transition: all 300ms;
	transition: all 300ms
}
.header-nav-wrapper nav {
	display: inline-block;
	margin-right: 20px;
	padding: 20px 0
}
.header-nav-wrapper nav ul {
	display: inline-block;
	list-style:none;
}
.header-nav-wrapper nav ul li {
	display: inline-block;
	padding: 10px 20px;
	letter-spacing: 1px;
	text-transform: uppercase;
	border-right: solid 1px #E5E7E9
}
.header-nav-wrapper nav ul li:last-child {
	border-right: none
}
.header-nav-wrapper nav ul li a {
	font-weight: 600;
	position: relative;
	padding-bottom: 10px;
	text-decoration: none;
	color: #414A52;
	font-size: 17px;
}
.header-nav-wrapper nav ul li a:hover {
	color: #63C6EE
}
.header-nav-wrapper nav ul li a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	visibility: hidden;
	width: 100%;
	height: 2px;
	content: '';
	-webkit-transition: all .3s ease-in-out 0s;
	transition: all .3s ease-in-out 0s;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	background-color: #63C6EE
}
.header-nav-wrapper nav ul li a:hover:before {
	visibility: visible;
	-webkit-transform: scaleX(1);
	transform: scaleX(1)
}
.header-nav-wrapper .is-visible {
	visibility: visible;
	opacity: 1
}
.primary-nav-wrapper.open {
	visibility: visible;
	opacity: 1;
}

.nav-toggle {
	position: absolute;
	z-index: 999999;
	top: 50%;
	left: 50%;
	padding: 10px 29px 12px 0;
	cursor: pointer;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%)
}
.nav-toggle:focus {
	outline: none
}
.nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
	position: absolute;
	display: block;
	width: 30px;
	height: 3px;
	content: '';
	cursor: pointer;
	border-radius: 1px;
	background: #fff
}
.nav-toggle span:before {
	top: -10px
}
.nav-toggle span:after {
	bottom: -10px
}
.nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out
}
.nav-toggle.active span {
	background-color: transparent
}
.nav-toggle.active span:before, .nav-toggle.active span:after {
	top: 0
}
.nav-toggle.active span:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg)
}
.nav-toggle.active span:after {
	top: 10px;
	-webkit-transform: translatey(-10px) rotate(-45deg);
	transform: translatey(-10px) rotate(-45deg)
}

.navicon {
	position: absolute;
	top: 0;
	right: 0;
	visibility: hidden;
	width: 25px;
	height: 25px;
	padding: 0px;
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
	background-color: #63C6EE
}
.fixed {
	position: fixed;
	z-index: 999
}
header.hero {
	position: relative;
	display: table;
	width: 100%;
	height: 200px;
	max-height: 760px;
	padding: 0px
}

header.hero .hero-bg {
	display: table-cell;
	vertical-align: middle
}
header.hero .hero-bg .hero-intro-text {
	margin-top: 60px;
	padding-top: 25px;
	text-align: center;
	border-top: solid 1px rgba(255,255,255,0.25)
}
header.hero .hero-bg .hero-intro-text p {
	font-weight: 300;
	margin: 0;
	padding: 0;
	color: #fff
}
header.hero h1 {
	margin-top: 30px;
}
@-webkit-keyframes scroll-inner {
from {
margin-top:15%;
opacity:1
}
to {
margin-top:75%;
opacity:0
}
}

.latest-articles .sort {
	text-align: right
}
.latest-articles article span.featured-tag {
	font-size: 13px;
	position: absolute;
	z-index: 99;
	bottom: 10px;
	left: 10px;
	padding: 4px 10px;
	color: #fff;
	background-color: #63C6EE;
	-moz-border-radius: 40px;
	-webkit-border-radius: 40px;
	border-radius: 40px
}
.latest-articles article figure.has-overlay {
	height: 100%
}
.latest-articles article:hover h2:after {
	margin-left: 10px;
	opacity: 1
}
.latest-articles article:hover .has-overlay:after {
	background-color: rgba(255,255,255,0.4)
}
.latest-articles article ul.article-footer {
	padding-top: 15px;
	border-top: solid 1px #E5E7E9
}
.latest-articles article ul.article-footer li {
	font-size: 13px;
	display: inline-block
}
.latest-articles article ul.article-footer li.article-comments {
	float: right
}
.latest-articles img {
	margin: 0;
	padding: 0;
	-webkit-transition: all 300ms;
	transition: all 300ms
}
.latest-articles figcaption h2 {
	font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
	font-size: 18px;
	font-weight: 500;
	padding: 0px 0px 0px 0;
	margin: 8px 0px 2px 0px;
	color: #ED1E79
}
.latest-articles figcaption h2:after {
	font-family: FontAwesome;
	content: '\f105';
	-webkit-transition: all 300ms;
	transition: all 300ms;
	opacity: 0
}
.latest-articles article.article-post {
	position: relative;
	overflow: hidden;
	text-align: center;
	padding: 10px 0px;
}
.latest-articles article.article-post .article-image {
	position: relative;
	overflow: hidden;
	height: 225px;
	max-height: 250px;
	background-color: #000;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover
}
.latest-articles .has-overlay:after, .latest-articles .freebies .has-overlay:after {
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	content: '';
	-webkit-transition: background-color 300ms;
	transition: background-color 300ms;
	background-color: rgba(65,74,82,0.0)
}
.latest-articles select#inputArticle-Sort {
	font-size: 13px;
	width: 300px;
	margin-left: 25px;
	padding-bottom: 9px;
	-webkit-transition: all 300ms;
	transition: all 300ms;
	text-indent: .01px;
	text-overflow: '';
	color: rgba(65,74,82,0.5);
	border: none;
	border-bottom: solid 2px #63C6EE;
	background: url("../img/dd-arrow.png") no-repeat;
	background-color: none;
	background-position: 280px 5px;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none
}
.latest-articles select#inputArticle-Sort:focus {
	outline: none
}
.latest-articles figcaption p{
	margin-top: 5px;
	}
.latest-articles figcaption p:after {
}

footer p {
	color: #666
}
footer ul li {
	color: #666
}
footer ul li i {
	margin-right: 5px
}
footer ul li a {
	color: #666
}
footer ul li a:hover {
	color: #63C6EE
}
footer .footer-branding {
	margin-bottom: 40px
}
footer .footer-branding .footer-branding-logo {
	margin-bottom: 10px
}
footer .footer-nav {
	padding-top: 0px
}
footer .footer-nav ul.footer-primary-nav {
	display: inline-block;
	margin-bottom: 30px
}
footer .footer-nav ul.footer-primary-nav li {
	font-size: 18px;
	display: inline-block;
	margin-right: 50px
}
footer .footer-nav ul.footer-primary-nav li:last-child {
	margin-right: 0
}
footer .footer-nav ul.footer-share {
	display: inline-block;
	float: right
}
footer .footer-nav ul.footer-share>li {
	display: inline-block;
	margin-right: 50px
}
footer .footer-nav ul.footer-share>li:last-child {
	margin-right: 0
}
footer .footer-nav ul.footer-secondary-nav li {
	font-size: 14px;
	color: #8A9097;
	list-style-type:none
}

/* テーブル */
table.company {
    width: 100%;
    margin: 0 auto;
    border-collapse: separate;
    border-spacing: 0px 15px;
}
 
table.company th,
table.company td {
	padding: 10px 8px;
	background-color: #FFFFFF;
}
 
table.company th {
	background-color: #63C6EE;
	vertical-align: middle;
	text-align: center;
	width: 100px;
	overflow: visible;
	position: relative;
	color: #fff;
	font-weight: normal;
	white-space: nowrap;
	line-height: 1.3em;
}
 
table.company th:after {
    left: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(136, 183, 213, 0);
    border-left-color: #63C6EE;
    border-width: 10px;
    margin-top: -10px;
}
/* firefox */
table.company td {
	background-color: #F1F1F1;
	width: 360px;
	padding-left: 20px;
	line-height: 1.4em;
}

/* 画面外にいる状態 */
.fadein {
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 500ms;
    }
 
/* 画面内に入った状態 */
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }
	
.fgimg{
	max-width: 100%;
	height: auto;
	}

/* ボタン */
.btn {
  border: none;
  font-size: 15px;
  font-weight: normal;
  line-height: 1.4;
  border-radius: 4px;
  padding: 10px 20px 10px 15px;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-transition: border 0.25s linear, color 0.25s linear, background-color 0.25s linear;
          transition: border 0.25s linear, color 0.25s linear, background-color 0.25s linear;
}
.btn:hover,
.btn:focus {
  outline: none;
  color: #ffffff;
}
.btn:active,
.btn.active {
  outline: none;
  box-shadow: none;
}
.btn:focus:active {
  outline: none;
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  background-color: #bdc3c7;
  color: rgba(255, 255, 255, 0.75);
  opacity: 0.7;
  filter: alpha(opacity=70);
  cursor: not-allowed;
}
.btn [class^="fui-"] {
  margin: 0 1px;
  position: relative;
  line-height: 1;
  top: 1px;
}
.btn-xs.btn [class^="fui-"] {
  font-size: 11px;
  top: 0;
}
.btn-hg.btn [class^="fui-"] {
  top: 2px;
}
.btn-default {
  color: #ffffff;
  background-color: #bdc3c7;
}
.btn-default:hover,
.btn-default.hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #ffffff;
  background-color: #cacfd2;
  border-color: #cacfd2;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background: #a1a6a9;
  border-color: #a1a6a9;
}
.btn-default.disabled,
.btn-default[disabled],
fieldset[disabled] .btn-default,
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled.hover,
.btn-default[disabled].hover,
fieldset[disabled] .btn-default.hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled:active,
.btn-default[disabled]:active,
fieldset[disabled] .btn-default:active,
.btn-default.disabled.active,
.btn-default[disabled].active,
fieldset[disabled] .btn-default.active {
  background-color: #bdc3c7;
  border-color: #bdc3c7;
}


@media screen and (max-width: 1200px) {
.header-nav-wrapper .logo {
}
}

@media screen and (max-width: 1024px) {
.header-nav-wrapper .logo {
	padding: 31px 5px 25px 15px;
}
}

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

/*ハンバーガーメニュー*/
.primary-nav-wrapper {
	position: fixed;
	z-index: 99;
	top: 0;
	left: 0;
	visibility: hidden;
	width: 100%;
	height:auto;
	padding: 0px 0px 30px 0px;
	opacity: 0;
	background: #63C6EE;
}
.navicon {
	visibility: visible
}
.header-nav-wrapper nav {
	width: 100%;
	padding: 50px 0 0;
	text-align: center
}
.header-nav-wrapper nav ul {
	display: block;
	margin: 0;
	padding: 0;
}
.header-nav-wrapper nav ul li {
	display: block;
	margin: 0;
}
.header-nav-wrapper nav ul li a {
	display: block;
	margin: 0;
	padding: 0px 0px 18px 0px;
	color: #fff;
	font-size: 22px;
}
.header-nav-wrapper nav ul li a:hover {
	color: #e7e25f
}
.header-nav-wrapper nav ul li a:before {
	display: none
}
/*ハンバーガーメニューここまで*/
.navicon {
	padding: 30px 30px;
	background-color: #63C6EE
}
.header-nav-wrapper .logo {
	padding: 20px 5px 14px 8px;
}
.carousel-cell {
	height: 400px;
}
header.hero h1 img{
	width: 440px;
}
.has-padding {
	padding: 60px 0px 30px 0px
}
}
@media screen and (max-width: 768px) {

.has-padding {
	padding: 50px 0px 25px 0px
}
h2 {
	font-size: 45px;
}
}

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

.header-nav-wrapper nav ul li a {
	padding: 0px 0px 13px 0px;
	font-size: 18px;
}
.carousel-cell {
	height: 270px;
}
header.hero h1 img{
	width: 300px;
}
.header-nav-wrapper .logo {
	width: 320px;
	padding: 22px 5px 17px 12px;
}
.has-padding {
	padding: 40px 0px 20px 0px
}
h2 {
	font-size: 42px;
}
h3 {
	font-size: 18px;
	margin: 10px auto 5px auto;
}
footer .footer-nav ul.footer-primary-nav li {
	font-size: 18px;
	margin-right: 22px
}
ul.footer-secondary-nav li{
	font-size: 12px;
	}
}

@media screen and (max-width: 480px) {
p{
	font-size: 13px;
}
ul.list{
	font-size: 12px;
}
table.company {
font-size: 13px;
}
.latest-articles figcaption h2 {
	font-size: 16px;
}
footer .footer-nav ul.footer-primary-nav li {
	font-size: 16px;
	margin-right: 18px
}
ul.footer-secondary-nav li{
	font-size: 10px;
	}
.has-padding {
	padding: 35px 0px 15px 0px
}
h2 {
	font-size: 36px;
}
	}
	
	
@media screen and (max-width: 360px) {
p{
	font-size: 13px;
}
ul.list{
	font-size: 11px;
}
table.company {
font-size: 13px;
}
.header-nav-wrapper .logo {
	width: 230px;
	padding: 23px 5px 18px 5px;
}
.carousel-cell {
	height: 280px;
}
header.hero h1 img{
	width: 300px;
}
.has-padding {
	padding: 25px 0px 10px 0px
}
h2 {
	font-size: 34px;
}
	}
	
@media screen and (max-width: 240px) {
	p{
	font-size: 11px;
}
ul.list{
	font-size: 10px;
}
table.company {
font-size: 11px;
}
.header-nav-wrapper .logo {
	width: 160px;
	padding: 23px 5px 18px 5px;
}
.carousel-cell {
	height: 240px;
}
}


/* hover時に画像を透過させる */
.article-post img {
	transition: 0.6s ;
}

.article-post img:hover {
	opacity: 0.6 ;
}  

/* PAGETOP */
/*PCで見た時*/
.pagetop {
    position: fixed;
    bottom: 20px;
    right: 20px;
}
.pagetop a{
	font-size: 26px;
	background: #999;
	border-radius: 5px;
	padding: 20px;
	color: #FFF;
}
.pagetop a:hover {
    text-decoration: none;
    background: #CCC;
}

/*スマホで見た時*/
@media screen and (max-width: 640px) {
.pagetop {
    bottom: 10px;
    right: 10px;
}
.pagetop a{
	font-size: 16px;
	padding: 10px;
}
}
