/*
    8Stance　共通
*/
/**
 *
 * 初期化
 *
 */

* {
    margin: 0;
    padding: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
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,font,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 {
    outline:0;
    border:0;
    background:transparent;
    vertical-align:baseline;
    font-size:100%;
}

body {
    color:#333;
    font-size:16px;
/*  
    font-family: "M PLUS Rounded 1c", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-family: Verdana,  "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
*/  
    font-family: Verdana,  "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
/*  font-weight: bold;  /*  */
    line-height:160%;
    position: relative;
/*  letter-spacing: 3px;*/
    word-wrap:break-word;
}
.disp640{display:none;}
.hide640{display:block;}

ol,ul {
    list-style:none;
}

blockquote,q {
    quotes:none;
}

:focus {
    outline:0;
}

ins {
    text-decoration:none;
}

del {
    text-decoration:line-through;
}

table {
    border-spacing:0;
    border-collapse:collapse;
}
/**
 *
 * 共通定義
 *
 */
em {
    font-style:italic;
}
.boundary{
    clear:          both;
    margin-bottom:  40px;
}

.clear{
    clear:  both;
}
.clearfix:before,
.clearfix:after {
    content: "";
    clear: both;
    display: block;
}
p{
    text-align:     justify;
    text-justify:   inter-ideograph;
}
.small{
    font-size:  12px;
}

img{
    vertical-align: bottom;

    /* アスペクト比固定のまま最大自幅で伸縮 */
    max-width:      100%;
    height:         auto;

    /* 角丸標準装備 */
/*    border-radius: 5px;               /* CSS3草案 */  
/*    -webkit-border-radius: 5px;       /* Safari,Google Chrome用 */  
/*    -moz-border-radius: 5px;          /* Firefox用 */  
}
    /* WordPressで挿入した画像のラッパー */
[id*="attachment_"]{
    width:      100% !important;
}
.fSmall{
    font-size:      12px !important;
}
    /* 画像hoverで拡大 */
.imageBoyoyon img {
    -moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
}
.imageBoyoyon img:hover {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -o-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}


a{
    color:          #333;
    text-decoration:    none;
    /* アニメーション */
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition:all 0.5s ease;
}
a:hover{
    text-decoration:    none;
    filter:alpha(opacity=70);
    -moz-opacity:0.70;
    -khtml-opacity:0.70;
    opacity:0.70;
}

.over {
    -webkit-transition:.3s ease-in-out;
    -moz-transition:.3s ease-in-out;
    -o-transition:.3s ease-in-out;
    transition:.3s ease-in-out;

    /* アニメーション */
/*
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
*/
}
body.home .wrap_main a,
body.page .wrap_main a,
body.single .wrap_main a{
    color:          #00f;
    text-decoration:    underline;
}
.over:hover {
    text-decoration:    none;
    filter:alpha(opacity=60);
    -moz-opacity:0.60;
    -khtml-opacity:0.60;
    opacity:0.60;
}
a.noOpacity:hover{
        /* オレンジはっきり出すため透過しない */
    filter:alpha(opacity=100);
    -moz-opacity:1.00;
    -khtml-opacity:1.00;
    opacity:1.00;
}
    /* <a>の下層要素が透過動作しない場合の対処 */
a.noOpacity img,
a.noOpacity h1,
a.noOpacity h2,
a.noOpacity h3,
a.noOpacity h4,
a.noOpacity h5,
a.noOpacity h6,
a.noOpacity span,
a.noOpacity p{
    /* アニメーション */
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
}
a.noOpacity:hover img,
a.noOpacity:hover h1,
a.noOpacity:hover h2,
a.noOpacity:hover h3,
a.noOpacity:hover h4,
a.noOpacity:hover h5,
a.noOpacity:hover h6,
a.noOpacity:hover span,
a.noOpacity:hover p{
    filter:alpha(opacity=70);
    -moz-opacity:0.70;
    -khtml-opacity:0.70;
    opacity:0.70;
}

.floatLeft{
    float:  left;
}
.floatRight{
    float:  right;
}
.alignLeft{ text-align:left !important;}
.alignRight{    text-align:right !important;}
.alignCenter{   text-align:center !important;}

.mb0,
.marginBottomNone   {   margin-bottom:  0px !important;}
.mb80               {   margin-bottom:  80px !important;}
.mb70               {   margin-bottom:  70px !important;}
.mb60               {   margin-bottom:  60px !important;}
.mb50               {   margin-bottom:  50px !important;}
.mb30               {   margin-bottom:  30px !important;}
.mb20               {   margin-bottom:  20px !important;}
.mb15               {   margin-bottom:  15px !important;}
.mb10               {   margin-bottom:  10px !important;}
.mt30               {   margin-top: 30px !important;}
.mt15               {   margin-top: 15px !important;}


.borderNone{
    border: none !important;
}
.pb60               {   padding-bottom: 70px !important;}
.pb60               {   padding-bottom: 60px !important;}
.pb50               {   padding-bottom: 50px !important;}
.pb30               {   padding-bottom: 30px !important;}
.pb20               {   padding-bottom: 20px !important;}
.pb10               {   padding-bottom: 10px !important;}

.pt0                {   padding-top:    0px !important;}

.MaskBlack{
    background-color: rgba(0,0,0,0.3);
/*  z-index:    10;*/
}
.MaskGray{
    background-color: rgba(0,0,0,0.05);
/*  z-index:    10;*/
}
.MaskBlue{
    background-color: rgba(1,104,183,0.15); /* #0168b7 */
/*  z-index:    10;*/
}
.posRelative{
    position:       relative;
}
.absCenter{
    position:       absolute !important;
    top:        50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
/*
    margin-left:    auto;
    margin-right:   auto;
*/
    left:   0px;
    right:  0px;
    display:    inline-block;
    text-align: center;
}
    /* Font Awesome　を背景画像に使用 */
    /* http://ithat.me/2016/09/28/css-web-font-fontawesome-background-image */
.web-font-bg 
{
  position: relative;
}
/*.web-font-bg::before */
.web-font-bg::after 
{
  position: absolute;
  top: 50px;
  left: 90%;
  margin-left: 0px;
  content: '\f099';
    color:  #2e98e4;
  font-size: 50px;
    content: "\f105";   /* > */
/*  font-family: FontAwesome;           /* 古いバージョン */
    font-family: "Font Awesome 5 Free"; /* Ver.5 */
}
.colorWhite{color:#fff !important;}
.colorBlack{color:#000 !important;}
.color333{color:#333 !important;}
.colorCcc{color:#ccc !important;}
/*--------------------------------------------------------------------*/
/* ローディングアイコン */
.pace-running .wrapPace {
     display:none;
}
.ug-slider-preloader.ug-loader1{
    display:    none !important
}
/*--------------------------------------------------------------------*/
/**
 *
 * ページ送り
 *
 */
.pagenavi {
    clear:both;
    margin:10px auto 0;
    padding-bottom:10px;
    color:#000;
    text-align:center!important;
    font-size:12px;
}

.pagenavi:after {
    display:block;
    visibility:hidden;
    clear:both;
    height:0;
    content:".";
}

.pagenavi a,.wp-pagenavi span {
    margin:1px;
    text-decoration:none;
}


.pagenavi a:hover,.wp-pagenavi span.current {
}

.pagenavi .prev {
    display:inline-block;
    width:107px;
    height:30px;
    border:0;
    color:#300;
}

.pagenavi .prev:hover {
}

.pagenavi .next {
    display:inline-block;
    margin-left:15px;
    width:107px;
    height:30px;
    border:0;
    color:#300;
}

.pagenavi .next:hover {
}

.pagenavi .prev:after,.pagenavi .next:after {
    content:""!important;
}

.pagenavi span.current {
    background:#00B0B5;
    color:#fff;
    font-weight:700;
}

/*--------------------------------------------------------------------*/
header{
/*  border-bottom: 1px solid #ddd;  /* ここにボーダーがあってもこの要素はスクロールしてしまうのでダメ */
    background-color:   #fff;
}

/* Drawerメニュー */
.drawer-container {
    max-width: 1600px;
}
.drawer-navbar{
    border-bottom:      1px solid #ddd;
    height:         81px;   /* ###PC-Header-Height 同じにすること   81px:border-bottomのため */
    line-height:    80px;   /* ###PC-Header-Height 同じにすること */
    background-color:   transparent;
}
.drawer-navbar .drawer-navbar-header {
    border-bottom:      none;
    height:         80px;   /* ###PC-Header-Height 同じにすること */
    line-height:    80px;   /* ###PC-Header-Height 同じにすること */
    background-color:   transparent;
}
    /* メニューは右寄せ */
.drawer-navbar .drawer-nav {
    float: right;
    height:         80px;   /* ###PC-Header-Height 同じにすること */
    line-height:    80px;   /* ###PC-Header-Height 同じにすること */
    background-color:   #fff;
}
.drawer-navbar .drawer-menu > li {
    padding-top:    20px;   /* ↓.drawer-navbar .drawer-menu-item{line-height} と加算して80px     ###PC-Header-Height 同じにすること */
    margin-right:   60px;   /* 隣の項目との位置関係 */
}
.drawer-navbar .drawer-menu > li:hover {
}
.drawer-navbar .drawer-menu a {
    font-size: 14px;
}
.drawer-navbar .drawer-menu a:hover {
    text-decoration:    none;
}

    /* メニュー項目 */
.drawer-navbar .drawer-menu-item {
    line-height:    60px;   /* ↑.drawer-navbar .drawer-menu li{padding-top} と加算して80px       ###PC-Header-Height 同じにすること */
    line-height:    57px;   /* ↑.drawer-navbar .drawer-menu li{padding-top} と加算して80px       ###PC-Header-Height 同じにすること */
                            /* 57px  下のborder-bottom:3px と合計で60px　box-sizing:border-box なので高さに含まれるはずだが？？？ */
    border-bottom:  4px solid transparent;  /* 本来なら3pxにするべきだが、上位要素のborder-bottomにオーバーラップさせ、下層ドロップダウンの位置をぴったりにするため */

    padding-left:   0px;
    padding-right:  0px;
}
.drawer-navbar .drawer-menu-item.current-menu-item,
.drawer-navbar .drawer-menu-item:hover {
    border-bottom:  4px solid #ccc;     
}
.drawer-navbar .drawer-menu-item .drawer-caret{
    display:    none;
}
    /* 2階層目階層目 */
.drawer-menu > li.drawer-dropdown.open > ul.drawer-dropdown-menu > li.drawer-dropdown > a.Open{     /* 3階層@@@@@目 */
    color:  #fff;
}
    /* 3階層目 */
.drawer-menu > li.drawer-dropdown.open > ul.drawer-dropdown-menu > li.drawer-dropdown > ul.drawer-dropdown-menu{        /* 3階層@@@@@目 */
    background-color:   #ddd;
}
.drawer-menu > li.drawer-dropdown.open > ul.drawer-dropdown-menu > li.drawer-dropdown > ul.drawer-dropdown-menu a{      /* 3階層@@@@@目 */
    color:              #000;
}

.drawer--navbarTopGutter {
    padding-top: 80px;  /* ###PC-Header-Height 同じにすること */
}
.drawer-navbar .drawer-dropdown-menu{
    border:             none;
    background-color:   #585858;
    width:              auto;
    filter:alpha(opacity=90);
    -moz-opacity:0.90;
    -khtml-opacity:0.90;
    opacity:0.90;
}

    /* ヘッダーCTA */
.drawer-navbar .drawer-nav .HeaderCTA{
    padding-top:    20px;
    float:  left;
}
    /* 下層メニューのアクション */
    /* PCの時はhoverで表示　clickでの動作を無効化して非表示 */
.drawer-menu .drawer-dropdown.open > .drawer-dropdown-menu{
    display:    none;
}
.drawer-menu .drawer-dropdown:hover > .drawer-dropdown-menu{
    display:    block;
}
.drawer-dropdown-menu li{
    border-bottom:  1px solid #fff;
    height:         40px;
    line-height:    40px;
    width:          auto;
    float:          none !important;
}
.drawer-dropdown-menu li:last-child{
    border-bottom:  none !important;
}
.drawer-dropdown-menu a{
    color:      #fff;
}
.drawer-dropdown-menu-item {
    line-height: 40px;
}
.drawer-dropdown-menu-item:hover {
    color: #fff;
}
    /* 下層要素の詳細 */
.drawer-navbar #logo{
    padding-top: 20px;
}
    /* PCでは「トップページ」非表示 */
.drawer-navbar .drawer-menu > li:first-child{
/*  display:    none;   /*  */
}
    /* 子メニューがある場合は、親メニューはドロップダウンをオープン用のボタンであったが、 */
    /* 親メニューは親メニューのリンクと子メニューオープン用のボタンをいっしょに設置する */
    /* ###TogetherParentMenuAndOpenButton */

    /* リンク項目 */
/*.drawer-navbar .drawer-dropdown a.Link{   /*  */
.drawer-navbar .drawer-dropdown a.Link[href="#"]{   /* hrefが存在しない要素はクリック無効化 */
    display:    block;
    pointer-events: none;   /* クリック無効化　delayed scroll 導入で、親要素をクリックされるとページ先頭に移動するのを防止 */
}
    /* オープンボタン */
.drawer-navbar .drawer-dropdown a.Open{
    display:    none;
}



/*--------------------------------------------------------------------*/
/* heroヘッダー */
/* header.phpでis_front_pageの時にhtml/body/header=height:100% */
.headerHero{        /* register_sidebar(toppage-hero-header-slider-scitech) */
    background-repeat: no-repeat;
    background-position:    center center;
    background-size: cover ;
    margin: 0 auto;
    position: relative;
    height:     100%;
    width:      100%;
}
.headerHero .textwidget{
    height:     100%;
}
.headerHero .maskHero{
    height:     100%;
    background-color: rgba(0,0,0,0.3);
}
    /* <header>内のロゴ・グロナビ・フリーダイヤル・メールバナー */
    /* #headerの動作に関してはstyle_pc/style_spに記述 */
header{
    z-index:    100;
}
#header{
    position:   fixed;
    width:      100%;
    z-index:    100;
    background-color: #fff;
}
body.home #header{
}
#logo{
}
#logo .LogoBanner,
#logo .text{
    float:  left;
}
#logo .LogoBanner{
/*  max-width: 120px;   */
    height: 40px !important;
}
body.page-template-templete-EntryFormOptimization #logo{
    padding:    20px;
    text-align: center;
    border-bottom:  1px solid #ccc;
    margin-bottom:  40px;
}
body.page-template-templete-EntryFormOptimization #logo .LogoBanner{
    float:  none;
}
#logo .text{
    padding-top:    5px;
    padding-left:   10px;
}
#logo .catchFrase{
    color:              #fff;           /*  */
    font-size:          12px;
    letter-spacing:     1px;
/*
    text-shadow: 2px 2px 2px #888,
         -2px 2px 2px #888,
         2px -2px 2px #888,
         -2px -2px 2px #888;
*/
}
#logo .Organization{
    text-align:         left;
    color:              #fff;           /*  */
/*  font-family:        "HGKyokashotai","HG教科書体","M PLUS Rounded 1c", "YuMincho", "游明朝体", "游明朝";    /*  */
    font-size:          20px;
    letter-spacing:     0px;
    font-weight:        bold;
    width:              100%;
/*  height:             1em;*/
    line-height:        1em;
    padding:            0px;
    border:             none;
    background-color:   transparent;
