/* ============================== common ============================== */
.v3-text_Titles{
    font-size:46px;
    font-weight: 800;
    margin: 0 auto .8em 0;
    line-height: 1.2em;
}
@media only screen and (max-width: 599px) {
.v3-text_Titles{
    font-size:2em;
}
}
.v3-textlink{
    font-size: 18px;
    line-height:18px;
    font-weight: 600;
    text-decoration: none;
    display: flex;
    align-items: center;
}
@media only screen and (max-width: 599px) {
.v3-textlink{
    font-size: 16px;
    line-height:16px;
}
}
.v3-textlink-blue{
    color:#3192CE;
}
.v3-textlink::after{
    content: "";
    background: url(../img/v3common/arrow_black.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 10px;
    height: 16px;
    display: inline-block;
    padding-left:.8em;
}
.v3-textlink-blue::after{
    content: "";
    background: url(../img/v3common/arrow_blue.svg);
    background-size: auto;
    background-position: center;
    background-repeat: no-repeat;
    width: 10px;
    height: 16px;
    display: inline-block;
}
.v3-label-White{
    background:#fff;
    border-radius: 4px;
    padding:6px 44px;
    line-height:1em;
    color:#4C5B5C;
    font-weight: 600;
    font-size:12px;
}
.v3-text-bold a{
    text-decoration: none;
}
.v3-text-bold{
    font-weight: 600;
}
.v3-flex-left{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    position: relative;
}
@media only screen and (max-width: 599px) {
.v3-flex-left{
    display: block;
}
}
.v3-flex-center{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: relative;
}
.v3-flex-lr{
    display: flex;
    flex-wrap: wrap;
    justify-content:space-between;
    align-items: center;
    position: relative;
}
.v3-flex-right{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    position: relative;
}
.v3-inner996{
    width:82%;
    max-width:996px;
    margin:0 auto;
}
@media only screen and (max-width: 599px) {
.v3-inner996{
    width:92%;
}
}
.v3-innerfull{
    width:100%;
    position: relative;
}
@media only screen and (max-width: 599px) {
.v3-innerfull{
    width:100%;
    margin:0 auto;
}
}
.v3-button-blue{
    background:#3192CE;
    color:#fff;
    font-weight: 600;
    font-size:14px;
    padding:1em 4em;
    border-radius: 4px;
    margin:40px auto 70px;
    text-decoration: none;
    box-shadow:0px 0px 2px 2px rgba(0,0,0,0.1);
    min-width: 260px;
    text-align: center;
    display: inline-block;
}
.v3-button-white{
    background:#fff;
    color:#3192CE;
    border:2px solid #3192CE;
    font-weight: 600;
    font-size:14px;
    padding:1em 4em;
    border-radius: 4px;
    margin:48px auto 92px;
    text-decoration: none;
    box-shadow:0px 0px 2px 2px rgba(0,0,0,0.1);
    min-width: 260px;
    text-align: center;
    display: inline-block;
}
@media only screen and (max-width: 599px) {
.v3-button-blue,
.v3-button-white{
    margin:40px auto 50px;
}
}
.bgcolor-gray{
    background:#efefef;
}
.bgcolor-bluegradation {
    background: -moz-linear-gradient(top, #0794D3, #07ADCE);
    background: -webkit-linear-gradient(top, #0794D3, #07ADCE);
    background: linear-gradient(to bottom, #0794D3, #07ADCE);
}
.bgcolor-bluegradation .v3-headline2{
    color:#fff;
}
.dates{
    font-size:12px;
    color:#111;
}
.v3-recommend{
    display: flex;
    flex-wrap: wrap;
    width:100%;
    border-top:1px solid #ccc;
    align-items: baseline;
}
@media only screen and (max-width: 599px) {
.v3-recommend{
    justify-content: space-between;
}
}
.v3-recommend h3{
    width:100%;
    font-size:20px;
}
@media only screen and (max-width: 599px) {
.v3-recommend h3{
    font-size:16px;
}
}

/* ============================== header ============================== */
.v3-Header{
    width:100%;
    height:auto;
    padding:1em;
    background:#fff;
    position: relative;
    letter-spacing:.08em;
}
.v3-Header_logoWrap{
    width: 60%;
    text-align: center;
    margin: 0 auto;
}
.v3-Header_logo{
    padding: 0;
    margin: 0;
    height:33px;
}
.v3-Header_logo img{
    height:100%;
}
.v3-Header_about{
    height:50px;
    position: absolute;
    right:5em;
    top:1.5em;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    line-height:33px;
}
.v3-Header_hum{
    height:21px;
    position: absolute;
    right:1em;
    top:1.4em;
    z-index:100;
}
.v3-Header_hum img{
    height:100%;
}

.v3-Header_hum.active{
    background:url("../img/v3common/close.svg");
    background-size:contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: fixed;
}
.v3-Header_hum.active img{
    opacity:0;
}
.v3-Header_nav{
    width:40%;
    max-width:280px;
    border-radius: 4px;
    box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.1);
    position: absolute;
    top: 3em;
    right: 1em;
    z-index:100;
    background:#fff;
}
.v3-nav_logoWrap{
    display: none;
}
@media only screen and (max-width: 599px) {
.v3-nav_logoWrap{
    width:60%;
    display: block;
}
.v3-nav_logoWrap img{
    width:100%;
}
}
@media only screen and (max-width: 599px) {
.v3-Header_nav{
    max-width:100%;
    width:100%;
    height:100vh;
    background:rgba(255,255,255,0.98);
    top:0;
    right:0;
    position: fixed;
    z-index: 99;
    padding:24px;
}
}
@media only screen and (max-width: 599px) {
.v3-Header_about {
    height:auto;
    position: static;
    line-height:1em;
    
    /* height: 50px; */
    /* position: absolute; */
    /* right: 5em; */
    /* top: 0; */
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    /* line-height: 33px; */
    text-align: center;
    width: 100%;
    margin-top: 1em;
    display: none;
}
}
.v3-Header_nav ul{
    list-style: none;
    margin:0;
    padding:24px 0;
}
@media only screen and (max-width: 599px) {
.v3-Header_nav ul{
    padding:12px 0 24px;
}
}
.v3-Header_nav ul li{
    padding:0 24px;
    line-height: 1.6em;
}
@media only screen and (max-width: 599px) {
.v3-Header_nav ul li{
    padding:0;
}
}
.v3-Header_nav ul a{
    text-decoration: none;
    font-weight: 600;
    line-height:2.2em;
}
@media only screen and (max-width: 599px) {
.v3-Header_nav ul a{
    line-height:2.6em;
    font-size:16px;
}
}
.v3-nav_name{
    padding-bottom:1em !important;
    color:#707070;
    font-weight: 500;
}
.v3-nav_borderTop{
    border-top:1px solid #ccc;
    margin-top:1em;
    padding-top:1em !important;
}
.v3-Header .loggedin-ul{
    display: none;
}
.v3-Header .notloggedin-ul{
    display: block;
}
.v3-Header.loggedin .loggedin-ul{
    display: block;
}
.v3-Header.loggedin .notloggedin-ul{
    display: none;
}
.v3-Header .notloggedin-ul li{
    margin:0.5em 0;
}
.v3-Header .notloggedin-ul .register a{
    background:#3192CE;
    color:#fff;
    margin:1%;
    border-radius: 4px;
    display: block;
    text-align: center;
    padding: .2em 1em;
}
.v3-Header .notloggedin-ul .login a{
    border:2px solid #3192CE;
    color:#3192CE;
    margin:1%;
    border-radius: 4px;
    display: block;
    text-align: center;
    padding: .2em 1em;
}
.v3-Header .notloggedin-ul .login{
    margin-bottom:2em;
}
.v3-Header .notloggedin-ul .about{
    margin:0;
    line-height: 1em;
    font-size: .8em;
    text-align: center;
}
@media only screen and (max-width: 599px) {
.v3-Header .notloggedin-ul .about{
    text-align:left;
}
}

.sw-infoMessage_Error { padding: .5em 1em; text-align: center; background: #f6d2d2; border: 1px solid #D12B2B; color: #D12B2B; font-weight: 600; font-size: 14px; margin: 2em 0; }

.sw-infoMessage_Error p { margin: 0; }

.sw-infoMessage_Success { padding: .5em 1em; text-align: center; background: #BDE6D5; border: 1px solid #25AC73; color: #1c8257; font-weight: 600; font-size: 14px; margin: 2em 0; }

.sw-infoMessage_Success p { margin: 0; }

.sw-Fade_Message {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-delay: 5s;
    animation-delay: 5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    position: absolute;
    padding: 2em 0;
    margin: 0; top: 0;
    width: 100%;
    z-index: 1000; }

@-webkit-keyframes fadeOut { 0% { opacity: 1;
    visibility: visible;
    z-index: 100; }
    100% { opacity: 0;
        visibility: hidden;
        z-index: -1;
        display: none; } }

@keyframes fadeOut { 0% { opacity: 1;
    visibility: visible;
    z-index: 100; }
    100% { opacity: 0;
        visibility: hidden;
        z-index: -1;
        display: none; } }