﻿/*===========================================================
HEADER MAIN-NAV　--ヘッダー・ナビ
lead-contents　--ヘッダー下のリードエリア
SECTION　--セクションの共通設定
それ以降は各セクションごとの設定
===========================================================*/

/* GENERAL STYLES
================================================== */
html {
    height:100%;
    margin: 0 auto;
    position: relative;
    overflow-x: hidden;
}

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-size:18px;
    line-height: 1.8em;
    font-family: "游ゴシック体", "游ゴシック", "Yu Gothic", 'Hiragino Sans', 'ヒラギノ角ゴシック', sans-serif;
    color:#222;
    margin:0;
    padding:0;
    height:100%;
    width:100%;
    -webkit-font-smoothing:antialiased;
    -webkit-text-size-adjust:100%;
    word-break: break-word;
    word-wrap: break-word;
    position: relative;
    overflow-x: hidden;
}

ul li {
    display:inline-block;
    list-style:none;
}

img{width:100%;}

.wrapper {
    z-index:100;
    position:relative;
    background:#fff;
}


a{text-decoration:none; transition: .3s;}

a:hover{opacity:0.6; transition: .3s;}

/*テキストスタイル*/
.center{text-align:center!important;}
.fw-b{font-weight: bold;}

.textLink{
    font-size:18px;
    font-weight: 600;
    color:rgb(66, 69, 228);
    text-align: center;
    margin-top: 30px;
    text-decoration: underline;
}
.textLink a, .textLink a:link, .textLink a:active{color:rgb(66, 69, 228); text-decoration: underline;}

.underline{text-decoration: underline;}

/*レスポンシブ*/
.pc-none{display:none;}


/*HEADER MAIN-NAV
================================================== */
/* header */
#top-head {
    width: 100%;
    line-height: 1;
    z-index: 500;
    background: #fff;
    position: absolute;
    transition: .5s;
    top:-140px;
    padding-top:140px;
    box-shadow:0px 3px 3px rgba(0,0,0,0.2);
}

/* Fixed */
#top-head.fixed {
    padding-top: 280px;
    background: rgba(255,255,255,.95);
    transition: .5s;
}

#top-head .inner {
    position: relative;
	padding-top: 0px;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

h1.header_tit {
    width:11%;
    background:#0A108E;
    margin:0;
    position: relative;
    z-index: 99;
}
h1.header_tit a{
    display: inline-block;
    font-size: 1vw;
    color: #fff;
    font-weight: 600;
    text-align: left;
    line-height: 1.2em;
    position: absolute;
    top: 25%;
    left: 10px;
    z-index: 1;
}
h1.header_tit span{font-weight: 300;}

h1.header_tit:after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #0A108E;
    transform: skew(-10deg, 0);
    position: absolute;
    z-index: -1;
    top: 0;
    right: -10px;
}

/*ナビメニュー*/
#global-nav{
    margin:0 auto;
    padding-top:20px;
    padding-left:10px;
}


#global-nav ul li {
    display: inline-block;
    margin-bottom: 5px;
}
#global-nav ul li a {
    color:#333;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 0.95vw;
    font-weight: 800;
    padding:0 0.2vw;
}

.snsListCont{text-align: center;}
.snsListCont li{margin:0 10px;height:25px;}

.snsList{
    height:20px;width:auto;
    padding:0px;
    vertical-align: middle;
}
.snsList img{
    height:100%;width:auto;
}

#global-nav ul li a:hover{opacity: 0.8;}

.navRight{
    text-align: right;
    padding-top: 10px;
    padding-right: 10px;
    width:385px;
}
.navRight>*{
    display: inline;
    width: auto;
}