/*
    text-shadow: 2px 2px 2px #888,
         -2px 2px 2px #888,
         2px -2px 2px #888,
         -2px -2px 2px #888;
*/
}
    /* 中心の「共に成功を目指す税理士事務所」 */
.absOverCenter{
    position:   absolute;
    width:      100%;
    height:     100%;
            /* 上下左右中央寄せ */
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    margin: auto;
}
.absOverCenter .verticalCenter,
.headerHero .v-center {
/* ie8で未対応
  position: relative;
  top: 50%;
  transform: translateY(-50%);
*/

    /* ブロック要素上下中央寄せ */
    position: absolute;
/*  
    top: 0;
    bottom: 0;
*/
    right: 0;
    left: 0;
    margin: auto;

        /* 要素のサイズを100%ではなくする必要がある */
    width:  80%;
    max-width:  700px;
/*
    height: 410px;
    height: 210px;
*/
    text-align: center;
}
.absOverCenter .bottom,
.headerHero .bottom{
    position: absolute;
/*  top: 0;     /*  */
    right: 0;
    bottom: 40px;
    left: 0;
    margin: auto;
}
.headerHero .v-center h1{
    font-size:      16px;
    border-top:     1px solid #fff;
    border-bottom:  1px solid #fff;
    line-height:    3.5em;
    font-weight:    normal;
    color:          #fff;
    margin-bottom:  80px;
}
.imgSuccess{
    text-align: center;
    margin-bottom:  30px;
}
.absOverCenter .verticalCenter .descriptionBig,
.absOverCenter .verticalCenter .descriptionSmall,
.headerHero .v-center .descriptionBig,
.headerHero .v-center .descriptionSmall{
    text-align: center;
    color:          #fff;
/*
    text-shadow: 1px 1px 1px #888,
         -1px 1px 1px #888,
         1px -1px 1px #888,
         -1px -1px 1px #888;
*/
    /* -webkit-text-stroke: 1px #888;   /* 縁取り */
}
.absOverCenter .verticalCenter .descriptionBig,
.headerHero .v-center .descriptionBig{
    font-size:      40px;
    line-height:    1.5em;
    margin-bottom:  30px;
    font-weight:    bold;
}
.absOverCenter .verticalCenter .descriptionSmall,
.headerHero .v-center .descriptionSmall{
    font-size:      16px;
    font-weight:    normal;
    padding:        20px 0px;
    border-top:     1px solid #fff;
    border-bottom:  1px solid #fff;
    margin-bottom:  30px;
}
.absOverCenter .bottom .arrowDown,
.absOverCenter .bottom .text,
.headerHero .v-center .arrowDown,
.headerHero .bottom .arrowDown,
.headerHero .bottom .text{
    text-align: center;
}
.absOverCenter .bottom .text,
.headerHero .bottom .text{
    font-size:  14px;
    color:      #fff;
}
    /* page.php コンテンツ部 */
.container{
    margin:         0px auto;
}
/*--------------------------------------------------------------------*/
/* トップページカルーセル Slick Slider */
    /* 要素の最外殻 */
.wpsisac-slick-carousal-wrp .slick-image-slide{
    background-color:   #000;
    margin:     0px !important;
}
.wpsisac-slick-carousal .slick-image-slide {
}
.wpsisac-slick-carousal-wrp .slick-image-slide img{
    filter:alpha(opacity=30);
    -moz-opacity:0.30;
    -khtml-opacity:0.30;
    opacity:0.30;
    /* アニメーション */
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
}
    /* 真ん中のスライダー */
.wpsisac-slick-carousal-wrp .slick-image-slide.slick-current{
}
.wpsisac-slick-carousal-wrp .slick-image-slide.slick-current img{
    filter:alpha(opacity=100);
    -moz-opacity:1.0;
    -khtml-opacity:1.0;
    opacity:1.0;
    /* アニメーション */
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
}
    /* 画像 */
.wpsisac-slick-carousal-wrp .slick-image-slide .slick-image-slide-wrap img{
}
    /* 矢印 */
.wpsisac-slick-carousal-wrp .design-6 button.slick-arrow{
    background:     none !important;    /*  */
    background-color:   rgba(0,0,0,1.0) !important;
    width:  50px;       /* 画像サイズ ###imageSize */
    height: 50px;       /* 画像サイズ ###imageSize */
    background-size:    cover !important;
}
.wpsisac-slick-carousal-wrp .design-6 button.slick-prev{
/*  left:   calc(50% - 565px) !important;   /* 元のサイズの場合 */
    left:   calc(50% - 575px) !important;   /* ###imageSize */
/*  left:   calc(50% - 568px) !important;   /* ###imageSize 36px */
    background-image:   url("./images/top/carousel-arrow-left.png") !important;
}
.wpsisac-slick-carousal-wrp .design-6 button.slick-next{
    right:  calc(50% - 565px) !important;   /* 元のサイズの場合 */
    right:  calc(50% - 575px) !important;   /* ###imageSize */
/*  right:  calc(50% - 568px) !important;   /* ###imageSize 36px */
    background-image:   url("./images/top/carousel-arrow-right.png") !important;
}
    /*  
        矢印画像を変更するため
        スマホグロナビの矢印と同じ方法だが　うまくいかない
        画像直接あてがうことにする
    */
/*
.wpsisac-slick-carousal-wrp button.slick-prev::after {
    position: absolute;
    top: 0px;
    left: 0px;
    width:  100%;
    height: 100%;
    font-size: 40px;
    font-weight: lighter;
    font-weight: 100;
    content: "<";
    font-family: 'Major Mono Display', monospace;
    color:  #fff;
}
.wpsisac-slick-carousal-wrp button.slick-next::after {
    position: absolute;
    top: 0px;
    left: 0px;
    width:  100%;
    height: 100%;
    font-size: 40px;
    font-weight: lighter;
    font-weight: 100;
    content: ">";
    font-family: 'Major Mono Display', monospace;
    color:  #fff;
}
*/
/*--------------------------------------------------------------------*/
/* ぱんくず */
.breadcrumbs-wrap{
    background-color:   #f2f2f2;
/*  border-bottom:      1px solid #cecece;  /*  */
    margin-bottom:      60px;
    padding-top:        7px;
    padding-bottom:     7px;
}
.breadcrumbs{
    max-width:      1140px;
    padding-left:   20px;
    padding-right:  20px;
    margin-left:    auto;
    margin-right:   auto;
    font-size:      12px;
}
    /* imgとspanを上下中央に合わせる　vertical-align:   middle; */
.breadcrumbs img{
    vertical-align: middle;
    margin-right:   5px;
}
.breadcrumbs span{
    vertical-align: middle;
}
/*--------------------------------------------------------------------*/
/* ghostボタン */
.btnGhost{
    text-align:     center;
    height:         auto;
    padding:        1px;
}

.btnGhost a{
  font-size: 18px;
  font-family: "Yu Gothic";
    padding:        15px;
    width:          100%;
    max-width:      240px;
    color:          #000 !important;
    border:         1px solid #ccc;
    text-decoration:    none !important;
    display:    inline-block;   /* 上位要素の<div>の高さを、この要素の高さ文確保するため */

    -webkit-transition:.3s ease-in-out;
    -moz-transition:.3s ease-in-out;
    -o-transition:.3s ease-in-out;
    transition:.3s ease-in-out;
}
.btnGhost a:hover{
/*  background-color: rgba(255,255,255,0.5);*/
    background-color: rgba(240,240,240,0.5);
    background-color: rgba(51,51,51,0.5);
        /* フォアグランドは透過しない */
    filter:alpha(opacity=100);
    -moz-opacity:1.00;
    -khtml-opacity:1.00;
    opacity:1.00;
}
    /* ヘッダーのゴーストボタン */
header .btnGhost{
    float:  left;
    height:         80px;   /* ###PC-Header-Height 同じにすること */
    line-height:    80px;   /* ###PC-Header-Height 同じにすること */
}
header .btnGhost a{
    font-size:      14px;
    padding:        0px 10px;
    border:         none;
/*  width:          200px;  */
    height:         40px;
    line-height:    40px;
    background-color:   #2e98e4;    /* 水色 */
    color:          #fff !important;

/*    border-radius: 5px;        /* CSS3草案 */  
/*    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
/*    -moz-border-radius: 5px;   /* Firefox用 */  

}
header .btnGhost a:first-child{
    margin-right:   30px;
}
header .btnGhost a:hover{
    background-color: #8ec7fc;  /* 薄い水色 */
    color:          #fff !important;
}
header .btnGhost a img{
    vertical-align: middle;
    margin-right:   10px;
}
    /* 業務内容　通常時に背景白っぽく */
body.home section .btnGhost a{
    font-size:          15px;
    background-image:   url("./images/common/triangle-black-right-20.png");
    background-repeat:  no-repeat;
    background-position: 10px center;
    background-size:    10px;
/*  background-color: rgba(255,255,255,0.2);    /* 白透過 */
/*  background-color: rgba(0,0,0,0.5);          /* 黒透過 */
/*  background-color: rgba(128,128,128,0.75);   /* グレー透過 */
    background-color: #fff; /* 白透過 */
    border:         1px solid #cecece;
    padding:        13px;
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}
section#TopSlowSlider .btnGhost a{
/*  background-image:   url("./images/common/triangle-black-white-20.png"); /*  */
    background-image:   none;
    background-color: transparent;  /* 白透過 */
    color:          #fff !important;
    border:         1px solid #fff;
    max-width:          280px;
    border-radius: 0px;        /* CSS3草案 */  
    -webkit-border-radius: 0px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 0px;   /* Firefox用 */  
}
    /* hoverと上位画像hover時は全透過 */
section#TopSlowSlider .btnGhost a:hover,
body.home section .backImage:hover .btnGhost a,
body.home section .btnGhost a:hover{
    background-color: #bbb;
}
.btnLikeGhost{
    padding:        15px 55px;
    color:          #fff;
    border:         1px solid #fff;
    display:    inline-block;   /* 上位要素の<div>の高さを、この要素の高さ文確保するため */
}

    /* タグサンプルの背景画像とゴーストボタン */
.GhostWithBackImage{
    position:   relative;
    text-align: center;
}
.GhostWithBackImage .btnGhost{
    position:       absolute;
    top:        50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    margin-left:    auto;
    margin-right:   auto;
    left:   0px;
    right:  0px;
}
.GhostWithBackImage .btnGhost a{
    color:          #fff !important;
}
.btnGhost a:hover{
/*  background-color: rgba(255,255,255,0.5);*/
    background-color: rgba(240,240,240,0.5);
    background-color: rgba(255,255,255,0.8);
    color:          #333 !important;
}

    /* CTAのゴーストボタン */
footer section#CTA .btnGhost a:hover{
    background-color: #f2f2f2;  /* 極端に薄いグレー */
}
/*--------------------------------------------------------------------*/
/* リンクボタン */
.btnLink{
    text-align:     center;
    margin:         20px auto;
}

.btnLink a{

    background-image:   url("./images/common/tryangle-white.png");
    background-repeat:  no-repeat;
    background-position: 15px center;
    max-width:              480px;
    width:              100%;
    height:             60px;
    line-height:        60px;
    text-decoration:    none !important;
    display:    inline-block;   /* 上位要素の<div>の高さを、この要素の高さ文確保するため */

    font-size: 19px;
    font-family: "Yu Gothic";
    color: #fff !important;

/*
    -webkit-transition:.3s ease-in-out;
    -moz-transition:.3s ease-in-out;
    -o-transition:.3s ease-in-out;
    transition:.3s ease-in-out;
*/
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  

}
.btnLink a.tryangleWhite{
    background-image:   url("./images/common/tryangle-white.png");
}
.btnLink a.green{
    background-color:   #7cc44b;
}
.btnLink a.orange{
    background-color:   #f69022;
}
.btnLink a.red{
    background-color:   #f00420;
}
.btnLink a.gray{
    background-color:   #a7a7a7;
}
.btnLink a.white{
    background-color:   #fff;
    color:              #000 !important;
    background-image:   url("./images/common/tryangle-black.png");
    border:         1px solid #ccc;
}
.btnLink a.yellow{
    background-color:   #fff100;
    color:              #000 !important;
    background-image:   url("./images/common/tryangle-black.png");
}
.btnLink a.small{
    background-position: 15px center;
    font-size:      16px;
    width:              240px;
    height:             50px;
    line-height:        50px;
    background-image:   url("./images/common/tryangle-white-small.png");
}
.btnLink a.white.small,
.btnLink a.yellow.small{
    background-image:   url("./images/common/tryangle-black-small.png");
}
/*--------------------------------------------------------------------*/
/* Wipe Over Effect ボタン */
[data-wipe] {
  position: relative;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  overflow: hidden;
  display: inline-block;
  text-decoration: none;
  text-align: left;
  font-size: 18px;
  font-weight: bold;
  padding: 15px 50px;       /* ###match 50px */
  border: 4px solid #333;
  color: #333;
}
[data-wipe]:before, [data-wipe]:after {
  content: attr(data-wipe);
  padding-top: inherit;
  padding-bottom: inherit;
  white-space: nowrap;
  position: absolute;
  top: 0;
  overflow: hidden;
  background: #8ec7fc;  /* 薄い水色 */
}
[data-wipe]:before {
  left: 0;
  text-indent: 50px;        /* ###match 50px */
  width: 0;
}
[data-wipe]:after {
  padding-left: inherit;
  padding-right: inherit;
  left: 100%;
  text-indent: calc(-100% - 100px);     /* ###match 50px ×2 =100px */
  transition: 0.2s ease-in-out;
}
[data-wipe]:hover:before {
  width: 100%;
  transition: width 0.2s ease-in-out;
}
[data-wipe]:hover:after {
  left: 0;
  text-indent: 0;
  transition: 0s 0.2s ease-in-out;
}
/* もっといい方式 */
header .btnWipe{
/*

    ここは HeaderCTA へ制御を移した
    padding-top:    20px;
    float:  left;
*/
}
header .btnWipe .more_button{
    font-size:      14px;
    border:         none;
    width:          180px;
    height:         40px;
    line-height:    40px;
    background-color:   #2e98e4;    /* 水色 */
    color:          #fff !important;
    text-align:     center;
    float:          left;
}
header .btnWipe .more_button:hover{
    filter:alpha(opacity=100);
    -moz-opacity:1.00;
    -khtml-opacity:1.00;
    opacity:1.00;
}
header .btnWipe .more_button:first-child{
    margin-right:   20px;
}
    /* スライドするボタンの色 */
header .more_button::before,
header .more_button::after {
    background-color:#8ec7fc;   /* 薄い水色 */
}


    /* スライドするボタンの色 */
#CTA .more_button::before,
#CTA .more_button::after {
    background-color:#ccc;  /* 薄い水色 */
}

    /* 以下はアニメーション設定 */
.more_button {
    display: block;
    position: relative;
    z-index: 2;
    outline: none;
/*  background-color:#FFF;  */
    
    overflow: hidden;
}
.more_button::before,
.more_button::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}
.more_button,
.more_button::before,
.more_button::after {
    box-sizing: border-box;
    transition: all 0.5s;
}
.more_button:hover {
    color: #FFF;
}
.more_button::after {
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    
}
.more_button:hover::after {
    left: 0;
}
.more_button i,.r_buttons i {
  position: absolute;
  top: 37%;
  right: 10px;
}


/*--------------------------------------------------------------------*/
/* ライブラリ */
    /* アスペクト比が異なる（大きさも異なる）画像を、大きさ同じにトリミングしながらレスポンシブ動作 */
    /* トップページ　先生方の声に利用 */
