﻿@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: 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
}
p.copy {
	font-size: 22px;
	font-weight: 600;
	line-height: 1.4em;
	color: #ea78aa;
	padding: 0px 0px 0px 7px;
	margin: 18px 0px 0px 7px;
	text-align: center;
}
p.text {
	font-size: 15px;
	line-height: 1.7em;
	padding-bottom: 15px;
	color: #414A52
}

h1{
}

h2{
	position: relative;
	margin: 1.2em 0 0em;
	padding: 0.5em 0.5em 0.4em;
	background: #ea78aa;
	color: #fff;
	font-size: 1.8em;
	font-weight: 500;
	text-align: center;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
}
h2:after{
    position: absolute;
    bottom: -15px;
    left: 10%;
    z-index: 90;
    margin-left: -5px;
    border-top: 15px solid #ea78aa;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 0;
    content: "";
}

h3 {
	font-size: 18px;
	font-weight: 600;
	margin: 15px auto 10px auto;
	color: #ea78aa;
	text-align: center
}
h3 span.line {
	padding: 6px 2px;
	border-bottom: 5px solid #ea78aa;
}
.black{ color: #333333;}
h3 span.linebl {
	padding: 6px 2px;
	border-bottom: 5px solid #333333;
}
h3.fm {
	text-align: left;
	border-bottom: 2px solid #ea78aa;
	font-size: 116%;
	padding: 3px 2px;
}
h4 {
	padding: .5em .75em;
	background: -webkit-repeating-linear-gradient(45deg, #3498db, #3498db 5px, #69b4e6 5px, #69b4e6 10px);
	background: repeating-linear-gradient(45deg, #3498db, #3498db 5px, #69b4e6 5px, #69b4e6 10px);
	color: #444444;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, .3);
	text-align: center;
	border-bottom: 3px solid #555555;
}
.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: #ea78aa;
	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: #ea78aa;
	border: 2px solid #ea78aa;
	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: #ea78aa;
	border-color: #ea78aa
}
.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: 35px 0px 70px;
}
.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-mt2 {
	padding: 35px 0 0px 0px;
}
.has-padding-mtl {
	padding: 30px 0 0px 0px;
}
.footer-bg {
	background-color: #E7E7E7
}
ul.list{
	list-style: disc;
	margin: 0px 0px 35px 20px;
	font-size: 14px;
}
ul.list li{
	margin: 0px 0px 4px 0px;
}
.pmb {
	padding: 0px 0px 15px 0px;
}
mt20{ margin-top: 20px;}

@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;
	background-image: url(../img/bg_tile.png)
}
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: #ea78aa
}
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
}

.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 {
	width: 100%;
	background-color: #fff
}
.header-nav-wrapper .logo {
	display: inline-block;
	padding: 0px 10px 0px 40px;
	text-align: left;
	clear: left;
	float: 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: 0px;
	padding: 40px 0 0px;
}
.header-nav-wrapper nav ul {
	display: inline-block;
	list-style:none;
}
.header-nav-wrapper nav ul li {
	display: inline-block;
	padding: 10px 15px 10px 38px;
	letter-spacing: 1px;
	text-transform: uppercase;
	background-image:url(../img/ico_heart.png);
	background-repeat: no-repeat;
	background-position: 0px 5px;
}
.header-nav-wrapper nav ul li a,.header-nav-wrapper nav ul li.stay {
	font-weight: 600;
	position: relative;
	padding-bottom: 10px;
	text-decoration: none;
	color: #414A52;
	font-size: 15px;
}
.header-nav-wrapper nav ul li.stay{
	color: #ea78aa
}
.header-nav-wrapper nav ul li a:hover{
	color: #ea78aa
}
.header-nav-wrapper nav ul li a:before {
	position: absolute;
	bottom: 0;
	left: 0;
	visibility: hidden;
	width: 100%;
	height: 4px;
	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: #ea78aa
}
.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 18px 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: 20px;
	height: 3px;
	content: '';
	cursor: pointer;
	background: #fff
}
.nav-toggle span:before {
	top: -7px
}
.nav-toggle span:after {
	bottom: -7px
}
.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: 20px;
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
	background-color: #A0D92F
}
.fixed {
	position: fixed;
	z-index: 999
}

@-webkit-keyframes scroll-inner {
from {
margin-top:15%;
opacity:1
}
to {
margin-top:75%;
opacity:0
}
}
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: #ea78aa
}
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;
	font-weight: 600;
}
footer .footer-nav ul.footer-primary-nav li {
	font-size: 14px;
	display: inline-block;
	margin-right: 20px
}
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 {
	font-size: 12px;
	color: #8A9097;
	list-style-type: none
}
footer .footer-secondary-nav li {
	font-size: 10px;
	color: #8A9097;
	list-style-type: none
}

