@charset "UTF-8";

/*-----------------------
 DEFAULT
 -----------------------*/
h1,h2,h3,h4,h5,ul,li,p{margin:0; padding:0;}

ul{
	list-style-type:none;
	clear:both;
}

body{
    background-color:#fff;
    color:#000;/*#3e3a39*/
    font-family: "游ゴシック",YuGothic,"Meiryo",Helvetica,Verdana,sans-serif;
    font-size: 14px;
    line-height: 1.6;
    position: relative;
    zoom: 1;
    height: 100%;
    margin: 0 auto;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
}

body.osMac {font-family: "游ゴシック",YuGothic,Helvetica,"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",sans-serif;}
body.osWin,
body.osOther{
    font-family: "游ゴシック",YuGothic,Helvetica,"Meiryo","メイリオ",Verdana,sans-serif;
}

.mincho{
    font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
}

.mincho-text{
    font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}


/*-----------------------
 Web Fonts
 -----------------------*/
@font-face {
    font-family: 'avenir-l';
    src: url('../fonts/Avenir-Light.eot');
    src: url('../fonts/Avenir-Light.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Avenir-Light.woff2') format('woff2'),
         url('../fonts/Avenir-Light.woff') format('woff'),
         url('../fonts/Avenir-Light.ttf') format('truetype'),
         url('../fonts/Avenir-Light.svg#avenir-l_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'avenir-m';
    src: url('../fonts/Avenir-Medium.eot');
    src: url('../fonts/Avenir-Medium.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Avenir-Medium.woff2') format('woff2'),
         url('../fonts/Avenir-Medium.woff') format('woff'),
         url('../fonts/Avenir-Medium.ttf') format('truetype'),
         url('../fonts/Avenir-Medium.svg#avenir-m_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'avenir-b';
    src: url('../fonts/Avenir-Black.eot');
    src: url('../fonts/Avenir-Black.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Avenir-Black.woff2') format('woff2'),
         url('../fonts/Avenir-Black.woff') format('woff'),
         url('../fonts/Avenir-Black.ttf') format('truetype'),
         url('../fonts/Avenir-Black.svg#avenir-b_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}


@font-face {
    font-family: 'Futura';
    src: url('../fonts/Futura.eot');
    src: url('../fonts/Futura.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Futura.woff2') format('woff2'),
         url('../fonts/Futura.woff') format('woff'),
         url('../fonts/Futura.ttf') format('truetype'),
         url('../fonts/Futura.svg#Futura_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Futura-Bold';
    src: url('../fonts/Futura-Bold.eot');
    src: url('../fonts/Futura-Bold.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Futura-Bold.woff2') format('woff2'),
         url('../fonts/Futura-Bold.woff') format('woff'),
         url('../fonts/Futura-Bold.ttf') format('truetype'),
         url('../fonts/Futura-Bold.svg#futura-b_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Futura-Light';
    src: url('../fonts/Futura-Light.eot');
    src: url('../fonts/Futura-Light.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Futura-Light.woff2') format('woff2'),
         url('../fonts/Futura-Light.woff') format('woff'),
         url('../fonts/Futura-Light.ttf') format('truetype'),
         url('../fonts/Futura-Light.svg#futura-l_oblique') format('svg');
    font-weight: normal;
    font-style: normal;
}

.avenir-l{font-family:'avenir-l';}
.avenir-m{font-family:'avenir-m';}
.avenir-b{font-family:'avenir-b';}

.futura{font-family:'Futura';}
.futura-b{font-family:'Futura-Bold';}
.futura-l{font-family:'Futura-Light';}

.wf-sawarabimincho{ font-family: "Sawarabi Mincho"; }


/*-----------------------
 メインコンテンツ
 -----------------------*/
.bg_text{
	margin:0;
	width:0px;
	text-indent:-9999px;
}

a{color:#000; text-decoration:none;}
a:hover{color:#000; text-decoration:underline;}

::selection{
	background:#45b6bd;
	color:#fff;
}
::-moz-selection{
	background:#45b6bd;
	color:#fff;
}

span.errmes{
	color:red;
	font-weight: bold;
    font-size: 14px;
}

div#mailFailed {
    text-align: center;
    background-color: #BA0909;
    padding-top: 10px;
    padding-bottom: 10px;
    position: fixed;
    z-index: 9999;
    width: 100%;
}

div#mailFailed a{
	color: white;
	font-weight: bold;
	text-decoration: underline;
}

.BCTarget{
	background-color: #f5f5f5;
}

.ask{
	color: red;
	font-size: 95%;
	padding-left: 5px;
}


.anyLinkTarget ~ aside{
    padding-top: 5px;
    font-size: 12px;
    color: #3e3a39;
}

.clearBothResponsive{
    clear: both;
}


@media (min-width: 768px){
    .clearBothResponsive{
        clear: none;
    }
}

@media (min-width: 992px){
}

@media (min-width: 1200px){
}


/*-----------------------
 flex
 -----------------------*/
.flex{
    display: flex;
    display: -webkit-flex;
    align-items: center;
	justify-content: space-around;
    align-content: stretch;
    max-width: 1500px;
    margin: 0 auto;
}

.flex.between{
    justify-content: space-between;
}

.flex.stretch{
	align-items: stretch;
}

.flex.wrap{
	flex-wrap: wrap;
}

.half{
	width: 50%;
}

/*-----------------------
 inview
 -----------------------*/
.inview{
	opacity: 0;
    -webkit-transition-property: all;
    transition-property: all;
    -webkit-transition-duration: 800ms;
    transition-duration: 800ms;
    -webkit-transition-timing-function: cubic-bezier(.6, 0, .3, 1);
    transition-timing-function: cubic-bezier(.6, 0, .3, 1);
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0);
}

.viewed{
	opacity:1 !important;
    -webkit-transform: translate3d(0, 0, 0) !important;
    transform: translate3d(0, 0, 0) !important;
}


/*-----------------------
 jquery-toggles
 -----------------------*/
.switchLang{
    width: 120px;
    height: 30px;
}

.toggle-off, .toggle-on {
    transition: all .1s ease-out;
    color: #fff;
    /*text-shadow: 1px 1px rgba(0,0,0,.1);*/
/*    box-shadow: inset 0 2px 0 rgba(255,255,255,.2), inset 0 0 0 1px rgba(0,0,0,.2), inset 0 -1px 1px rgba(0,0,0,.1), 0 1px 1px rgba(0,0,0,.2);*/
    font-size: 12px;
}

.toggle-on, .toggle-on.active {
    /*background: linear-gradient(#4894cd,#2852a6);*/
    background-color: #79d2dc;
}

.toggle-blob {
    background: linear-gradient(#fff,#b3b3b3);
    box-shadow: inset 0 2px 0 rgba(255,255,255,.2), inset 0 0 0 1px rgba(0,0,0,.2), inset 0 -1px 1px rgba(0,0,0,.1), 1px 1px 2px rgba(0,0,0,.2);
    border-radius: 3px;
}

.toggle-off, .toggle-off.active {
    /*background: linear-gradient(#737e8d,#3f454e);*/
    background-color: #efc63c;
}

@media (min-width: 768px){
  .toggle-off, .toggle-on {
      font-size: 14px;
  }
}



/*-----------------------
 LOADING
 -----------------------*/
#modal-loading-overlay{
    position: fixed;
    /*background-color: rgba(255, 255, 255, 1);*/
    background-color: #fff;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    z-index: 30000;
}

#modal-loading-item{
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 30001;
    text-align: center;
    margin-left: -140px;
    margin-top: -30px;
}

#modal-loading-item img{
    width:280px;
}


@media (min-width: 768px){
    #modal-loading-item img{
        width:350px;
    }
    #modal-loading-item{
        margin-left: -175px;
    }

}

@media (min-width: 992px){
}

@media (min-width: 1200px){
}