.wrapFlex{
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap : wrap; /*for IE10*/
    -webkit-flex-wrap : wrap; /*for old webkit browser*/
    flex-wrap : wrap;


/*  justify-content: space-between; /*最初と最後の子要素を両端に配置し、残りの要素は均等に間隔をあけて配置*/
}
.wrapFlexCenter{
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap : wrap; /*for IE10*/
    -webkit-flex-wrap : wrap; /*for old webkit browser*/
    flex-wrap : wrap;

    /* 上下左右中央寄せ */
  justify-content: center;
  align-items: center;
}
.wrapFlexCenterTop{
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    /* 上下左右中央寄せ */
  justify-content: center;
}
.wrapFlexCenterLeft{
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    /* 上下中央寄せ　左寄せ */
/*  justify-content: left;  /*  */
  align-items: center;
}
.wrapFlexBothSide{
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap : wrap; /*for IE10*/
    -webkit-flex-wrap : wrap; /*for old webkit browser*/
    flex-wrap : wrap;


    justify-content: space-between; /*最初と最後の子要素を両端に配置し、残りの要素は均等に間隔をあけて配置*/
}
    /* 左右入れ替え */
.flexRevers{
    flex-direction: row-reverse;
}
    /* 上下左右中央寄せの内部サイズ制限 */
.boxFloatCenter{
    max-width:  640px;
    width:      75%;
}
    /* 4列で1pxボーダーで区切り */
.boxCover{
    width:  25%;
    position:   relative;
    border-right:   1px solid #fff;
    border-bottom:  1px solid #fff;
}
    /* 4列で巣超すスペース開ける */
.boxCoverSpace{
    width:  23.6%;          /* 260/1100 */
    margin-right:   1.86%;  /* 20/1100 */
    margin-bottom:  30px;
    position:   relative;
}
.boxCoverSpace:nth-child(4n){
    margin-right:   0px;
}
    /* サイドバー有の場合は3列 */
.hasSidebar .boxCoverSpace{
    width:  32%;            /* 240/750 */
    margin-right:   2%;     /* 15/750 */
}
.hasSidebar .boxCoverSpace:nth-child(4n){
    margin-right:   2%;
}
.hasSidebar .boxCoverSpace:nth-child(3n){
    margin-right:   0px;
}
.boxCoverThree{
    width:  31%;
    margin-right:   3.5%;
    margin-bottom:  40px;
    position:   relative;
    height:     100%;   /* 上の.boxCoverはなぜかheight:100%;が無くても正常動作する */
}
.boxCoverThree:nth-child(3n){
        margin-right:    0px;
}
    /* アスペクト比4:5の箱を作る */
    /* 外殻はpadding-topを使用して高さを確保 */
.outer125{
    position: relative;
    width: 100%;
/*    height: 100%; /* これがあると高さが余計に確保される */
    padding: 125% 0 0;
}
.outer100{
    position: relative;
    width: 100%;
/*    height: 100%; /* これがあると高さが余計に確保される */
    padding: 100% 0 0;
}
    /* 内側は外殻に沿って形成 */
.outer125 .inner,
.outer100 .inner{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
    /* さらにinnerを継承 */
.outer125 .inner a,
.outer100 .inner a{
    display:    block;
    height:     100%;
}
    /* 親の<a>と同じサイズにしてアスペクト比そのままにcover */
.outer125 .inner img,
.outer100 .inner img{
    width: 100%;
    height: 100%;
    object-fit: cover;  /* cover */
}
.boxClip{
    width:      100%;
/*  padding-left:   20px;   /* 左端スペース */
    overflow:   hidden;
}
.boxClipInner{
    width:      900px;
}
.boxClipInner .ug-carousel-wrapper{
    left:       0px !important; /* カルーセルのレスポンシブで中央ぞろえのためにこのセレクタが制御される。これを左端に固定 */
}
    /* オーバーラップ */
.overWrap{
    position:   absolute;
    background-color:   rgba(0,0,0,0.5);
    bottom:     0px;
    padding:    10px 30px;
    color:      #fff;
    width:      100%;
}
    /* オーバーラップの三角形 */
/*
.overWrap:before{
    content: "";
    position: absolute;
    left: 50%;
    top: -38px;
    margin-left: -15px;
    border: 13px solid transparent;
    border-bottom: 25px solid rgba(0,0,0,0.5);
}
*/

    /* 右矢印をcontentで指定 */
.overWrap.arrow:after{
    position: absolute;
    top:        50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0px;         /* ###CType01ListCaptionSnipet   10px → 0px */
    margin-left: 0px;
    font-size: 40px;
    font-weight: lighter;
    font-weight: 100;
    content: ">";   /* > */
    font-family: 'Major Mono Display', monospace;
}
    /* 通常のタイトルなど */
.normalWrap{
    padding-top:    20px;
}
.overWrap .title,
.normalWrap .title{
    font-weight:    bold;
    margin-bottom:  5px;
    font-size:      16px;
    word-wrap:      break-word;         /* ###CType01ListCaptionSnipet */
    line-height:    1.2em;              /* ###CType01ListCaptionSnipet */
}
.overWrap .subtitle,
.normalWrap .subtitle{
    font-size:  12px;
    line-height: 150%;
/*  padding-right: 20px;                /* ###CType01ListCaptionSnipet */
    word-wrap:      break-word;         /* ###CType01ListCaptionSnipet */
    line-height:    1.2em;              /* ###CType01ListCaptionSnipet */
}

    /* 高さ可変のコンテンツに追従して、背景画像をcoverで配置 */
.imgCover .boxContent{
    padding:    50px 0px;
    background-color: rgba(0,0,0,0.5);
    height: 100%;
        /* スライダーをパララックス動作させるときに、前面に出るようにするため */
    z-index:    2;
    position: relative;  /* ←これしないとz-indexが効かない　*/
}
.imgCover img{
    position:   absolute;
    object-fit: cover;
    width: 100%;
    height: 100%;
        /* スライダーをパララックス動作させるときに、前面に出るようにするため */
    z-index:    1;
}
.imgCover{
    color:  #fff;
}
    /* 白背景　黒文字 ###BackWhiteColorBlack */
.imgCover .boxContent.backWhite{
    background-color: rgba(255,255,255,0.5);
    color:  #333 !important;
}
.imgCover .boxContent.backWhite .cWhite{
    color:  #333 !important;
}
.imgCover .boxContent.backWhite .titleSub{
/*  color:  #888 !important;    /*  */
}

    /* hoverで背景マスクを白半透明、画像をズーム ###HoverZoom */
        /* 背景白へのアニメーション指定 */
.hoverZoom .boxContent{
    -webkit-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    -ms-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}
        /* 背景白半透明 */
.hoverZoom .boxContent:hover {
    background-color: rgba(255,255,255,0.5);
}
        /* 背景黒半透明 */
.hoverZoom .boxContent.backWhite:hover {
    background-color: rgba(0,0,0,0.5);
}
        /* 文字を黒 */
.hoverZoom .boxContent:hover .cWhite,
.hoverZoom .boxContent:hover .text{
    color:      #333 !important;
}
.hoverZoom .boxContent.backWhite:hover .cWhite,
.hoverZoom .boxContent.backWhite:hover .text{
    color:      #fff !important;
}
        /* 画像ズームでのはみだしを非表示 */
.posRelative.hoverZoom{
    overflow:   hidden;
}
        /* 画像をズームするためのアニメーション指定 */
.posRelative.hoverZoom img {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    -ms-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}
        /* 画像をズーム */
.posRelative.hoverZoom:hover img {
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);
/*
    filter: alpha(opacity=100);
    -moz-opacity: 1.00;
    -khtml-opacity: 1.00;
    opacity: 1.0;
*/
}

/*--------------------------------------------------------------------*/
/* ランディングページ ###LandingPageTemplete */
    /* フォント */
body.page-template-templete-LandingPage{
    font-family: Verdana,  "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body.page-template-templete-LandingPage h1,
body.page-template-templete-LandingPage h2,
body.page-template-templete-LandingPage h3,
body.page-template-templete-LandingPage h4,
body.page-template-templete-LandingPage h5,
body.page-template-templete-LandingPage h6,
.copyright{
    font-family: Verdana,  "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
    /* メインビジュアル背景画像 */
.imageBackCover img{
    width:      100%;
    height:     600px;
    object-fit: cover;
}
    /* メインビジュアル背景マスク */
body.page-template-templete-LandingPage .MaskBlack{
/*  background-color: transparent;      /* マスク除去するにはコメントをとる（この行を有効にする） */
}
body.page-template-templete-LandingPage .titleMV{
    font-weight:    bold;
    border-left:    none !important;
    padding-left:   0px !important;
}
    /* フッターCTA */
body.page-template-templete-LandingPage footer section#CTA{
    background-color:   #1A5783;        /* 背景色 */
}
body.page-template-templete-LandingPage footer section#CTA .ctaTitle,
body.page-template-templete-LandingPage footer section#CTA .description{
    color:              #fff;
}
body.page-template-templete-LandingPage footer section#Banners{
    display:    none;
}
@media screen and (max-width: 1024px) {
    body.page-template-templete-LandingPage .boxTow{
        width:      100%;
        margin-right:   0px;
        padding-bottom: 30px;
    }
    body.page-template-templete-LandingPage #MainVisual-001 .imageBackCover img{
        height: 700px;
    }
}
/*--------------------------------------------------------------------*/
/* 基本レイアウト */
/* .hasSidebar は index.php で追加 */
.hasSidebar .wrap_main{
/*  float:      left;
    width:      72.72%;     /* 800/1100 */
/*  width:      68.2%;          /* 750/1100 */
    flex:       1;
    margin-right:   100px;      /* 左寄せ */
}
.hasSidebar #sidebar{
/*  float:      right;
    width:      22.72%;     /* 250/1100 */
    width:      250px;
}
/*--------------------------------------------------------------------*/
/* 固定ページコンテンツ標準レイアウト */
    /* 下層のh2.sectionTitleのアンダーラインを文字幅に合わせるためにdisplay:inline　→　左右中央寄せにするためのラッパー */


    /* 固定ページトップ画像 */
.pageTopImage{
    position:   relative;
}
.pageTopImage .title{
    font-size: 24px;
    font-family: "M PLUS Rounded 1c";
    font-weight:    normal;
    color: #fff;
    text-shadow:  0 0 10px rgba(255, 255, 255, .7);
}


section{
    margin-bottom:  50px;
}
.widthAll{
    width:  100%;
/*  min-width:      1600px; /*  */
    margin-left:    auto;
    margin-right:   auto;
}
img.all,
.widthAll img{
    max-width:      none;   /* 制限なし */
    width:          100%;
}
.widthFull{
    max-width:      1600px;
    margin-left:    auto;
    margin-right:   auto;
}
.widthLimit{
/*  max-width:  1100px;         /* 有効幅 */
    max-width:  1140px;         /* 下のpaddingの分を増やす */
    margin:     0px auto;
    padding-left:   20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
    padding-right:  20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
}
.noSideSpace{
    padding-left:   0px;
    padding-right:  0px;
}
.noSideSpace img{
    width:      100%;
}
.widthLimit1300{
    width:  100%;
    max-width:      1340px;
    margin-left:    auto;
    margin-right:   auto;
    padding-left:   20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
    padding-right:  20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
}
.widthLimit1000{
    max-width:  1040px;
    margin:     0px auto;
    padding-left:   20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
    padding-right:  20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
}
.widthNarrow{
    width:      800px;
    max-width:  1140px;         /* 下のpaddingの分を増やす */
    margin-left:    auto;
    margin-right:   auto;
    padding-left:   20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
    padding-right:  20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
}
.boxLeft{
    float:  left;
    width:  50%;
}
.boxRight{
    float:  right;
    width:  50%;
}
.widthLimit .boxLeft,
.widthLimit .boxRight{
    width:  47.72%;     /* 525/1100 */
/*  max-width:  525px;*/
}
.Sepa .boxLeft{
    width:          50%;        /* 515+35/1100 */
    padding-right:  3.18%;      /* 35/1100 */
    border-right:   1px solid #ccc;
/*  margin-right:   3.18%;      /* 35/1100 */
}
.Sepa .boxRight{
    width:          46.81%;     /* 515/1100 */
    padding-right:  0px;        /* 35/1100 */
    border-right:   none;
    margin-right:   0px;        /* 35/1100 */
}

.boxThirdCollapse{
    width:          33.333%;    /*  */
}
.boxThird{
    float:  left;
    width:          30.9%;  /* 340/1100 */
    margin-right:   3.63%;  /* 40/1100 */
}
.boxThird.last{
    margin-right:   0px;
}
.Sepa .boxThird{
    width:          32.27%; /* (320+35)/1100 */
    padding-right:  3.18%;  /* 35/1100 */
    border-right:   1px solid #ccc;
    margin-right:   3.18%;  /* 35/1100 */
}
.Sepa .boxThird.last{
    width:          29.09%; /* 320/1100 */
    padding-right:  0px;        /* 35/1100 */
    border-right:   none;
    margin-right:   0px;        /* 35/1100 */
}
.boxFour{
    width:  23.6%;          /* 260/1100 */
    margin-right:   1.86%;  /* 20/1100 */
    margin-bottom:  30px;
    position:   relative;
    background-color:   #fff;
    border:             1px solid #ccc;
}
.boxFour:nth-child(4n){
    margin-right:   0px;
}
.boxFour .text{
    padding:    20px;
    margin-bottom:  0px !important;
}
.boxFour .text p{
    margin-bottom:  0px !important;
}
.boxFour-no{
    width:  23.6%;          /* 260/1100 */
    margin-right:   1.86%;  /* 20/1100 */
    margin-bottom:  30px;
    position:   relative;
    background-color:   #fff;
}
.boxFour-no:nth-child(4n){
    margin-right:   0px;
}
.boxFour-no .text{
    padding:    20px;
    margin-bottom:  0px !important;
}
.boxFour-no .text p{
    margin-bottom:  0px !important;
}
.widthLimit .noSpace{
    width:  50%;
}
.widthLimit .Text{
    width:  65.45%;     /* 720/1100 */
}
.widthLimit .ImageRound,
.widthLimit .Image{
    width:  30.9%;      /* 340/1100 */
}
.widthLimit .Title{
    width:  25.45%;     /* 280/1100 */
}
.widthLimit .TitleText{
    width:  69.09%;     /* 760/1100 */
}
.Padding .Text{
    width:  62.5%;      /* 650/1040 */
}
.Padding .Image{
    width:  32.69%;     /* 340/1040 */
}
    /* 経歴用 */
.itemCareer .boxLeft{
    width:  25%;        /* 200/800 */
}
.itemCareer .boxRight{
    width:  71.25%;     /* 570/800 */
}
    /* これはWordPressのメディアのセレクタ */
img.Image.wp-post-image{
    width:      auto !important;
    max-width:  100% !important;
}


.inlineCenter{
    text-align: center;
    margin-bottom:  50px;
}
body.home .inlineCenter{
    margin-bottom:  35px;
}
.TLTLE,
h1:not(.head){                  /* .head 検索結果無かった時のタイトル */
    font-size: 24px;
    color:  #000;    /* Navy Blue 0168b7 */
    font-weight: bold;
    text-align: center;
    display:    inline;
    display:    inline-block;
/*
    padding-bottom: 15px;
    border-bottom:  1px solid rgb(0, 52, 102);
*/
    margin-left:    auto;
    margin-right:   auto;
    line-height:    1.5em;
}
h1.title{
    color:  #333;
}
    /* タイトル英語版 */