/* テーブル */
table.company {
	width: 100%;
	margin: -20px auto 0;
	border-collapse: separate;
	border-spacing: 0px 10px;
}
 
table.company th,
table.company td {
	padding: 10px 8px;
	background-color: #FFFFFF;
}
 
table.company th {
	background-color: #ea78aa;
	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: #ea78aa;
    border-width: 10px;
    margin-top: -10px;
}
/* firefox */
table.company td {
	background-color: #FFFFFF;
	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;
}

ul.download{
	margin: 25px auto 10px;
	width: 100%;
	text-align: center;
	}
ul.download li{
	list-style: none;
	display: inline-block;
	margin: 0px 10px;
	}

/* hover時に画像を透過させる */
img {
	transition: 0.6s ;
}

img a:hover {
	opacity: 0.6 ;
}  

/* 動画関連 */
.youtube {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	background-color:#000;
	height: 0;
	overflow: hidden;
	margin-top: 0px;
	margin-bottom: 20px;
 }
 .youtube #play_btn {
	position: absolute;
	width: 100%;
	cursor : pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
 }
 
 .youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
 }

 .content {
	width: 100%;
}  


/*背景色*/
.bgc01{
	background-color: #DAEFFF;
}
.bgc02{
	background-color: #EFE5F7;
}
.bgc03{
	background-color: #FFE3E8;
}
.bgc04{
	background-color: #FFF1D5;
}
.bgc05{
	background-color: #DBFFE4;
}
.heart{
	background-image: url(../img/heart.png);
	background-position: 50% 50%; }


/*gridのgutter調整*/
.row-0{
    margin-left:0px;
    margin-right:0px;
    }
.row-10{
    margin-left:-5px;
    margin-right:-5px;
    }
.row-20{
    margin-left:-10px;
    margin-right:-10px;
    }

img.explain{ margin: 50px auto 0px auto;}

@media screen and (max-width: 1200px) {
}

@media screen and (max-width: 1024px) {
}

@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: #ea78aa;
}

.navicon {
	visibility: visible
}
.header-nav-wrapper nav {
	width: 100%;
	padding: 46px 10px 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 {
	background : none;
}
.header-nav-wrapper nav ul li a,.header-nav-wrapper nav ul li.stay {
	display: block;
	margin: 0;
	padding: 0px 0px 18px 0px;
	color: #fff;
	font-size: 18px;
}
.header-nav-wrapper nav ul li.stay {
	margin: 10px 0px 0px 20px;
}
.header-nav-wrapper nav ul li a:hover {
	color: #c0e86e
}
.header-nav-wrapper nav ul li a:before {
	display: none
}
.header-nav-wrapper nav ul li.stay{
	color: #c0e86e
}
/*ハンバーガーメニューここまで*/

.header-nav-wrapper .logo {
	width: 100%;
	padding: 30px 0px 8px 0px;
	text-align: center;
}
h2{
	font-size: 1.5em;
}
.mobilen{ margin-top: 0px;}
img.explain{ margin: 30px auto 0px auto}
}
@media screen and (max-width: 768px) {
	
h2{
	font-size: 1.7em;
}
.has-padding-half {
	padding: 20px 0px 10px 0px;
}
img.topmenu{ width: 90%;}
img.explain{ 
margin: 0px auto; width: 50%;}
.has-padding-mt2 {
	padding: 35px 0 30px 0px;
}
}

@media screen and (max-width: 640px) {

h2{
	font-size: 1.4em;
}
.header-nav-wrapper .logo img{
	width: 200px;
	height: auto;
}
}

@media screen and (max-width: 480px) {
h2{
	font-size: 1.2em;
}
h3 {
	font-size: 15px;
}
img.explain{ width:60% ;}
.mobilen{ width: 80%;}
img.explain2{ width: 75%;}
.chara{ width: 75%;}
ul.download li{
	margin: 0px 0px;
	}
ul.download img{ width: 90%;}
p.text {
	font-size: 14px;
	line-height: 1.6em;
}
table.company {
font-size: 14px;
}
	}
	
@media screen and (max-width: 400px) {
}
@media screen and (max-width: 360px) {
	}
	
@media screen and (max-width: 240px) {
}

/* PAGETOP */
/*PCで見た時*/
.pagetop {
    position: fixed;
    bottom: 20px;
    right: 20px;
}
.pagetop a{
	font-size: 22px;
	background: #999;
	border-radius: 5px;
	padding: 18px 20px 20px 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: 8px 10px 10px 10px;
}
}

.plus_div{
  text-align:center;padding:20px;
}
img.Character{
  background-color:#fff;
  margin-bottom:15px;
}