.navRight-top{
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

/*コンタクトボタン*/
.btnTel a{ 
    display: inline-block;
    color:#EA274A;
    font-weight: bold;
    font-size: 15px;
    letter-spacing: -0.05em;
    border:2px solid #EA274A;
    border-radius:2px;
    padding:2px 15px;
}

.btnTel a img{
    display: inline-block;
    width: 20px;
    height: 23px;
    vertical-align: middle;
    margin-right: 2px;
}

.btnContact a{
    display: inline-block;
    max-width:530px;
    width:70%;
    background: #EA274A;
    color:#fff;
    font-weight: bold;
    font-size: 15px;
    letter-spacing: -0.05em;
    border-radius:2px;
    padding:8px 15px;
    margin:0 auto;
}

/*ヘッダーにある場合*/
.navRight-top .btnTel a{font-size:15px;}
.navRight-top .btnContact a{
    max-width:none;
    width:auto;
    font-size: 14px;
}

.navRight-bottom{padding-top: 5px;}
.navRight-bottom p{
    font-size: 12px;
    padding: 5px 0;
    line-height: 1.2em;
}


@media screen and (max-width:1200px){
    /*HEADER MAIN-NAV
    ================================================== */
    .sp_header{width:100%;}

    /*ナビメニュー*/
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: 0px;
        right:-60%;
        width: 60%;
        text-align: center;
        background: rgba(255,255,255,0.98);
        padding-top:50px;
        padding-bottom: 50px;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
        z-index: 900;
    }

    #global-nav ul {
        display: block;
        padding:0px;
        margin:0px;
    }

    #global-nav ul li {
        display:block;
        text-align: center;
        z-index: 1000;
        font-size:16px;
    }

    #global-nav ul li a {
        padding: 30px 0;
        font-size:16px;
    }

    #top-head #global-nav ul li.snsList{
        display: inline-block;
    }
    #top-head #global-nav ul li.snsList a{display: block;padding:0;}
    #top-head #global-nav ul li.snsList a img{
        height:28px;width:auto;
    }

    #top-head .inner{
        justify-content: left;
    }

    .navRight{
        margin-left:20px;
    }

    /* Fixed */
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        padding: 20px 0;
    }

    /* Toggle Button */
    #nav-toggle {
        display: block;
        position: absolute;
        width: 30px;
        height: 45px;
        right: 0px;
        top: 20px;
        cursor: pointer;
        z-index: 101;
    }
    #nav-toggle div {
        position: relative;
    }
    #nav-toggle span {
        display: block;
        position: absolute;
        height: 4px;
        width: 100%;
        background: #0a108e;
        left: 0;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
    }
    #nav-toggle span:nth-child(1) {top: 0;}
    #nav-toggle span:nth-child(2) {top: 10px;}
    #nav-toggle span:nth-child(3) {top: 20px;}
    .big-background-single {z-index: 1000;}


    #mobile-head {
        background: #fff;
        width: 100%;
        z-index: 999;
        position: absolute;
        top:0;
    }


    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle{position: fixed;}
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
    
}/*media query 1300px*/


.mainv{margin-top: 75px;}

/*skick*/
.slick-dotted.slick-slider{margin-bottom:0 !important;}
.slick-dots{bottom:20px !important;}

/* SECTION
================================================== */

.contBlock{
    overflow: hidden;
    width: 100%;
    padding: 70px 0 100px;
    background:#fff;
}

.contInner{
    width:100%;
    padding:30px 0px;
    position: relative;
}


.contInner>*{
    max-width: 1200px;
    width:90%;
    margin:0 auto;
}

.flexBox_col02{
    display: flex;
    justify-content: space-between;
}
.flexBox_col02>*{width:45%;}

/*見出し*/
h2 {
    color: #222;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
    padding:0px 0px 68px;
    text-align: center;
    text-transform:uppercase;
}
h2 span{
    display: block;
    font-size:17px;
    line-height: 1;
    color:#1E53CB;
    font-family: 'Kaisei Tokumin', serif;
    margin-top: 25px;
}

.contInner_inner{
    margin-top: 50px;
}
h3{
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    font-size:24px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 40px !important;
}

.small{font-size: 15px;}

.wrapper.single{margin-top: 80px;}
.single h2 {padding-bottom: 0;}