.titleEnglish{
    text-align:     center;
    font-size:      16px;
    font-weight: bold;
    color:          #02aaf0;    /* 薄い水色 */
    margin-bottom:  10px;
}

    /* :not()　→　除外するセレクタを指定 */
/*h2:not(.sectionTitle):not(.titlePage):not(.titleMain){    /*  */
h2:not(.sectionTitle){  
  font-size: 28px;
    margin:     0px auto 25px auto;
    color:      #333333;
    font-weight:    normal;
    line-height:    1.6em;
}
h2:not(.sectionTitle):not(.titlePage):not(.titleMain):not(.alignCenter):not(.company){
/*  letter-spacing: 8px;    /*  */
    letter-spacing: 3px;    /*  */
    border-left:        3px solid #ccc; /*  */
    padding-left:       10px;           /*  */
}
    /* AND条件　→　連結で記述 */
h3:not(.catch):not(.reasonTitle):not(.voiceTitle):not(.Title){
    font-size:  22px;
    margin:     0px auto 20px auto;
    color:          #fff;
    font-weight:    normal;
    background-color:   #4e94b2;   /* Navy Blue */
    padding:        5px 15px;
    line-height:    1.6em;
    letter-spacing: 1px;    /*  */
}
h4:not(.widget-title){
    position:   relative;
    font-size:  20px;
    margin:     0px auto 20px auto;
    color:      #333;
    font-weight:    normal;
    border-bottom:  1px solid #ccc;
    line-height:    1.7em;
    letter-spacing: 1px;    /*  */
}
h4:not(.widget-title)::after{
    content: ".";
    line-height: 0;
    display: block;
    overflow: hidden;
    position: absolute;
    bottom: -1px;
    width: 150px;
    border-bottom: 1px solid #333;
}
h5{
    font-size:  20px;
    margin:     0px auto 15px auto;
    color:      #333333;
    font-weight:    bold;
    line-height:    1.5em;
    letter-spacing: 1px;    /*  */
}
h6{
    font-size:  18px;
    margin:     0px auto 15px auto;
    color:      #5dbac0; /* Navy Blue */
    font-weight:    normal;
    line-height:    1.5em;
    letter-spacing: 1px;    /*  */
}
.titleUnderline{
/*  display:    inline-block;   /* これだと複数行ならない */
    display:    inline;         /* 複数行になるがmarginが効かない */
    font-size:  20px;
    margin:     0px auto 20px auto;
    font-weight:    bold;
    line-height:    1.5em;
    background:     linear-gradient(transparent 70%,#fff100 70%);
    letter-spacing: 1px;    /*  */
}
p.titleCheck{
    font-size:  20px;
    margin:     0px auto 20px auto;
    font-weight:    normal;
    line-height:    1.5em;
    letter-spacing: 1px;    /*  */
}
p.titleCheck i{
    margin-right:   10px;
    font-size:      30px;
    color:          #df2e05;
    vertical-align: bottom;
}
.Padding00{
    padding:    30px 0px;
}
.Padding{
    padding:    30px;
    border:     1px solid #cecece;
}
.Padding00:before,
.Padding00:after,
.Padding:before,
.Padding:after {
    content: "";
    clear: both;
    display: block;
}
.box_gray{
    background-color:   #f2f2f2;
    border:             none;
}
.box_green{
    background-color:   #e0eede;
    border:             none;
}
.box_blue{
    background-color:   #eff7f9;
    border:             none;
}
.box_brown{
    background-color:   #f5f2dd;
    border:             none;
}
.box_white{
    background-color:   #fff;
}
.box_padding{
    padding:            60px 0px !important;
}
.box_kadomaru{
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}
hr{
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin-top: 30px;
    margin-bottom:  30px;
}
hr.solid{
    border-top: 1px solid #cccccc;
}
hr.dotted{
    border-top: 1px dotted #cccccc;
}
table{
    width:              100%;
/*  border-top:         1px solid #cecece;*/
    border-left:        1px solid #cecece;
    fon-size:           13px;
}
table tr:first-child{
        /* <table>に設定するとレスポンシブ動作時にはみ出る */
    border-top:         1px solid #cecece;
}
table th{
    background-color:   #f2f2f2;
    font-weight:normal;
    font-size:  14px;
}
table th,
table td{
    padding:            20px 20px;
    vertical-align:     middle;
    border-right:       1px solid #cecece;
    border-bottom:      1px solid #cecece;
    font-size:  14px;
}
table.free-items{
    margin:     40px auto;
}
table.free-items th,
table.free-items td{
    padding:            15px 30px;
}
table.free-items th{
    font-weight:    normal;
    min-width:      150px;
}
table.leftTh th{
    width:      30%;
}
table.topTh th{
/*  width:      33.33%;*/
}
table .center{
    text-align: center;
}
table .right{
    text-align: right;
}

    /* 経歴用 */
.Career{
    max-width:      800px;
    margin-left:    auto;
    margin-right:   auto;
}
.itemCareer{
    padding:        30px 0px;
    border-bottom:  1px solid #ccc;
}
.itemCareer:first-child{
    border-top:     1px solid #ccc;
}
    /* 紹介用 */
.Introduce{
    max-width:      800px;
    margin-left:    auto;
    margin-right:   auto;
}
.itemIntroduce{
    padding:        15px 0px;
}
.itemIntroduce .boxLeft{
    width:  18.75%;     /* 150/800 */
    text-align: right;
}
.itemIntroduce .boxRight{
    width:  75%;        /* 600/800 */
}
    /* Q&A */
.QandA{
    max-width:      800px;
    margin-left:    auto;
    margin-right:   auto;
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}
.itemQandA{
    padding:        30px;
    background-color:   #e3fcfa;
    margin-bottom:      40px;
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}
.itemQandA .boxLeft{
    width:  10%;
}
.itemQandA .boxRight{
    width:  90%;
}
.itemQandA .mark{
    display:    inline-block;
    font-size: 30px;
    font-family: "Yu Gothic";
    font-weight: bold;
    padding:    7px 10px;
}
.itemQandA .Q{
    width:          100%;
    padding:        10px;
    background-color:   #64d0f8;
    margin-bottom:  10px;
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}
.itemQandA .Q .mark{
    color:              #64d0f8;
    background-color:   #fff;
}
.itemQandA .Q .boxRight{
  font-size: 18px;
  font-weight: bold;
}

.itemQandA .A{
    padding:        10px;
}
.itemQandA .A .mark{
    color:              #fff;
    background-color:   #4a7b9a;
}

.itemQandA p{
display: none;
}

    /* Q&A アコーディオン */
    /* https://webdesignday.jp/inspiration/technique/css/5316/ */
.Accordion .acd-check{
    display: none;
}
.Accordion .acd-label{
}
    /* 開くアニメ */
.acd-content{
    height: 0;
    max-height: 0px;
    opacity: 0;
    transition: 0.5s;
    visibility: hidden;
}
.acd-check:checked ~ .acd-label ~ .acd-content{
    height: auto;
    max-height: 1000px;
    opacity: 1;
    visibility: visible;
}
    /* acd-content 内部の処理 */
.acd-content.A{
    padding:    0px;
}
.acd-check:checked ~ .acd-label ~ .acd-content.A{
    padding-left:   10px;
}
.acd-content .boxLeft,
.acd-content .boxRight{
    max-height: 0px;
}
.acd-check:checked ~ .acd-label ~ .acd-content .boxLeft,
.acd-check:checked ~ .acd-label ~ .acd-content .boxRight{
    max-height: 1000px;
}
.acd-check ~ .acd-label .check:before{
    content:'+';
    font-size:  30px;
}
.acd-check:checked ~ .acd-label .check:before{
    content:'-';
    font-size:  50px;
}
.Accordion .Q .boxRight{
    width:  85%;
}
.Accordion .Q .boxCheck{
    width:  5%;
    text-align: right;
}
.Accordion .Q .boxCheck .check{
    text-align: right;
    color:      #fff;
}
    /* トップページを除く固定ページの本文と投稿の本文<a>は青 */
body.single .content a,
body.page:not(.home) .content a{
    color:          #04c;
    text-decoration:    underline;
}
    /* トップページを除く固定ページの<p>の下スペース */
body.single .content p,
body.page:not(.home) .content p{
    margin-bottom:      20px;
}
    /* セクションの背景色 ###BackColor */
.backColor {
    background-color:   #f2f2f2;
    padding-top:        60px !important;
    padding-bottom:     60px !important;
}
/*--------------------------------------------------------------------*/
/* トップページ各セクション */
    /* スライダーの直下の場合 */
body.home .container{
    padding-top:    100px;
    background: #fff !important;    /* パララックスのためのマスク：標準で付加 */

        /* 2021.2.22 1.4.6  */
        /* ヒーローヘッダーパララックス時にコンテンツ部の高さが2000px未満でコンテンツ最下部にmargin-bottomがあるとヒーローヘッダーが見える */
/*  padding-bottom: 0.01px; /* これでもよい　下で不具合が生じる場合はこちらを適用 */
    overflow: hidden;

}
    /* カルーセルの直下(隣接)の場合 */
body.home .textwidget + .container{
    padding-top:    30px;
}
body.home section{
    padding:        0px;
    position:       relative;
    margin-bottom:  80px;
}
body.home section .text{
    margin-bottom:  20px;
}
body.home #Toppage-Slider{
}
body.home section#TopSlowSlider{
    padding:        0px;
}
/* フルブラウザモード */
/* これは記事に設置した場合　#contentTop.container内に他の要素を混在はダメ
body.home #contentTop.container,
body.home #contentTop.container .wrap_main,
body.home #contentTop.container .content,
body.home section#TopSlowSlider,
body.home section#TopSlowSlider #wrapTopSlider,
body.home section#TopSlowSlider .hide640,
body.home section#TopSlowSlider .disp640,
body.home section#TopSlowSlider .unite-gallery{
*/
/* header.phpに設置した場合 */
body.home section#TopSlowSlider,
body.home section#TopSlowSlider #wrapTopSlider,
body.home section#TopSlowSlider .hide640,
body.home section#TopSlowSlider .disp640,
body.home section#TopSlowSlider .unite-gallery{
    height:     100% !important;
}
    /* 動画　###TopMovie  */
    /* 全画面で中心レスポンシブ */
body.home section#TopSlowSlider video{
    width:  100%;
    height: 100%;
    object-position: center center;
    object-fit: cover;
}
body.home section#TopSlowSlider .descriptionBig.lang-japan{
  font-size: 55px;
    font-family: "M PLUS Rounded 1c", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body.home section#TopSlowSlider .descriptionBig.lang-eng{
    font-size: 60px;
    font-family: 'Roboto', sans-serif;  /*  */
}
body.home section#TopSlowSlider .descriptionSmall{
    font-family: "M PLUS Rounded 1c", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
    /* メインビジュアル 2022.4.21 */
body.home section#TopMainVisual{
    padding-top:        80px;       /* marfin-topだと最上部ヒーローヘッダーパララックスが透けて見える　→　実害はないが */
    margin-bottom:      0px;
    background-color:   #fff;
}
body.home section#TopMainVisual .absOverCenter .verticalCenter{
    top: calc(50% + 40px);          /* padding-topの場合の上下中央位置調整 40pxはpadding-top:80pxの半分 */
}
body.home section#TopMainVisual #wrapTopImage img{
    width:      100%;
    height:     auto;
}
body.home section#TopMainVisual p{
    font-family: "M PLUS Rounded 1c", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body.home section#TopMainVisual .descriptionBig{
    font-size: 40px;
    margin-bottom:  30px;
}
body.home section#TopMainVisual .lang-eng {
/*  font-family: 'Roboto', sans-serif;                  /*  */
    font-family: 'M PLUS Rounded 1c','Roboto', sans-serif;
    color:      #fff;
}
body.home section#TopMainVisual .lang-jpn{
    color:      #fff;
    text-align: center;
}
body.home section#TopMainVisual .absOverCenter .verticalCenter .recept {
    text-align: center;
    font-size: 25px;
    font-weight: bold;
    color: #628728;
    margin-bottom: 10px;
}
section#TopMainVisual .btnGhost a {
    /* background-image: url("./images/common/triangle-black-white-20.png"); */
    background-image: none;
    background-color: transparent;
    color: #fff !important;
    border: 3px solid #fff;
    max-width: 280px;
    border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    font-family: "M PLUS Rounded 1c";
}
section#TopMainVisual .btnGhost a:hover{
    background-color: #bbb;
}
    /* トップページのヘッダーは上から降りてくるアクション */
body.home header{
/*  position:   fixed;      /* トップページだけはスライダーの上にかぶせるため　そうでないとPADRONEのようにするしかない */
    height: 0px;    /* なぜかこの部分も左端で動くので、高さを０にして誤魔化す */
}
body.home .drawer-navbar--fixed {
/*      position:   absolute;       /* トップページだけはスライダーの上にかぶせるため　そうでないとPADRONEのようにするしかない */
/*  top:    -80px;                  /*  */
/*  animation-delay:    1s;         /* この時間だけ最終形が表示されてしまうのでヤメ */
    animation-duration: 1.5s;
    animation-name: slidein;
}
@keyframes slidein {
    from {
/*      top: -70px;                     /* CPU */
       transform: translateY(-80px);    /* GPU */
/*      position:   absolute;       /* トップページだけはスライダーの上にかぶせるため　そうでないとPADRONEのようにするしかない */
    }

    to {
/*        top: 0px;                 /* CPU */
       transform: translateY(0px);  /* GPU */
/*      position:   fixed;      /* トップページだけはスライダーの上にかぶせるため　そうでないとPADRONEのようにするしかない */
    }
}
.RelativeBase{
    position:       relative;
}
section.navy{
    background-color:   #0168b7;    /* 0168b7 */
    color: rgb(255, 255, 255);
}
section.lightblue{
    background-color:   #a2d5f0;    /* lightblue */
}
section.gray{
    background-color:   #f2f2f2;    /* gray */
}
section .sectionTitle {
    font-size: 30px;
    color: rgb(0, 52, 102);
    text-align: center;
    display:    inline;     /* アンダーラインを文字幅に合わせるため */
    display:    inline-block;   /* 上位要素の<div>の高さを、この要素の高さ文確保するため */
    padding-bottom: 15px;
    border-bottom:  1px solid rgb(0, 52, 102);
    border-left:    none;
}
section.navy .sectionTitle {
    color: rgb(255, 255, 255);
    border-bottom:  1px solid #fff;
}
section.white .sectionTitle {
}
    /* */
    /* タイトル英語版 */
body.home .titleEnglish{
    text-align:     center;
    font-size:      16px;
    color:          #02aaf0;    /* 薄い水色 */
    margin-bottom:  40px;
}
    /* スライダー */
body.home #TopSlowSlider{
    position:   relative;
}
    /* マスク */
/*  マスクはsmart slider のtext barで実行
body.home #TopSlowSlider #wrapTopSlider .n2-ss-slider-3 .n2-ss-slide-backgrounds .n2-ss-background-image{
    background-color:   #02aaf0;
    filter:alpha(opacity=40);
    -moz-opacity:0.40;
    -khtml-opacity:0.40;
    opacity:0.40;
}
    /* スライダー　TEXT BAR のテキストを非表示 */
/*
.n2-style-1aa51820e61c9ca4ca8936156d849bba-simple .n2-ow .n2-ow,
.n2-style-a982203d8597a0f9060835ae9309810b-simple .n2-ow .n2-ow{
    display:    none;
}
*/
body.home .TableBase{
    display:    table;
}
.headerHero .v-center,
body.home .absOverCenter{
/*
    display:    table-cell;
    vertical-align: middle;
*/

    position:   absolute;
    width:      100%;
    height:     100%;
            /* 上下左右中央寄せ */
    top: 0px;
    left: 0px;
    bottom: 0px;
    right: 0px;
    margin: auto;

}
    /* 親要素に対して上下中央 */
.headerHero .v-center,
body.home .absOverCenter .verticalCenter{
    position:   absolute;
    width:      100%;
    top:        60%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
body.home .absOverCenter .verticalCenter p{
}
    /* キャッチ */
body.home #TopSlowSlider #catch{
}

    /* オーバーラップ */
body.home section .Overlay{
    position:   absolute;
    background-color:   rgba(0,0,0,0.5);
    bottom:     0px;
    padding:    10px 30px;
    color:      #fff;
    width:      100%;
    height:     100%;
}
    /* 基本要素 */
body.home section h5,
body.home section h6,
body.home section .text{
}
body.home section h5,
body.home section h6{
    text-align: center;
}
.titlePage.cWhite,
.cWhite{
    color:  #fff !important;
}

/* 各セクションの個別設定 */
section#TopCarousel{
    padding-top:    60px;   /* <header>の高さ */
    margin-bottom:  0px !important;
    background-color:   #fff;
}
    /* 画像部 */
section#TopCarousel .slick-list{
    margin-bottom:  25px;
}
    /* ドット */
section#TopCarousel .wpsisac-slick-carousal .slick-dots li button {
    background: #000 !important;
    border:     none;
}
section#TopCarousel .wpsisac-slick-carousal .slick-dots li.slick-active button {
    background: #b2b2b2 !important;
}
section#About .backImage{
    background-repeat:  no-repeat;
    background-size: cover;

    margin-bottom:  25px;
/*
    background-position: top center;
*/
    overflow: hidden;   /* 画像ズームしても枠からはみ出ないように */
}
section#About .backImage div{
    text-align: center;
}
.textCatch{
    text-align: center;
    line-height:    1.6em;
  font-size: 30px;
  font-weight:  bold;
    margin-bottom:  20px;
    margin-left:    auto;
    margin-right:   auto;
}
body.home .textSummary{
    font-size:  14px;
    color:      #333;
    margin-left:    auto;
    margin-right:   auto;
}
body.home #Philosophy{
/*
    background-image:   url("../../../images/top/sp/company-back.png");
    background-repeat:  no-repeat;
    background-position: center center;
    background-size:    cover;
*/
    padding:        0px;
    text-align:     left;
}
body.home #Philosophy .absBox{
}
body.home #Philosophy .textCatch,
body.home #Philosophy .textSummary{
    color:  #fff;
}
body.home .boxBlog a,
body.home .boxCoverSpace a{
    color:              #333;
    text-decoration:    none;
}

body.home #Consulting{
}
body.home #Consulting .textCatch{
    font-size:  28px;
    color:      #0c6ac1;
}
body.home #Finance-Insurance{
    padding:    0px !important;
}
body.home #Finance-Insurance #Finance{
    background-color:   #e4f6fe;
    padding:            50px 0px;
}
body.home #Finance-Insurance #Insurance{
    background-color:   #fef2e4;
    padding:            50px 0px;
}
body.home #Service{
/*  padding-top:    100px;  /*  */
}
.boxTow{
    width:          48%;        /* 575/1200  380/800*/
    margin-right:   4%;         /* 50/1200 */
    margin-bottom:  50px;
}
.boxTow:nth-child(2n){
    margin-right:   0px;        /*  */
}
body.home #Service .boxThree.last{
}
body.home #Service .boxThree .titleMerit{
    background-color:   transparent;
    padding:        0px;
    color:          #fff;
    font-size:      18px;
}
body.home #Service .boxThree .imageFB{
    text-align:     center;
}
body.home #Service .boxThree .Caption{
    position:           absolute;
    bottom:             0px;
    background-color:   rgba(0,0,0,0.7);
    padding:            20px;
    padding-bottom:     40px;
}
body.home #Service .boxThree .titleMerit a{
    display:            block;
    color:              #fff;
    background-repeat:  no-repeat;
    background-position: 95% center;
}
body.home #Service .boxThree .Caption .text{
    font-size:      14px;
    color:          #fff;
}
.boxTow img,
.boxThird img,
.boxThree img,
.boxFour img,
.boxImage img{
    display:    block;
    
    margin-left:    auto;
    margin-right:   auto;
    margin-bottom:  30px;
}

    /* お知らせ・ブログ */
section#NewsBlog .widthLimit{
    margin-bottom:  20px;
}
section#Consul-Contact .text,
section#Compensation-Lecture .text{
    padding:    20px;
}


    /* hover画像エフェクト */
    /* 画像がズーム　枠からはみ出ない　画像が黒でマスク透明度40% */
section#Affairs .backImage img {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);

  -webkit-transition: .2s ease-in-out;
  -moz-transition: .2s ease-in-out;
  -o-transition: .2s ease-in-out;
  -ms-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
}
section#Affairs .backImage:hover img {
    /* 画像をズーム */
    -webkit-transform: scale(1.15);
    -moz-transform: scale(1.15);
    -o-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);



    /* 画像部分を透明40%にすれば、.backImageのブラックが出現する ###BackBlack */
    filter:alpha(opacity=40);
    -moz-opacity:0.40;
    -khtml-opacity:0.40;
    opacity: 0.4;
}
section#Affairs .backImage:hover{
    /* 画像部分を透明40%にすると、.backImageのブラックが出現する ###BackBlack */
    background-color:   #000;
}

section#Affairs .btnGhost{
    display:    inline-block;
    position:   absolute;
        /* 上下中央寄せ */
    top: 50%;           /* 上端を半分位置へ */
    margin-top: -29px;  /* 高さの半分上へ */
/*  bottom: 0;*/    /* 上下中央はこれではダメ */

        /* なぜか左右中央寄せはこれでうまくいく */
    right: 0;
    left: 0;
}
/*  画像はフォアグラウンドへ
section#Affairs #Adviser .backImage{
    background-image:   url("../../../images/top/affairs-adviser.png");
}
section#Affairs #Agent .backImage{
    background-image:   url("../../../images/top/affairs-agent.png");
}
section#Affairs #Consulting .backImage{
    background-image:   url("../../../images/top/affairs-consulting.png");
}
section#Affairs #Establish .backImage{
    background-image:   url("../../../images/top/affairs-establish.png");
}
section#Affairs #Change .backImage{
    background-image:   url("../../../images/top/affairs-change.png");
}
section#Affairs #Fee .backImage{
    background-image:   url("../../../images/top/affairs-fee.png");
}
*/
    /* 税理士ご挨拶 */
section#Greeting .catch{
    color:      #fff;
}
section#Greeting .description{
    margin-bottom:  50px;
}
    /* 選ばれる理由 */
.reasonTitle{
  font-size: 20px;
  color: rgb(0, 145, 198);
  font-weight: bold;
  text-align: center;
    margin-bottom:  30px;
}
    /* お客様の声 */
body.home section#Voice{
    background-color:   #f2f2f2;
}
section#Voice .boxRight img{
    margin-bottom:  35px;
}
.voiceTitle {
  font-size: 26px;
  color: rgb(0, 145, 198);
  font-weight: bold;
    margin-bottom:  20px;
}
section#Voice .boxRight p{
    margin-bottom:  80px;
}
    /* お知らせ・ブログ */
section#NewsAndBlog .boxList .newList{
    margin-bottom:  50px;
}
/*--------------------------------------------------------------------*/
/* 固定ページ */
    /* ログイン */
body.login{
}
body.login .content{
    max-width:  1100px;
    margin-left:    auto;
    margin-right:   auto;
    padding-left:   30px;
    padding-right:  30px;
}
body.login .content .frontend-user-admin-login{
    max-width:  600px;
    width:      100%;
    margin-left:    auto;
    margin-right:   auto;
}
body.login .content .frontend-user-admin-login input#user_login,
body.login .content .frontend-user-admin-login input#user_pass{
    width:      100%;
    font-size:  16px;
}
    /* 黄色い表示 */
body.login .content .frontend-user-admin-login > div{
    display:    none !important;
}
    /* ログアウト */
body.login .content ul{
    max-width:  200px;
    margin-left:    auto;
    margin-right:   auto;
}
body.login .content ul li{
    text-align:     center;
}
body.login .content ul li a{
    
    font-size:      16px;
    padding:        15px 55px;
    color:          #000 !important;
    text-decoration:    none !important;
    border:         1px solid #ccc;
    text-decoration:    none;
    display:    inline-block;   /* 上位要素の<div>の高さを、この要素の高さ文確保するため */

    -webkit-transition:.3s ease-in-out;
    -moz-transition:.3s ease-in-out;
    -o-transition:.3s ease-in-out;
    transition:.3s ease-in-out;
}
body.login .content ul li a:hover{
/*  background-color: rgba(255,255,255,0.5);*/
    background-color: rgba(240,240,240,0.5);
        /* フォアグランドは透過しない */
    filter:alpha(opacity=100);
    -moz-opacity:1.00;
    -khtml-opacity:1.00;
    opacity:1.00;
}
/*--------------------------------------------------------------------*/
/* 下層ページのページトップ index.phpで設定 */
.titlePage{
    font-size:      32px !important;
    border:         none;
    font-weight:    bold  !important;
    font-family:    "M PLUS Rounded 1c", "YuMincho", "游明朝体", "游明朝", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    margin-bottom:  5px !important;
    line-height:    1.0em !important;
    color:          #509dbe !important;
}
.titleMain{
    font-size:      20px !important;
    margin-bottom:  0px !important;
    border:         none;
}
    /* サブタイトル */
.titleSub{
    background-color:   transparent !important;
    font-size:      14px !important;
    font-weight:    bold  !important;
    color:      #b4b4b4 !important;
    text-align: center;
    font-family: 'Roboto', sans-serif !important;
}

body.single-ctype02 .titleSub{
display:none;
}
body.single-ctype01 .titleSub{
display:none;
}

/*--------------------------------------------------------------------*/
/* アーカイブ */
body.page-id-251 .wrap_main,    /* 混在一覧ページ */
body.archive .wrap_main,
body.error404 .wrap_main,
body.search .wrap_main,
body.single .wrap_main{
    margin-bottom:  50px;
}
.listWrap{
    border-top: 1px solid #ccc;
    padding-top:    20px;
    margin-bottom:  50px;
}
.listRect{
    background-image:   url("../../../images/common/archive-arrow-right.png");
    background-repeat:  no-repeat;
    background-position: 95% center;
}
.listRect span{
    display:    inline-block;
}
.listRect .date{
    width:      80px; 
    color:      #ccc;
    margin-right:   25px;
}
.listRect .post-type{
    width:      100px; 
    background-color:   #0168b7;    /* navy blue */
    margin-right:   25px;
    text-align:     center;
}
.listRect .post-type a{
    color:      #fff ;
    display:    block;
    font-size:  12px;
}
.listRect .title a{
}
    /* XFMT_BLOG XFMT_NEWS */
    /* 個別ページのタイトルボックス */
.wrapBlog{
    border-top: 1px solid #ccc;
    padding-top:    20px;
    margin-bottom:  50px;
}
.boxBlog{
    position:       relative;
    background-image:   url("./images/common/archive-arrow-right.png");
    background-repeat:  no-repeat;
    background-position: 97% 40%;
    padding-bottom: 20px;
    border-bottom:  1px solid #ccc;
    margin-bottom:  20px;
}
body.single .boxBlog{
    background-image:   none;
    border-top: 1px solid #ccc;
    padding-top:    20px;
    margin-bottom:  45px;
}
    /* 右矢印 */
    /* :after で position: absolute; とすると、float動作に支障が出る */
/*
.boxBlog:after{
    position: absolute;
    top: 25%;
    right: 25px;
    margin-left: 0px;
    font-size: 40px;
    font-weight: lighter;
    font-weight: 100;
    content: ">";
    font-family: 'Major Mono Display', monospace;
}
*/
    /* display:flex　はやめておく　2019.2.21 */
    /* 回り込みモードにする */
.boxBlog .boxBlogLeft{
/*  flex-basis:     80px;   /*  */
    float:          left;
    width:          80px;
    margin-right:   20px;
}
.boxBlog .boxBlogRight{
/*  flex-basis:  auto;      /* これは残りすべての幅になるのではなく、内包する要素が格納できるだけの幅しか確保されない */
/*
    float:      right;
*/
    width:      calc(100% - 50px);
}

.boxBlog .title{
    border:         none;
    padding:        0px;
    margin-bottom:  0px;
}
.boxBlog .meta{
    font-size:      12px;
    margin-bottom:  5px;
}
.boxBlog .meta .linkCate{
}
.boxBlog .meta .linkCate a{
    background-color:   #509dbe;
    text-align:     center;
    padding:        5px 25px;
    color:          #fff;
    text-decoration:    none;
}
.boxBlog .meta .date{
    color:  #888;
    
}
.boxBlog .text{
    margin-bottom:  0px !important;
}
.boxBlog .text a{
    display:    block;
}
    /* XFMT_FLEX */

    /* XFMT_SQUARE */
    /* XFMT_BKNUM */
.boxCoverThree .title{
    background-color:   transparent !important;
    font-size:          13px !important;
    padding:            5px 0px !important;
}
.boxSquare{
    float:  left;
    margin-bottom:  30px;
}
.boxSquare:nth-child(4n){
/*  margin-right:   0px;    */
}
.boxSquare .image,
.boxSquare .TxoTerm{
    margin-bottom:  5px;
}
.boxSquare .title{
    background-color:   transparent !important;
    padding:            0px !important;
    font-size:          15px !important;
    text-align:         left;
    margin-bottom:      0px !important;
}
.boxSquare .TxoTerm,
.boxSquare .TxoTerm a{
    font-size:  13px;
    color:      #02aaf0;    /* 薄い水色 */
}
    /* ページ送り */
.listPagination{
    margin-top: 50px;
}
.listPagination .counter{
    display:    none;
}
.pagination{
    text-align: center;
}
.pagination .page-numbers {
    display:    inline-block;
    padding:    5px 8px;
    background-color:   #888;
    color:      #fff;
    font-size:  10px;
    line-height:    1em;
}

.pagination .page-numbers.current {
    border:1px solid #dcdbcb;
    background-color:   #fff;
    color:      #333;
}
.pagination .page-numbers.first,
.pagination .page-numbers.prev,
.pagination .page-numbers.next,
.pagination .page-numbers.last{
    background-color:   #fff;
    color:      #333;
}
.pagination .page-numbers.first,
.pagination .page-numbers.last{
    display:    none;
}
/*--------------------------------------------------------------------*/
/* 個別ページ */
body.blog .widthLimit,
body.archive .widthLimit,
body.single .widthLimit{
    margin-bottom:  50px;
}
body.single .pageTitle{
    padding-top:    25px;
    border-top:     1px solid rgb(0, 52, 102);
    border-bottom:  1px solid rgb(0, 52, 102);
    margin-bottom:  40px;
}
body.single .pageTitle .titleSingle{
    border-left:    none;
    padding:        0px;
    margin:         0px;
    margin-bottom:  15px;
  font-size: 24px;
  color: rgb(0, 52, 102);
}
body.single .pageTitle .category{
    margin-bottom:  15px;
}
body.single .pageTitle .date{
    text-align:     right;
}
body.single .pageImage{
    margin-bottom:  30px;
}
    /* 本文 */