/*ジム紹介
================================================== */
#about .contInner{
    background: url(../img/bg01.png) no-repeat;
    background-size:cover;
}

.about_txt{
    text-align: center;
    font-size:20px;
    line-height: 1.6;
    font-weight: 600;
    margin-bottom: 50px;
}
.boldtext01{
    font-size:22px;
    font-weight: 600;
    text-align: center;
}


/*-------- コンテンツのスタイル --------*/
.liststyle1{
    list-style: none;
    width: 100%;
    margin: 0 auto 45px auto;
    text-align: left;
}

.liststyle1 p {text-align: left;}
.liststyle1>*{vertical-align: top;}
.liststyle1>*:first-child{margin-right: 10px;}
.liststyle1 iframe {margin-top: 20px;}

/*会長紹介
================================================== */
.profBox01{
    width:80%;
    background: #FFF5F6;
    padding:40px;
    margin-bottom: 30px;
    margin-left: auto;margin-right: auto;
}
.profBox01 figure{
    margin:0 auto 10px;
    text-align: center;
}
.profBox01 figure img{width:auto;max-width:none;}
.profBox01 figure figcaption{
    text-align: center;
    font-size:15px;
    line-height: 1.2em;
}
.profBox01 p{
    font-size:15px;
    line-height: 1.4em;
    text-align: left !important;
}


/*NEWS
================================================== */

.topics-list a{color:#121212;display: block;}
.topics-list a:hover { color: #5f5f5f; }

.topics-list { 
    padding: 0;
    text-align: left;
}

.topics-list li {
    width:100%;
    margin:auto;
    padding:15px 28px 18px;
    background:#FFF5F6;
    margin-bottom: 20px;
    position: relative;
}

.topics-list li:after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #FFF5F6;
    transform: skew(-15deg, 0);
    position: absolute;
    z-index: 0;
    top: 0;
    left: -15px;
}

.topics-txt{width:82%;z-index:1;position: relative;}
.blog_day{
    font-size: 16px;
    font-weight: 300;
    color: #7E7E7E;
    line-height: 1em;
    margin-bottom: 10px;
    position: relative;
}

.topics-title{
    font-size:21px;
    font-weight: 600;
    line-height: 1em;
    position: relative;
}

/*single
================================================== */
.newsDetailTitle{
    padding:15px 28px 18px;
    background:#FFF5F6;
    margin-bottom: 20px;
    position: relative;
}
.newsDetailTitle>*{z-index:1;}
.newsDetailTitle:before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #FFF5F6;
    transform: skew(-15deg, 0);
    position: absolute;
    z-index: 0;
    top: 0;
    left: -15px;
}

.newsCont{
    font-size:16px;
    padding:0 20px;
}

.newsCont img{
    max-width:80%;height:auto;
    margin:0 auto;
}

/* TWITTER SECTION
================================================== */
.twitterBox{
    border: 1px solid #707070;
    border-radius: 10px;
    padding:20px;
}

.twitter-timeline{width:450px;}
#twitter-widget-0{width:100%!important;}

.timeline-Widget {
    max-width: 1200px;
}

/* 講師紹介
================================================== */
#trainer .contInner{
    background: url(../img/bg02.png) no-repeat 100%;
}

.personList{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    width:80%;
    max-width:890px;
    margin:0 auto;
}
.personList li{
    width:30%;
    margin: 0 1.5% 40px;
}

.personList_img{
    display: block;
    position: relative;
}

.personList_img_inner{
    width:100%;height:100%;
    line-height: 0;
    text-align: center;
    box-shadow: 0px 0px 6px rgba(0,0,0,0.5);
}

.personList_img_inner img{
    width:100%;
}
.personList_name{
    display: block;
    width: 100%;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1em;
    text-align: center;
    background: rgba(0,0,0,0.8);
    padding: 5px 10px;
    position: absolute;
    bottom:10px;
    z-index: 999;
}