body.single .content{
    margin-bottom:  40px;
}
body.single .content .alignleft,
body.single .content .alignnone,
body.single .content .alignright{
    margin-bottom:  20px;
}
body.single .wrapImage{
    margin-bottom:  20px;
}
    /* SNS */
body.single .addtoany_share_save_container{
    margin-top: 50px;
    text-align: right;
}
    /* 前後記事リンク */
body.single .postPagenation{
    margin-top:     40px;
    border-top:     1px solid #ccc;
    padding-top:    15px;
    padding-bottom: 15px;
    border-bottom:  1px solid #ccc;
}
body.single .postPagenation .prev,
body.single .postPagenation .next{
    background-repeat:  no-repeat;
    width:  50%;
}
body.single .postPagenation .prev{
    background-image:   url("./images/common/post-arrow-prev.png");
    background-position: left center;
}
body.single .postPagenation .next{
    background-image:   url("./images/common/post-arrow-next.png");
    background-position: right center;
    border-left:    1px solid #ccc;
}
body.single .postPagenation .none{
/*  display:    none;   /* これだと要素がなくなるのでダメ */
    background-image:   none;
}

body.single-pt_voice .postPagenation{
    max-width:  800px;
    margin-left:    auto !important;
    margin-right:   auto !important;
}
body.single .postPagenation hr{
    display:    none;
}
body.single .postPagenation a{
    display:    block;
    padding:        15px 60px 15px 40px;
    color:      #333;
    text-decoration:    none;
}
body.single .postPagenation .next a{
    text-align: right;
}
    /* コメント（存在しない場合はこの要素はないのでtopにスペース） */
#Comments{
    margin-top:     50px;
}
/*--------------------------------------------------------------------*/
/* メールフォーム */
.wpcf7-form,
.mw_wp_form{
  max-width: 960px;
  margin-left:  auto;
  margin-right: auto;
}
body.page-template-templete-EntryFormOptimization .wpcf7-form,
.formComplete,
body.page-template-templete-EntryFormOptimization .mw_wp_form{
  max-width: 800px;     /* ###jd-recruiting.com */
}
.formComplete{
  margin-left:  auto;
  margin-right: auto;
  margin-bottom:    50px;
}
.mw_wp_form .formTitle{
    background-color:   transparent !important;
    padding:    0px !important;
    color:      #333 !important;
    font-weight:    bold !important;
}
.mw_wp_form .formDescription{
    display:        none;
    margin-bottom:  50px;
}
.mw_wp_form_input .formDescription{
    display:    block;
}
body.page-template-templete-EntryFormOptimization .mw_wp_form .formTitle,
body.page-template-templete-EntryFormOptimization .mw_wp_form .formDescription{
    max-width: 720px;
    margin-left:    auto;
    margin-right:   auto;
    padding:        0px 10px !important;
}
body.page-template-templete-EntryFormOptimization .mw_wp_form .formDescription .far{
    color:      #d22c00;    /* 赤 */
    font-size:  20px;
    margin-right:   5px;
    vertical-align: middle;
}
body.page-template-templete-EntryFormOptimization .mw_wp_form .formDescription .desc{
    border:     1px solid #ccc;
    padding:    30px;
}
.mw_wp_form .close-up{
  font-size: 36px;
  color: rgb(11, 216, 209); /* エメラルドグリーン */
  line-height:  1.5em;
}

.form{
    margin-bottom:  30px;
}

    /* 状態表示　画像 640px以上で使用*/
.step1,.step2,.step3{display:none;}

.mw_wp_form_input .step1{display:block;}
.mw_wp_form_confirm .step2{display:block;}
.mw_wp_form_complete .step3{display:block;}

.m-form-status{
    box-shadow: none !important;
}
.m-form-status div{
    border: none !important;
    width:  100% !important;
}
.m-form-status div img{
    margin-left:    auto;
    margin-right:   auto;
}

    /* 状態表示　CSS　640px以下で使用 */
.m-form-status-first.is-current{    display:none;}
.m-form-status-first.normal{        display: block; }
.mw_wp_form_input .m-form-status-first.normal{      display: none; }
.mw_wp_form_input .m-form-status-first.is-current{      display: block; }

.m-form-status-second.is-current{   display:none;}
.m-form-status-second.normal{       display: block; }
.mw_wp_form_confirm .m-form-status-second.normal{       display: none; }
.mw_wp_form_confirm .m-form-status-second.is-current{   display:block;}


.m-form-status-third.is-current{    display:none;}
.m-form-status-third.normal{        display: block; }
.mw_wp_form_complete .m-form-status-third.normal{       display: none; }
.mw_wp_form_complete .m-form-status-third.is-current{   display:block;}

/* EFO Status */
.formStatus{
    margin-bottom:  50px;
}
.formStatus .boxStepLeft,
.formStatus .boxStepRight{
    width:  49%;
    
}
.formStatus .boxStepLeft{
    margin-right:   2%;
}
.formStatus img{
    width:  100%;
}
.formStatus .tryangle{
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 28.5px 0 28.5px 17px;
    border-color: transparent transparent transparent #33add4;
}
    /*  */
.mw_wp_form dl.m-form{
    border-left:    none;
    border-right:   none;
}
body.page-template-templete-EntryFormOptimization .mw_wp_form dl.m-form{
    margin-bottom:  30px;
    border:         1px solid #ccc;
}
.mw_wp_form dl.m-form dt{
    background-color:   #d3e9ec;    /* original=#d4f5fb */
    
}
body.page-template-templete-EntryFormOptimization .mw_wp_form dl.m-form dt{
    width:  30%;    /* 240/800 */
    height: 82px;
}
body.page-template-templete-EntryFormOptimization .mw_wp_form dl.m-form dd{
    width:  70%;    /* 240/800 */
    height: 82px;
}
.mw_wp_form dl.m-form dt.gray{
    background-color:   #f2f2f2;
}
.mw_wp_form dl.m-form .border-none input{
    border:             none;
    background-color:   transparent;
    font-size:          18px;
}
.memo{
    font-size:  12px !important;
    margin-bottom:  0px !important;
}
.mw_wp_form_confirm .memo,
.mw_wp_form_complete .memo{
    display:    none;
}
.m-media p{
    margin-bottom:  0px !important;
}
    /* preは通常折り返さない　折り返すようにする */
.mw_wp_form pre{
    white-space: pre-wrap;
}
.mw_wp_form pre .widthNarrow{
    width:  100% !important;
}
.m-media {
/*
  font-size: 0;
  letter-spacing: 0;
*/
  width: 100%;
}
.m-media p.comfirm-none{
    margin-bottom:  0px !important;
}
.form dl{
    border-bottom:  1px solid #ccc;
}
.m-media dt {
  display: inline-block;
  letter-spacing: normal;
  width: 25%;
  padding:  20px;
}
body.page-template-templete-EntryFormOptimization .m-media dt{
  padding:  10px 20px;
}
.m-media > *:last-child {
/*  margin-left: 3%;*/
}
.m-media dd {
  display: inline-block;
  letter-spacing: normal;
  width: 75%;
  padding:  20px;
}
body.page-template-templete-EntryFormOptimization .m-media dd{
  padding:  10px 20px;
}
.m-media input[type="tel"],
.m-media input[type="text"],
.m-media input[type="email"],
.m-media textarea{
    padding:    5px;
    width:      50% !important;
}
body.page-template-templete-EntryFormOptimization .m-media input[type="tel"],
body.page-template-templete-EntryFormOptimization .m-media input[type="text"],
body.page-template-templete-EntryFormOptimization .m-media input[type="email"],
body.page-template-templete-EntryFormOptimization .m-media textarea{
    padding:    10px;
}
body.page-template-templete-EntryFormOptimization .m-media input.error-item,
body.page-template-templete-EntryFormOptimization .m-media textarea.error-item{
    background-color:   #fdf2f0;
    border:             1px solid #f00;
}
.m-media textarea{
    width:      100% !important;
}
.m-media .m-form-span-required{
    margin-left:    10px;
    color:          #fff;
}
body.page-template-templete-EntryFormOptimization .m-media .m-form-span-option,
body.page-template-templete-EntryFormOptimization .m-media .m-form-span-required{
    background-color: #fd0505;  /* ###jd-recruiting.com */
    line-height:        1.7em;
}
body.page-template-templete-EntryFormOptimization .m-media .m-form-span-option{
    background-color: #33add4;
}
.m-form-span-option::before {
    content: "任意";
}
body.page-template-templete-EntryFormOptimization [class^="m-form-span-"] {
    border-radius: 5px !important;
    font-size:  12px;
    padding:    0px 20px !important;
    margin-top: 4px;
}
    /* 未入力の場合の「ご記入ください」 */
body.page-template-templete-EntryFormOptimization .m-media dd{
    position:   relative;
}
body.page-template-templete-EntryFormOptimization .m-media dd .addItem{
    position:   absolute;
    color:      #f00;
    background-color:   #fff;
    padding:    0px 3px;
}
body.page-template-templete-EntryFormOptimization .m-form .error {
    position: absolute;
    background-color: #fff;
}
.m-media input,
.m-media select{
    font-size:  15px;
    font-family:    'Yu Gothic'
}
.m-media .mail{
    margin-bottom:  20px;
}
.m-media .m-form-privacy{
    width:          100% !important;
    max-width:      670px !important;
    padding:        10px;
}
.m-media .m-form-privacy pre{
    margin-top:     8px;
}
.mw_wp_form_confirm .comfirm-none{
    display:    none;
}
.formBottom{
    width:  100%;
    max-width:  620px;
    margin-left:    auto;
    margin-right:   auto;
    padding:        0px 10px !important;
    margin-bottom:  50px;
}
.m-form-buttons{
    text-align: center;
}
.mw_wp_form .m-form-buttons {
    margin: 50px 0px 80px;
}
.m-form-buttons input{
    padding:    20px;
    font-size:  20px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
body.page-template-templete-EntryFormOptimization .m-form-buttons input{
    width:      100%;
    margin:     0px !important;
}
.m-form-buttons input:hover{
    filter:alpha(opacity=70);
    -moz-opacity:0.70;
    -khtml-opacity:0.70;
    opacity:0.70;
}
.Security{
    font-size:  13px;
}
.Security img{
    float:  left;
    margin-right:   20px;
}
.Security .title{
    font-weight:    bold;
    font-size:      15px;
    margin-bottom:  5px;
}

body.page-template-templete-EntryFormOptimization .m-form-buttons p{
    text-align: center;
}
body.page-template-templete-EntryFormOptimization .m-form-buttons input{
    background-image:   url("./images/common/tryangle-right-white.png");
    background-repeat:  no-repeat;
    background-position: 95% center;
    border-radius: 20px;        /* CSS3草案 */  
    -webkit-border-radius: 20px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 20px;   /* Firefox用 */  
}
    /* float解除しないと枠線が出ない */
body.contact .m-form-status:before,
body.contact .m-form-status:after {
    content: "";
    clear: both;
    display: block;
}
body.contact .m-form-status div > div::after{
    /* スクロールするとひし形がグロナビの前面に出るのを抑制 */
    z-index:    1;
}
/*--------------------------------------------------------------------*/
/* 404.php no-result.php */
    /* 会員専用ログイン */
/*
#linkMemberLogin{
    margin-top:     100px;
    border-top:     1px solid #ccc;
    padding:        30px;
    border-bottom:  1px solid #ccc;
    background-color:   #f2f2f2;
}
#linkMemberLogin p{
    margin-bottom:  20px;
}
#linkMemberLogin a{
    color:          #04c;
    text-decoration:    underline;
    font-size:      20px;
}
*/
.error{
}
.error p{
    margin-bottom:  20px;
}
.error a{
    color:              #04c;
    text-decoration:    underline;
    font-size:          20px;
}
/*--------------------------------------------------------------------*/
/* サイドバー */
.boxSide .widget,
#sidebar .widget{
    margin-bottom:  50px;
}
.boxSide .widget:last-child,
#sidebar .widget:last-child{
    margin-bottom:  0px;
}

.boxSide .widget .blog-side-title,
#sidebar .widget .blog-side-title{
    color:              #fff;
    background-color:   #509dbe;
    text-align:     center;
    font-weight:    normal;
    font-size:      16px;
    line-height:    2.8em;
    margin-bottom:  25px;
}
    /* マーカー */
/*
.boxSide .widget ul li:before,
#sidebar .widget ul li:before{
    content:    '>';
    margin-left:    -14px;
    margin-right:   5px;
}
*/
.boxSide ul,
#sidebar ul{
    margin-left:    15px;
}
.boxSide .widget ul li,
#sidebar .widget ul li{
    background-repeat:  no-repeat;
    background-position: left center;
    background-image:   url("./images/common/side-menu-marker.png");
    padding-left:   15px;
    margin-bottom:  15px;
}

.boxSide .widget ul li ul.sub-menu,
#sidebar .widget ul li ul.sub-menu{
    margin-top: 10px;
}
.boxSide .widget ul li ul.sub-menu li:before,
#sidebar .widget ul li ul.sub-menu li:before{
/*  list-style-type:    disc;   /* これでやらない */
    content:    '・';
    margin-left:    -14px;
/*  margin-right:   0px;*/
}
.boxSide .widget ul li ul li,
#sidebar .widget ul li ul li{
    margin-bottom:  0px;
}
#sidebar ul li a{
    display:    block;
}
#sidebar #text-2 ul li a{
    color:      #1abcf8;
}
    /* 関連リンク */
#sidebar .widget .menu-externallink-container ul li{
    background-image:   none;
    list-style-type:    disc;
    list-style-position:    inside;
    padding-left:       10px;
  color: rgb(5, 147, 200);  /* マーカーの色 */
    margin-bottom:  10px;
}
#sidebar .widget .menu-externallink-container ul li a{
    display:    inline-block;   /* マーカーと改行される */
  font-size: 12px;
  font-family: "M PLUS Rounded 1c";
  color: rgb(5, 147, 200);
}

/*--------------------------------------------------------------------*/
/* フッター */
footer{
    background-color:   #2e98e4;    /* 水色 */
    color:              #fff;
}
footer section{
    padding:        60px 0px !important;
    margin-bottom:  0px !important;
}
footer section .widthLimit{
    margin-bottom:  0px !important;
}
footer section#CTA{
}
footer section#CTA .widthLimit{
    max-width:  1200px;
    max-width:  1240px; /* 左右padding:20の分を増やす */
}
footer section#CTA .boxFlex{
    width:      48%;
    max-width:  580px;
    
}
    /* 背景画像で右矢印 */
footer section#CTA .arrow-right-blue{
    background-image:   url("./images/common/arrow-right-blue.png");
    background-repeat:  no-repeat;
    background-position: 95% center;
}
footer section#CTA .boxFlex.alignLeft{
    margin-right:   auto;   /* 左寄せ */
}
footer section#CTA .boxFlex.alignRight{
    margin-left:    auto;   /* 右寄せ */
}
footer section#CTA .boxLeft{
    float:      left;
    width:      48%;
    max-width:  580px;
    text-align: right;
}
footer section#CTA .boxRight{
    float:      right;
    width:      48%;
    max-width:  580px;
    text-align: left;
}
footer section#CTA a{
    background-color:   #fff;
    color:          #2e98e4 !important; /* 水色 */
    font-size:      24px;
    font-weight: bold;
    border:         none;
    width:          100%;
    max-width:      580px;
    height:         120px;
    padding:        35px 10px;
    text-align:     center;
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}

footer section#CTA a .small{
    font-size:      12px;
}
    /* font after で矢印 */
body.home footer section#CTA .btnGhost a{
    background-image:   none;
}
footer section#CTA a.arrowFont{
    position:   relative;
}
footer section#CTA a.arrowFont:after{
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0px;
    margin-left: 0px;
    font-size: 80px;
    font-weight: lighter;
    font-weight: 100;
    content: ">";   /* > */
    font-family: 'Major Mono Display', monospace;
    color:          #2e98e4 !important; /* 水色 */
}
footer section#CTA a.arrowFont.noArrow:after{
    content: none;  /* 矢印無し */
}
        /* 4つのバナー */
footer section#Banners{
    padding:        50px 0px !important;
    background-color:   #fff;
}
    /*  */
footer section#Banners .box4{
    width:          23.5%;
    margin-right:   2%;
}
footer section#Banners .box4:last-child{
    margin-right:   0px;
}
footer section#LOGO{
    position:   relative;
    padding-bottom: 0px !important;
}
footer section#LOGO p{
    text-align: center;
}
footer section#Menu{
}
footer section#Menu #boxCompany{
    width:          40%;        /* 450px/1100 */
    margin-left:    0px;
    margin-right:   auto;   /* 180/1100 */
}
section#Menu #boxMenu{
    width:          60%;
    margin-left:    0px;
    margin-right:   auto;   /* 180/1100 */
}
section#Menu #boxCompany .company{
    color:  #fff;
    margin-bottom:  0px;
    font-size:  20px;
    height:     2em;
    line-height:    2em;
}
section#Menu #boxCompany p{
    font-size:  12px;
}
section#Menu .footer-nav{
    width:          50%;
/*  margin-right:   12%;    /* 130px/1100 */
}
section#Menu .footer-nav:last-child{
    margin-right:   0px;
}
section#Menu .footer-nav .menu-item a{
    color:  #fff;
}

.drawer-menu #shikaBanner3 p,               /* スマホグロナビ */
section#Menu #menuTitle #shikaBanner3 p{
    background-color:   #f2f2f2;    /* light gray */
    color:              #0168b7;    /* 0168b7 */
    text-align:         center;
    width:              100%;
    background-repeat:  no-repeat;
    background-position: top left;
    background-size: contain;
}
.drawer-menu #shikaBanner3 p a,             /* スマホグロナビ */
section#Menu #menuTitle #shikaBanner3 p a{
    color:              #0168b7;    /* 0168b7 */
    display:            block;
}
section#Menu .footer-nav a{
    font-size: 12px;
    text-decoration:    none;
}
section#Menu ul.menu_footer > li.menu-item-has-children > a{
}

section#Menu ul.sub-menu{
    margin-left:    15px;
    list-style:     disc;
}
section#Menu ul.sub-menu li{
}
section#Menu ul.sub-menu li.current-menu-item{
    text-decoration:    underline;
}
section#Menu ul.sub-menu ul.sub-menu{
    margin-top:     0px;
    padding-left:   20px;
}
section#Menu ul.sub-menu ul.sub-menu li {
    margin-bottom:  0px;
    list-style-type:    disc;
}
section#Menu #footer-nav-foot4 #menu-item-189{
    margin-top: 30px;
}
footer section#SNS{
    text-align: center;
    padding:    30px 0px 20px !important;
}
    /* ###FooterSNS */
footer section#SNS a{
    margin-right:   50px;
}
    /* ###FooterSNS */
footer section#SNS a:last-child{
    margin-right:   0px;
}
footer section#SNS i{
    font-size:      55px;
    color:          #fff;   /* ###FooterSNS */
}
footer section#SNS i:last-child{
    margin-right:   0px;
}
footer #Bottom{
    padding:    10px 0px !important;
}
footer .copyright{
    font-size:  12px;
    text-align: center;
}
body.page-template-templete-EntryFormOptimization footer{
    border-top:         1px solid #ccc;
    background-color:   #fff;
}
body.page-template-templete-EntryFormOptimization footer #Bottom{
    padding:    20px 0px !important;
}
body.page-template-templete-EntryFormOptimization footer .copyright{
    color:  #333;
}
.pageTop{
    position:   fixed;
    right:      10px;
    bottom:     10px;
    float:      right;
    display:    none;
    z-index:    100000;
}
.sideFixedContact{
    position:   fixed;
    right:      0px;
    top:        130px;
    display:    none;
}
body.home .sideFixedContact{
    display:    block;
}
@media screen and (max-width: 1600px) {
    .drawer-container {
        padding-left: 20px;
        padding-right: 20px;
    }
}
@media screen and (max-width: 1100px) {
    .drawer-navbar .drawer-menu > li {
        margin-right:   15px;   /* 隣の項目との位置関係 */
    }
    header .btnWipe .more_button{
        width:          130px;
        text-align:     left;
        padding-left:   5px;
    }

    /* カルーセルコントローラーの位置 */
        .wpsisac-slick-carousal-wrp .design-6 button.slick-prev{
            left:   0px !important; /*  */
        }
        .wpsisac-slick-carousal-wrp .design-6 button.slick-next{
            right:  0px !important; /*  */
        }


    /* カルーセル内のオーバーラップ　タブレットでPCの要素（歯科医先生４列横隊）を表示することもあるので */
    body.home #Voice .overWrap{
        padding:    10px 0px;
        font-size:  12px;
    }

        /* サイドのスペース */
    footer section{
        padding-left:   20px;
        padding-right:  20px;
    }
        /* 4つのバナー */
    footer section#Banners{
        padding-left:   0px;
        padding-right:  0px;
    }
    footer section#Banners .widthLimit{
        padding-left:   20px;
        padding-right:  20px;
    }
}
@media screen and (max-width: 1024px) {

    /* スタティックメインビジュアル */
    body.home section#TopMainVisual .descriptionBig{
        font-size:      25px;
        line-height:    1.2em;
        margin-bottom:  20px;
    }

        /* 4つのバナー */
    footer section#Banners .box4{
        width:          48%;
        margin-right:   4%;
        margin-bottom:  20px;
    }
    footer section#Banners .box4:nth-child(2n+1){
        text-align:     right;
    }
    footer section#Banners .box4:nth-child(2n){
        margin-right:   0px;
    }
    footer section#Banners .box4:nth-child(3),
    footer section#Banners .box4:nth-child(4){
        margin-bottom:  0px;
    }

}
@media screen and (max-width: 960px) {
    .wpcf7-form,
    .mw_wp_form{
      width: 100%;
      padding:  0px 10px;
    }
    body.page-template-templete-EntryFormOptimization .wpcf7-form,
    body.page-template-templete-EntryFormOptimization .mw_wp_form{
      padding:  0px;
    }
}
@media screen and (max-width: 767px) {/* ■■■ 【ブレークポイント】 ■■■ */
    /* スマホメニュー */
    .drawer-container {
        padding-left: 0px;
        padding-right: 0px;
    }
    .drawer--navbarTopGutter {
/*      padding-top: 70px;  /* ###SP-menu-item-height  70 */
        padding-top: 60px;  /* ###SP-menu-item-height  60 */
    }
    .drawer-navbar {
/*      height: 71px;       /* ###SP-menu-item-height  70 */
/*      line-height: 70px;  /* ###SP-menu-item-height  70 */
        height: 61px;       /* ###SP-menu-item-height  60 */
        line-height: 60px;  /* ###SP-menu-item-height  60 */
    }

    /* ヘッダー部 */
    .drawer-navbar .drawer-navbar-header {
/*      height:         70px;   /* ###SP-menu-item-height  70 */
/*      line-height:    70px;   /* ###SP-menu-item-height  70 */
        height:         60px;   /* ###SP-menu-item-height  60 */
        line-height:    60px;   /* ###SP-menu-item-height  60 */
    }
        /* ロゴを小さく */
    #logo .LogoBanner{
/*      max-width: 100px;   */
        height: 33px !important;
    }
        /* 位置調整 */
    .drawer-navbar #logo {
        padding-top: 13px;      /* ###SP-menu-item-height  70 これに関連して上のスペースを詰める */
    }

    /* メニュー部 */
    .drawer-navbar .drawer-nav {
        float: none;
        height:         auto;   /* ###PC-Header-Height 同じにすること */
        line-height:    auto;   /* ###PC-Header-Height 同じにすること */
/*      padding-top:    70px;   /* ###SP-menu-item-height  70 */
        padding-top:    60px;   /* ###SP-menu-item-height  60 */
    }
    /* 【重要】ドロップダウンのスクロールを可能にするスペース */
    .drawer-navbar .drawer-menu {
        padding-bottom: 400px;
    }
    .drawer-navbar .drawer-menu > li {
        margin-right:   0px;    /* 隣の項目との位置関係 */
    }
        /* ハンバーガーの外形 */
    .drawer-hamburger {
        position:   absolute;   /* これしないとスライドインしない */
/*      padding-top: 30px;
        padding-top: 25px;      /* ###SP-menu-item-height  70 これに関連して上のスペースを詰める */
        padding-top: 19px;      /* ###SP-menu-item-height  60 これに関連して上のスペースを詰める */
        padding-right: 20px;
/*      padding-bottom: 38px;
/*      padding-bottom: 33px;   /* ###SP-menu-item-height  70 これに関連して下のスペースを詰める */
        padding-bottom: 28px;   /* ###SP-menu-item-height  70 これに関連して下のスペースを詰める */
        padding-left: 20px;
        background-color:   #2e98e4;    /* 水色 */
        width:          40px;   /* 80-20x2 */
    }
    .drawer-hamburger:hover {
        background-color:   #2e98e4;    /* 水色 */
    }
        /* ハンバーガー「三」の色と形状 */
    .drawer-hamburger-icon, .drawer-hamburger-icon::before, .drawer-hamburger-icon::after {
        width: 100%;
        height: 2px;
        background-color: #fff;
    }
    .drawer-hamburger-icon::before {
        top: -12px;
    }
    .drawer-hamburger-icon::after {
        top: 12px;
    }

        /* スマホでは「トップページ」項目を表示する */
    .drawer-navbar .drawer-menu > li:first-child{
        display:    block;
    }
    .drawer-navbar .drawer-menu{
        border-top: 1px solid #ccc;
    }
    .drawer-navbar .drawer-menu li {
        padding-top:    0px;    /* ↓.drawer-navbar .drawer-menu-item{line-height} と加算して80px     ###PC-Header-Height 同じにすること */
        border-bottom:  1px solid #ccc;
    }
    .drawer-navbar .drawer-menu li.drawer-dropdown {
/*      line-height:    46px;   /* ###SP-menu-item-height  padding 12+12 で70 */
        line-height:    36px;   /* ###SP-menu-item-height  padding 12+12 で60 */
    }
    .drawer-navbar .drawer-menu-item {
    /*  line-height:    60px;   /* ↑.drawer-navbar .drawer-menu li{padding-top} と加算して80px       ###PC-Header-Height 同じにすること */
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }
    .drawer-navbar .drawer-menu-item {
/*      line-height:    60px;   /* ↑.drawer-navbar .drawer-menu li{padding-top} と加算して80px       ###PC-Header-Height 同じにすること */
/*      line-height:    46px;   /* ###SP-menu-item-height  padding 12+12 で70 */
        line-height:    36px;   /* ###SP-menu-item-height  padding 12+12 で70 */
        border-bottom:  none;
    }
    .drawer-navbar .drawer-menu-item.current-menu-item,
    .drawer-navbar .drawer-menu-item:hover {
        border-bottom:  none;
    }
        /* PCでは半透明 スマホでは透明無し */
    .drawer-dropdown-menu{
        filter:alpha(opacity=100);
        -moz-opacity:1.0;
        -khtml-opacity:1.0;
        opacity:1.0;
    }
        /* ###TogetherParentMenuAndOpenButton */
        /* リンク項目 */
    .drawer-navbar .drawer-dropdown a.Link,                 /* hrefが存在する要素 */
    .drawer-navbar .drawer-dropdown a.Link[href="#"]{       /* hrefが存在しない要素 */
        width:      80%;
        display:    inline-block;
    }
        /* オープンボタン */
    .drawer-navbar .drawer-dropdown a.Open{
        width:      20%;
        text-align: center;
        display:    inline-block;
    }
        /* スマホの時はhoverで非表示　clickでは表示 */
    .drawer-menu .drawer-dropdown.open > .drawer-dropdown-menu{
        display:    block;
    }
    .drawer-menu .drawer-dropdown:hover > .drawer-dropdown-menu{
        display:    none;
    }
    .drawer-menu .drawer-dropdown.open:hover > .drawer-dropdown-menu{
        display:    block;
    }
    .drawer-menu .drawer-dropdown > .drawer-dropdown-menu li{
/*
        height:         80px;
*/
/*      line-height:    80px;
        line-height:    70px;   /* ###SP-menu-item-height  70 */
        line-height:    60px;   /* ###SP-menu-item-height  60 */
    }
    .drawer-dropdown-menu-item {
/*      line-height: 80px;
        line-height: 70px;  /* ###SP-menu-item-height  70 */
        line-height: 60px;  /* ###SP-menu-item-height  60 */
    }

        /* 右端のアイコン */
            /* 下層メニュー */
    .drawer-dropdown-menu-item,
    .drawer-menu-item{
      position: relative;
    }
        /* 右矢印 */
    .drawer-dropdown-menu-item:after,
    .drawer-menu-item:after{
        position: absolute;
        top: 10px;
        right: 25px;
        margin-left: 0px;
        font-size: 40px;
        font-weight: lighter;
        font-weight: 100;
        content: ">";   /* > */
        font-family: 'Major Mono Display', monospace;
    }
    .drawer-dropdown-menu-item:after{
        top: 0px;
    }
        /* アイコン無し */
    .drawer-dropdown-menu-item.Link:after,
    .drawer-menu-item.Link:after{
        content:    none;   /* + */
    }
        /* プラス */
    .drawer-menu-item.Open:after{
        font-size: 50px;
        content:    "+";    /* + */
    }
        /* マイナス */
    .drawer-dropdown.open .drawer-menu-item.Open:after{
        content:    "-";    /* - */
    }

    .drawer-navbar .drawer-nav .HeaderCTA{
/*  header .btnWipe{    /*  */
        padding-top:    50px;
        float:  none;
        width:  100%;
    }
    header .btnWipe .more_button{
/* もともと
        font-size:      24px;
        width:          90%;
        height:         60px;
        line-height:    60px;
*/
        /* 小さ目にする */
        font-size:      22px;
        width:          70%;
        height:         50px;
        line-height:    50px;

        max-width:      480px;
        border:         none;
        float:          none;
        text-align:     center;
        margin-left:    auto;
        margin-right:   auto;
    }
    header .btnWipe .more_button:first-child{
        margin-right:   auto;
        margin-bottom:  40px;
    }
    .more_button i,.r_buttons i {
      top: 30%;
    }

    /* 基本レイアウト */
    .hasSidebar .wrap_main,
    .hasSidebar #sidebar{
        float:      none;
        width:      100%;       /* 800/1100 */
    }
    .hasSidebar .wrap_main{
        margin-right:   0px;
    }
        /* 標準 */

    .widthAll img{
        max-width:      100%;   /* 制限なし */
        width:          100%;
    }
    .widthNarrow{
        width:  100%;
    }
    .boxLeft,
    .boxRight,
    .boxThirdCollapse,
    .boxThird{
        float:  none;
        width:  100% !important;
    }
    .boxLeft,
    .boxThird{
        margin-bottom:  50px;
    }
    .Collapse .boxLeft{
        margin-bottom:  0px;
    }
        /* テキスト部背景色がある場合　画像部の↓マージンなし */
    .textBackColor .boxLeft{
        margin-bottom:  0px !important;
    }
        /* テキスト部背景色がある場合　テキスト部上下スペース */
    .textBackColor .box_green,
    .textBackColor .box_blue,
    .textBackColor .box_brown,
    .textBackColor .box_white,
    .textBackColor .box_gray{
        padding:    90px 0px;
    }       
    .boxThird{
        margin-right:   0px;
    }
    .boxThird:last-child{
        margin-bottom:  0px;
    }
    .widthLimit .noSpace{
        width:  100%;
        margin-bottom:  0px !important;
    }
    .Sepa .boxLeft{
        padding-right:  0px;
        border-right:   none;
    }
    .Sepa .boxThird{
        padding-right:  0px;
        border-right:   none;
        margin-right:   0px;
    }
    .boxFour{
        width:  48% !important;
        margin-right:   4%;
    }
    .boxFour:nth-child(2n){
        margin-right:   0px;
    }
        .boxFour-no{
        width:  48% !important;
        margin-right:   4%;
    }
    .boxFour-no:nth-child(2n){
        margin-right:   0px;
    }   
        /* 経歴用 */
    .Career{
        padding-left:   20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
        padding-right:  20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
    }
    .itemCareer .boxLeft{
        margin-bottom:  20px;
    }
        /* 紹介用 */
    .Introduce{
        padding-left:   20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
        padding-right:  20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
    }
        /* 左右二段組継続 */
    .itemIntroduce .boxLeft{
        float:  left;
        width:  18.75% !important;      /* 150/800 */
        margin-bottom:  0px;
    }
    .itemIntroduce .boxRight{
        float:  right;
        width:  75% !important;     /* 600/800 */
    }
        /* Q&A */
    .QandA{
        padding-left:   20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
        padding-right:  20px;       /* 一致させること　###sideSpaceAndFullOverMargin */
    }
        /* 左右二段組継続 */
    .itemQandA .boxLeft{
        float:  left;
        width:  10% !important;
        margin-bottom:  0px;
    }
    .itemQandA .boxRight{
        float:  right;
        width:  90% !important;
    }
    .itemCareer .boxRight,
    .itemCareer .boxLeft,
    .Padding .Image,
    .Padding .Text,
    .widthLimit .TitleText,
    .widthLimit .Title,
    .widthLimit .ImageRound,
    .widthLimit .Image,
    .widthLimit .Text{
        width:  100%;
    }
        /* 上にくる要素によって切り替え */
    .mbLeft .boxRight,
    .mbRight .boxLeft{
        margin-bottom:  0px;
    }
    .mbLeft .boxLeft,
    .mbRight .boxRight{
        margin-bottom:  25px;
    }
        /* ライブラリ */
    .boxCover{
        width:  50%;
    }
        /* 2列 */
    .boxCoverSpace{
        width:  48.5%;
        margin-right:   3%;     /*  */
    }
    .boxCoverSpace:nth-child(2n){
        margin-right:   0px;
    }
        /* サイドバー有の場合は3列 */
    .hasSidebar .boxCoverSpace{
        width:  48.5%;
        margin-right:   3%;
    }
    .hasSidebar .boxCoverSpace:nth-child(3n){
        margin-right:   3%;
    }
    .hasSidebar .boxCoverSpace:nth-child(2n){
        margin-right:   0px;
    }

    /* トップページ */
    body.home #About .flexRevers{
        flex-direction: row;
    }
    body.home section#TopMainVisual {
        padding-top: 60px;
    }
    body.home section#TopMainVisual .absOverCenter .verticalCenter{
        top: calc(50% + 30px);          /* padding-topの場合の上下中央位置調整  30pxはpadding-top:60pxの半分 */
    }
    body.single .postPagenation{
        padding:    15px 30px;
    }
    body.single .postPagenation .prev,
    body.single .postPagenation .next{
        width:  100%;
    }
    body.single .postPagenation .next{
        border: none;
        background-position:    0px center;
    }
    body.single .postPagenation .next a{
        text-align: left;
    }
    body.single .postPagenation hr{
        display:    block;
        width:      100%;
        margin-top: 15px;
        margin-bottom:  15px;
    }


        /* フッターCTA */
    footer section#CTA .boxFlex{
        width:      100%;
        text-align: center !important;
        margin-left:    auto;
        margin-right:   auto;
    }
    footer section#CTA .boxFlex:first-child{
        margin-bottom:      30px;
    }
    footer section#CTA .boxLeft,
    footer section#CTA .boxRight{
        float:      none;
        width:      100%;
        text-align: center;
        margin-left:    auto;
        margin-right:   auto;
    }
    footer section#CTA .boxLeft{
        margin-bottom:      30px;
    }
    footer section#LOGO p{
        text-align: left;
    }
    footer section#Menu #boxCompany{
        width:          100%;
        margin-left:    0px;
        margin-right:   auto;
        margin-bottom:  50px;
    }
    footer section#Menu #boxMenu{
        width:  100%;
    }

}
@media screen and (max-width: 640px) {
    .disp640{display:block;}
    .hide640{display:none;}

    body.home #TopSlowSlider .bottom .arrowDown img{
        width:  32px;   /* 52pxの60% */
    }
    /* トップページカルーセルのコントローラの位置 */
    /* スマホスライダーに切り替わるので */
    /* 個々の制御は難しいので左右に張り付いたままとする */
    .wpsisac-slick-carousal-wrp .design-6 button.slick-prev{
    /*  left:   calc(50% - 265px) !important;   /* 元のサイズの場合 */
    /*  left:   calc(50% - 285px) !important;   /* ###imageSize */
    }
    .wpsisac-slick-carousal-wrp .design-6 button.slick-next{
    /*  right:  calc(50% - 265px) !important;   /* 元のサイズの場合 */
    /*  right:  calc(50% - 285px) !important;   /* ###imageSize */
    }
    .wpsisac-slick-carousal-wrp .design-6 button.slick-arrow{
        width:  36px;       /* 画像サイズ ###imageSize */
        height: 36px;       /* 画像サイズ ###imageSize */
    }

    /* スタティックメインビジュアル */
    body.home section#TopMainVisual .descriptionBig{
        font-size:      30px;
        line-height:    1.5em;
        margin-bottom:  30px;
    }


    table:not(.topTh) th,
    table:not(.topTh) td{
        display:    block;
        width:      100% !important;
        min-height: 45px;
    }
        /*  */