.personList_cont{
    font-size:15px;
}

.personList_cont_name{
    font-size:16px; font-weight: bold;
}

/*single*/
.personList.detail>li{
    display: flex;
    width:100%;
}

.personList.detail .personList_name{
    position: relative;
    bottom: 0;
    margin-bottom: 10px;
    font-size: 18px;
    padding: 8px 0 10px;
    background: #222;
}

.personList.detail .personList_img{
    width:30%;
    height: auto;
}

.personList.detail .personList_img_inner{height: auto;}
.personList.detail .personList_cont{
    width:70%;
    margin-left: 20px;
    padding: 10px 20px;
    background-color: #FFF5F6;
}



.personList .personalSnsList{
    width: 100px;
    margin-top: 20px;
}
.personList .personalSnsList li{
    display: inline-block !important;
    height: 30px;width:30px;
    margin-right: 15px;
    margin-bottom: 0;
}
.personList .personalSnsList li img{
    height:100%;
    width:auto;
}

/*料金
================================================== */
.tableBlock{margin-bottom: 50px;}

table[class^="table0"]{
    width:80%;
    margin:0 auto 20px;
    table-layout: fixed;
}
*[class^="table0"] th, *[class^="table0"] td{
    font-weight: normal;
    padding:10px 20px;
    border:1px solid #BFBFBF;
    text-align: left;
}
*[class^="table0"] th{width:30%;background:#EFEFEF;}
*[class^="table0"] td{width:70%;}


/*wordpressTable*/
.table01{margin-bottom: 30px;}
.table01 table{
    width:80%;
    margin:0px auto;
    table-layout: fixed;
}
.table01 tr td:first-child{width:30%;background:#EFEFEF;}
.table01 tr td{
    width:70%;
    font-weight: normal;
    padding:10px 20px;
    border:1px solid #BFBFBF;
    text-align: left;
}

.table02{margin-bottom: 30px;}
.table02 table{
    width:80%;
    margin:0px auto;
    table-layout: fixed;
}
.table02 tr td:first-child{width:50%;background:#D5EBFF;}
.table02 tr td{
    width:50%;
    font-weight: normal;
    padding:10px 20px;
    border:1px solid #BFBFBF;
    text-align: center;
}

/*googleカレンダー*/
.calendarBox{
    width:60%;
    margin: 20px auto;
}
.calendarBox iframe{width:100%;}


/* アクセス
================================================== */

.accesArea{
    display: flex;
    justify-content: space-between;
    width:100%;
    max-width:1020px;
    margin: 0 auto 80px;
}

.accesArea .map{width:50%;}
.accesArea iframe{
    display: block;
    margin: 0px auto;
    width: 100%;
    border-radius:2px;
}

/* タイ本国
================================================== */
.muaithai-img{
    width:100%;
    max-width:700px;
    margin:0 auto 40px;
}

/*詳細*/
.thailandBox{
    text-align: center;
}
.thailandBox h2{
    font-size:18px;
    background: #0a108e;
    color:#fff;
    padding:10px 5px 8px;
    margin-bottom: 20px;
}

.thailandBox img{
    width:80%;
    max-width:600px;
    height:auto;
    margin:0 auto 20px;
}

.thailandBox #prof{
    text-align: left;
}

/* btn
================================================== */
/*btn01*/
.btn01{
    z-index: 10;
    text-align: center;
}

.btn01 a{
        display: inline-block;
        max-width:415px;
        width:90%;
        padding: 10px;
        font-family: 'Zen Kaku Gothic Antique', sans-serif;
        font-size: 18px;
        color: #222;
        background: #fff;
        border:2px solid #FFA2A2;
        border-radius: 2px;
        text-align: center;
        margin:0 auto;
        position: relative;
        transition: .2s;
        box-sizing: border-box;
    }
.btn01 a:after{
    content:"";
    display: inline-block;
    width:22px;height:28px;
    background: url(../img/arrow.svg) no-repeat 100%;
    margin-left: 10px;
    vertical-align: text-top;
}

.btn01:hover{
    transition: .2s ease-in-out;
}
.btn01:hover a{
    transition: .2s;
}

/*btn02*/
.btn02{text-align: center;margin:40px auto 20px;}
.btn02 a{
    color:#222;
    font-size: 18px;
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
    position: relative;
}
.btn02 a:after{
    content:"";
    display: inline-block;
    width:22px;height:28px;
    background: url(../img/arrow.svg) no-repeat 100%;
    margin-left: 10px;
    vertical-align: text-top;
}


/* contact
================================================== */
.contactForm>*{
    margin-bottom: 30px;
}
.formBlock{
    max-width:600px;
    margin:0 auto;
}

form>p{margin-bottom: 1em;font-style: 15px;}
input, textarea{
    width:100%;
    padding:0px 10px;
    border: 1px solid #c6c6c6;
    border-radius:5px;
}
input[type="checkbox"], input[type="radio"]{width:auto;margin-right: 5px;}
.wpcf7-checkbox>*{margin-right: 10px;}

.mw_wp_form{
    margin-top: 30px;
    padding: 10px 15px;
}

.mwform-tel-field input{width:auto;}

.tel{
    font-size:24px;
    font-weight: 600;
    color:#e05b0e;
}

button[type="submit"]{
    display: block;
    width:60%;
    background:#2079E2;
    border-radius:5px;
    border:none;
    color:#fff;
    font-size:18px;
    font-weight: 600;
    margin:30px auto 0;
    padding:10px;
}

.mw_wp_form_complete{
    border: 1px solid #e05b0e;
}

.formArea{
    width:80%;
    margin: 20px auto;
}

/*協賛企業のご紹介
================================================== */
.supportingcompanyBox{
    margin-bottom: 20px;
}
.supportingcompanyBox .entryPostTitle{
    font-size:15px;
    font-weight: bold;
    text-align: left;
    color:#fff;
    margin-bottom: 10px;
    background:#0a108e;
    padding:5px 10px 8px;
}
.supportingcompanyBox img{
    width:70%;
    max-width:200px;
}

/*入会申込書
================================================== */
.applicationBox h3{
    font-size:15px;
    font-weight: bold;
    text-align: left;
    color:#fff;
    margin-bottom: 10px;
    background:#0a108e;
    padding:5px 10px 8px;
}
.applicationBox{
    font-size:14px;
    line-height: 1.3em;
}

.btn_pdf{margin-top: 5px;margin-bottom: 10px;}
.btn_pdf a{
    display: inline-block;
    padding:10px;
    border:2px solid #222;
    color:#222;
    font-weight: bold;
}

/*fotter
================================================== */
.footerMenu{
    border-top: 1px solid #BFBFBF;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding:10px 20px;
}

.footerMenu-left{display: table;width:40%;}
.footerMenu-left>*{
    display: table-cell;
    vertical-align: middle;    
}
.footerLogo{
    width:170px;
    margin-right: 10px;
    padding:15px;
}
.footerLogo img{width:100%;}
.footerInfo{font-size:13px;line-height:1.4em;padding-left: 20px;}
.footerInfo span{font-size:16px;}

.footerNav{text-align: right;padding-left: 20px;}
.footerNav li{padding:0px 5px;}
.footerNav li a{
    font-size:15px;
    font-weight: bold;
    color:#222;
}
.footerNav li a:link, .footerNav li a:visited{color:#222;}

.footerSubmenu{text-align: right;}
.footerSubmenu li a{
    font-size:13px;
    font-weight: 300;
    color:#222;
}
.footerSubmenu li a:link, .footerSubmenu li a:hover{color:#222;}

.footerSubmenu .snsList{vertical-align: top;}

#footer{
	background:#FEA2A2;
	padding:12px 0 12px;
}


.copy{
    font-size:12px;
    text-align: center;
    font-weight: 300;
    color: #fff;
}