/*
    table.topTh th,
    table.topTh td{
        display:    inline;
        width:      auto !important;
    }
*/
    table:not(.topTh) th{
        text-align: left !important;
    }
    table.free-items th,
    table.free-items td{
        padding:    7px 20px;
    }

        /* 最上行複数タイトルのテーブル */
/*
    .topTh .tTitle {
        display: none;
    }
    .topTh tr,
    .topTh td{
        position: relative;
    }
*/
        /* :beforeを配置するためのスペース */
/*
    .topTh tr {
        display: block;
        margin-bottom: 40px;
    }
*/
        /* :before でタイトルテキストを表示する */
/*
    .topTh td:first-child:before {
        background: #f2f2f2;
        box-sizing: border-box;
        color: #333;
        font-weight: bold;
        height: 40px;
        padding: 10px;
        position: absolute;
        top: -41px;
        left: -0.2%;
        display: block;
        width: 100.5%;
        border: 1px solid #cecece;
        text-align: left;
    }
    .topTh td.first:before {    content: "タイトル１";   }
    .topTh td.scond:before {    content: "タイトル２";   }
    .topTh td.third:before {    content: "タイトル３";   }
*/

    /* スクロールバーを出す */
    /* https://01earth.jp/web-create/coding/scroll-bar/ */
    .scroll-wrap table{
        width:  900px;
    }

    .scroll-wrap{
        width:  100%;
/*      padding: 3%;    /*  */
        padding-bottom: 20px;
        overflow-x: auto;
    }
    .scroll-wrap::-webkit-scrollbar {
        height: 10px;
    }
    .scroll-wrap::-webkit-scrollbar-thumb{
        background: #999;
        border-radius: 5px;
    }
    .scroll-wrap::-webkit-scrollbar-track-piece {
        background: #efefef;
    }


        /* 【これがないとうまくいかない】 form.cssのオーバーライド */
    .mw_wp_form .m-form,
    .mw_wp_form .m-form > * {
        display: block !important;
    }
    /* メールフォーム */
    .m-media dt,
    .m-media dd{
        width:      100%;
        display:    block;
    }
    body.page-template-templete-EntryFormOptimization .mw_wp_form dl.m-form dt,
    body.page-template-templete-EntryFormOptimization .mw_wp_form dl.m-form dd{
        width:      100%;
        display:    block;
        height:     auto;
    }
    .m-media dt{
        border-right:   none !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.13);
    }
    .m-media dd{
/*      padding-top:    5px;    /*  */
    }
    .m-media input[type="tel"],
    .m-media input[type="text"],
    .m-media input[type="email"],
    .m-media textarea{
        width:      100% !important;
    }
    .m-media .memo{
        display:    block;
    }
    .m-form-buttons input{
        display:    block;
        width:      235px;
        margin-bottom:  20px;
        margin-left:    auto;
        margin-right:   auto;
    }

        /* 矢印の構造は難しいので、せいぜい縦に整列するのが関の山 */
        /* 640以上は画像でやるか？ */
        /* 長さ */
    .m-form-status div{
        width:  100% !important;
    }
        /* 右矢印を非表示 */
    .m-form-status div > div::after {
        display: none !important;
    }


}
@media screen and (max-width: 580px) {
    /* QandA */
    .itemQandA .boxRight{
        width:  85% !important;
        margin-left:    auto;   /* 右寄せ　float:rightと同等 */
    }
}

@media screen and (max-width: 480px) {
    .absOverCenter .verticalCenter .descriptionBig,
    .headerHero .v-center .descriptionBig {
        margin-bottom: 20px;
    }
    .absOverCenter .verticalCenter .descriptionSmall,
    .headerHero .v-center .descriptionSmall {
        margin-bottom: 30px;
    }
    body.home section#TopSlowSlider .descriptionBig.lang-japan{
      font-size: 35px;
    }
    body.home section#TopSlowSlider .descriptionBig.lang-eng{
      font-size: 38px;
    }
    .absOverCenter .bottom, .headerHero .bottom {
        bottom: 20px;
    }

    .pageTopImage .title {
        font-size: 22px;
    }

    /* スタティックメインビジュアル */
    body.home section#TopMainVisual .descriptionBig{
        font-size:      25px;
        line-height:    1.2em;
        margin-bottom:  20px;
    }


    /* 一覧レイアウト */
    .boxBlog{
        background-position: 100% 40%;
    }
    .boxBlog .boxBlogRight{
        width:      calc(100% - 30px);
    }
    .boxBlog .meta .linkCate a {
        padding: 5px 10px;
    }

    /* QandA */
    .itemQandA .boxRight{
        width:  75% !important;
        margin-left:    auto;   /* 右寄せ　float:rightと同等 */
    }

    footer section#SNS i{
        font-size:      38px;
        margin-right:   38px;
    }

}

@media screen and (max-width: 400px) {
    .formStatus .boxStepLeft,
    .formStatus .boxStepRight{
        width:  100%;
        
    }
    .formStatus .boxStepLeft{
        margin-bottom:  20px;
    }

    .boxClipInner{
        width:      100%;
    }

    footer section#CTA .btnGhost a{
        font-size:  17px;
    }
    footer section#CTA a.arrowFont::after {
        right: -5px;
        font-size: 50px;
    }   
}


/* 立体的なボタン 480px */
.contact-btn-link {
    max-width: 480px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color: rgb(255, 37, 66);
    box-shadow: 0px 4px 0 rgb(179, 37, 70);
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

.contact-btn-link::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

.contact-btn-link:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}

.contact-btn-text {
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
}

/* 立体的なボタン　「ピンク」 */
a.contact-btn-link.pink {
    max-width: 480px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #eda6cf;
    box-shadow: 0px 4px 0 #ad458a;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.pink::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.pink:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}

/* ここまで「ピンク」 */

/* 立体的なボタン　「グリーン」 */
a.contact-btn-link.green {
    max-width: 480px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #7cc44b;
    box-shadow: 0px 4px 0 #0e770e;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.green::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.green:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}
/* ここまで「グリーン」 */

/* 立体的なボタン　「オレンジ」 */
a.contact-btn-link.orange {
    max-width: 480px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #f69022;
    box-shadow: 0px 4px 0 #ad5207;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.orange::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.orange:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}
/* ここまで「オレンジ」 */

/* 立体的なボタン　「ブルー」 */
a.contact-btn-link.blue {
    max-width: 480px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #225ac6;
    box-shadow: 0px 4px 0 #08357c;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.blue::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.blue:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}
/* ここまで「ブルー」 */

/* 立体的なボタン　「イエロー」 */
a.contact-btn-link.yellow {
    max-width: 480px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #fff100;
    box-shadow: 0px 4px 0 #b7a313;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.yellow::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #000000;
}

a.contact-btn-link.yellow:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}

.contact-btn-text.yellow {
    color: #000;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
}
/* ここまで「イエロー」 */
/* ここまで480pxボタン　*/


/* 立体的なボタン 240xp */
.contact-btn-link.small {
    max-width: 240px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color: rgb(255, 37, 66);
    box-shadow: 0px 4px 0 rgb(179, 37, 70);
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

.contact-btn-link.small::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

.contact-btn-link.small:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}

.contact-btn-text.small {
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
}

/* 立体的なボタン　「ピンク」 */
a.contact-btn-link.pink.small {
    max-width: 240px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #eda6cf;
    box-shadow: 0px 4px 0 #ad458a;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.pink.small::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.pink.small:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}

/* ここまで「ピンク」 */

/* 立体的なボタン　「グリーン」 */
a.contact-btn-link.green.small {
    max-width: 240px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #7cc44b;
    box-shadow: 0px 4px 0 #0e770e;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.green.small::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.green.small:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}
/* ここまで「グリーン」 */

/* 立体的なボタン　「オレンジ」 */
a.contact-btn-link.orange.small {
    max-width: 240px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #f69022;
    box-shadow: 0px 4px 0 #ad5207;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.orange.small::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.orange.small:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}
/* ここまで「オレンジ」 */

/* 立体的なボタン　「ブルー」 */
a.contact-btn-link.blue.small {
    max-width: 240px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #225ac6;
    box-shadow: 0px 4px 0 #08357c;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.blue.small::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #fff;
}

a.contact-btn-link.blue.small:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}
/* ここまで「ブルー」 */

/* 立体的なボタン　「イエロー」 */
a.contact-btn-link.yellow.small {
    max-width: 240px; 
    width: 100%;
    display : flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color:  #fff100;
    box-shadow: 0px 4px 0 #b7a313;
    margin-bottom: 1.5em;
    padding : 16px;
    transition: 0.2s all ease 0s;
    letter-spacing: 1.2px;
    text-decoration : none!important;
}

a.contact-btn-link.yellow.small::before {
    position: absolute;
    top: center;
    left: 20px;
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-size: 150%;
    color: #000000;
}

a.contact-btn-link.yellow.small:hover{
    box-shadow: none;
    text-decoration: none;
    transform: translate3d(0, 3px, 0);
    opacity: .8;
}

.contact-btn-text.yellow.small {
    color: #000;
    font-weight: bold;
    font-size: 16px;
    line-height: 1;
}
/* ここまで「イエロー」 */
/* ここまで240pxボタン　*/

.m-plus-rounded-1c-regular {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.m-plus-rounded-1c-medium {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.m-plus-rounded-1c-bold {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  font-style: normal;
}
