@charset "utf-8";

/*pc + sp*/
.pc   {display:block}
.sp   {display:none}
@media only screen and (max-width:979px) {
.pc   {display:none}
.sp   {display:block}
}

/* ----------------------------------------------------------

Common

---------------------------------------------------------- */
html, body, h1, p, a, div, section {
margin:0;
padding:0;
font-size:100%;
font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

/*ol ul li*/
ul,dl,
dt,dd,
ul li {list-style:none;padding:0;margin:0}
ol    {padding:0;margin-left:1em}
ol.ol_list li {padding-left:0.5em;margin-left:0}

/*clearfix*/
* html .clearfix,
*+html .clearfix  {zoom:1}
.clearfix:after   {height:0;visibility:hidden;content:".";display:block;clear:both}

/*clear*/
.clear-both   {clear:both}
.clear-left   {clear:left}
.clear-right  {clear:right}

/*position*/
.left       {text-align:left}
.center     {text-align:center}
.right      {text-align:right}
.top        {vertical-align:top}
.middle     {vertical-align:middle}
.bottom     {vertical-align:bottom}
.flex       {display:flex;box-sizing:border-box}

/*text*/
.red        {color:#C90000}
.strong     {font-weight:700}
.large      {font-size:120%}

/*link*/
a           {cursor:pointer;color:#50A1D4;}

/*img*/
img         {vertical-align:middle;-ms-interpolation-mode:bicubic;max-width:100%}
img.border  {border:1px solid #dedede;box-sizing:border-box}
.alignnone,
.alignleft,
.alignright,
.aligncenter {max-width:100%;margin:0;width:auto}
.alignnone   {margin-bottom:5px} 
.alignleft   {display:inline;float:left;margin-top:5px;margin-right:25px;margin-bottom:25px}
.alignright  {display:inline;float:right;margin-top:5px;margin-left:25px;margin-bottom:25px}
.aligncenter {clear:both;display:block;margin-left:auto;margin-right:auto;text-align:center}
@media only screen and (max-width:979px) {
.alignnone,
.alignleft,
.alignright,
.aligncenter {display:block;float:none;text-align:center;margin:1em auto}
}

/*font*/
.roboto {font-family:'Roboto Condensed', sans-serif}

/*btn*/
.btn {display:block;text-decoration:none;text-align:center;font-weight:bold;position:relative}
.btn_primary    {background:#5d9b1f;color:#fff}
@media only screen and (max-width:979px) {
}

/* ----------------------------------------------------------

Base Layout

---------------------------------------------------------- */
/*body*/
body        {
width:100%;
padding:0;
margin:0 auto;
font-size:11pt;
line-height:normal;
color:#333;
-webkit-text-size-adjust:100%;
-webkit-overflow-scrolling:touch;
position:relative;
background:#222;
}
#wrapper        {text-align:justify!important;overflow-x:hidden}
main            {position:relative;margin:0 auto}
.container      {max-width:1024px;margin:auto;box-sizing:border-box}
.container_l    {max-width:1140px;margin:auto;box-sizing:border-box}
.container_xl   {max-width:100%;padding-left:2.5em;padding-right:2.5em;margin:auto;box-sizing:border-box}
@media only screen and (max-width:979px) {
html, body      {height:auto}
.container,
.container_l,
.container_xl   {width:100%;max-width:100%;padding-left:0;padding-right:0;box-sizing:border-box}
}

/* ----------------------------------------------------------

Header

---------------------------------------------------------- */
/*header*/
header  {background:url(../img/home/header_bg.jpg) 20% 100% no-repeat #202020}
.topbar {padding:15px 0;margin-bottom:-10px}
.topbar_menu_list       {display:flex;justify-content:flex-end;align-items:center}
.topbar_menu_list li    {display:inline-block;vertical-align:middle;margin-left:20px}
.topbar_menu_list .btn  {max-width:150px;min-width:150px;padding:6px 0;margin-right:20px;border-radius:20px;box-shadow:0 0 20px rgba(0,0,0,0.75)}
.topbar_menu_list .btn span   {display:block;margin-left:16px}
.topbar_menu_list .btn:before {position:absolute;top:29%;left:20px;content:'\f0e0';font-size:100%;font-family:"Font Awesome 5 Free";font-weight:100}
header .nav         {position:relative}
.nav_list           {margin:40px auto 30px}
.nav_list li        {display:inline-block;vertical-align:top;box-sizing:border-box;position:relative;padding:10px 28px}
.nav_list li a      {color:#fff;font-size:120%;font-weight:800;text-decoration:none}
.nav_list li.active:after  {content:'';border-bottom:3px solid #fff;width:100%;display:block;margin-top:5px}
.slider             {width:100%;margin:auto}
.slick-slide img    {width:100%;height:auto;border:1px solid #fff}
.slide              {width:100%}
.slide .slick-slide {margin:20px 15px}
.about              {padding-bottom:20px;display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap}
.about_img          {flex-basis:30%}
.about_text         {flex-basis:70%}
.about_text p       {color:#fff;font-size:86%;text-align:right}
.about_text span    {display:inline-block;vertical-align:middle;font-weight:800} 
.about_text span.emphasis  {color:#5d9b1f;font-size:110%;position:relative;margin-right:5px} 
.about_text span.emphasis:after  {content:'';border-bottom:2px solid #5d9b1f;width:100%;display:block;margin-top:2px}
@media only screen and (max-width:979px) {
header              {background:url(../img/home/header_bg_sp.jpg) 20% 100% no-repeat #202020}
header .nav .logo   {padding: 25px 10px;max-width: 280px;margin:0;text-align: left}
.slide .slick-slide {margin:5px 5px}
.about              {display:block}
.about_img          {flex-basis:100%;margin:15px auto;text-align:center;max-width: 256px}
.about_text         {flex-basis:100%}
.about_text p       {font-size:86%;text-align:center}
.hamburger          {top: 20px!important;right:0}
.hamburger .hamburger__icon, 
.hamburger .hamburger__icon:before, 
.hamburger .hamburger__icon:after {background-color: #e4e9ec}
.nav__wrapper   {text-align:center}
.nav__wrapper a {cursor:pointer}
.sp_nav .fat-nav__wrapper {display:flex;flex-direction:row;justify-content:center;align-items:center;flex-wrap:wrap}
.sp_nav .nav_list,
.sp_nav .sns_list      {flex-basis:100%;margin:auto;text-align: center}
.sp_nav .nav_list li   {display: block;padding:0;border-bottom: 1px solid #555}
.sp_nav .nav_list li a {color:#fff;font-size: 13pt!important;display:block;padding:1em}
.sp_nav .nav_list li.active:after  {display:none}
.sp_nav .nav_list li.green a  {background:#5d9b1f}
.sp_nav .nav_list li.sns   {border-bottom:none!important}
.sp_nav .nav_list li.sns div   {display: inline-block;vertical-align: middle}
}

/* ----------------------------------------------------------

Home

---------------------------------------------------------- */
/*information*/
.information          {background:url(../img/home/info_bg.png) bottom center no-repeat #fff;background-size:cover}
.information_block    {padding:60px 0;display:flex;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap}
.information_title    {flex-basis:25%}
.information_25th     {flex-basis:20%;margin:0 2.5% 0 5%;box-sizing:border-box}
.information_news     {flex-basis:45%;margin:0 0 0 2.5%;box-sizing:border-box}
.information_news_block   {box-shadow:0 0 16px rgba(0,0,0,0.15);background:#fff;min-height:230px}
.information_news_title   {padding:18px 0 12px;margin:0 30px;box-sizing:border-box;border-bottom:1px solid #ccc;font-size:190%}
.information_news_title span.green   {color:#5d9b1f}
.information_news_list   {padding:10px 30px;box-sizing:border-box;overflow-y:auto;max-height:150px;position:relative}
.information_news_list .news_list   {padding:5px 0;margin:auto}
.information_news_list .news_list dt,
.information_news_list .news_list dd  {display:inline-block;vertical-align:top;font-size:106%}
.information_news_list .news_list dt  {width:22%;font-weight:bold;color:#888}
.information_news_list .news_list dd  {width:77%;font-weight:bold}
.information_news_list .news_list dd a  {text-decoration:none;color:#333}
@media only screen and (max-width:979px) {
.information            {background:url(../img/home/info_bg_sp.png) bottom center no-repeat #fff}
.information_block      {padding:20px 16px}
.information_title      {flex-basis:45%;text-align: center}
.information_25th       {flex-basis:45%;margin:0 2.5%;text-align: center}
.information_news       {flex-basis:100%;margin:5px auto}
.information_title img  {max-width:75.0%}
.information_25th img   {max-width:75.0%}
.information_news_title {margin:0 20px}
.information_news_list  {text-align:left;padding:10px 20px;max-height:140px}
.information_news_list .news_list dt  {width:24%;font-size:96%}
.information_news_list .news_list dd  {width:75%;font-size:96%}
}

/*works*/
.works  {background:url(../img/home/works_bg.jpg) top center no-repeat #332011;min-height:1000px;padding-bottom:100px}
.works_block    {padding:60px 0;position:relative;min-height:450px}
.works_img01    {position:absolute;margin-top:-40px;right:-100px}
.works_img02    {position:absolute;margin-top:170px;left:-50px}
.works_title    {position:absolute;margin-top:200px;right:-100px;text-align:center}
.worls_title_text     {font-size:110%;font-weight:600;color:#fff;font-family:"メイリオ","Meiryo",sans-serif}
.works_content        {position:relative;margin-top:150px}
.works_thumb_block    {background:rgba(0,0,0,0.5);padding:30px 40px;box-sizing:border-box}
.works_thumb_list     {display:flex;flex-direction:row;justify-content:top;align-items:center;flex-wrap:wrap;text-align:center}
.works_thumb_list li  {/*flex-basis:20%;*/margin:10px 10px}/***横幅自由****/
.works_btn_block      {margin:75px auto 25px;max-width:230px}
.works_btn_block .btn {padding:14px 20px;font-size:140%;border-radius:40px;box-shadow:0 0 20px rgba(0,0,0,0.75)}
.works_btn_block .btn:after {position:absolute;top:34%;right:20px;content:'\f0da';font-size:100%;font-family:"Font Awesome 5 Free"}
@media only screen and (max-width:979px) {
.works    {width:100%;background:url(../img/home/works_bg_sp.jpg);min-height:1px;padding-bottom:0}
.works_block          {padding:20px;box-sizing:border-box;min-height:1px}
.works_img01          {position:relative;right:-50%}
.works_img02          {position:relative;margin-top:-25%;left:-10%}
.works_title          {position:relative;margin-top:-45%;right:0;margin:0 auto;text-align:center}
.worls_title_text     {font-size:84%;margin-top:-10px;display:block}
.works_img01 img      {max-width:60%}
.works_img02 img      {max-width:65%}
.works_title img      {max-width:80%}
.works_content        {margin-top:-20px}
.works_thumb_block    {padding:10px }
.works_thumb_list     {margin:5px auto;text-align:center}
.works_thumb_list li  {flex-basis:22.5%;margin:5px auto}
.works_btn_block      {margin:25px auto }
}

/* ----------------------------------------------------------

Aside

---------------------------------------------------------- */
/*menu*/
.menu  {background:#fff}
.menu_btn_list    {display:flex;flex-direction:row;justify-content:top;align-items:center;flex-wrap:wrap;text-align:center}
.menu_btn    {flex-basis:33.333333333%;padding:80px 0;border-right:1px solid #dedede;box-sizing:border-box}
.menu_btn a  {color:#333}
.menu_btn:nth-last-child(1)    {;border-right:none}
.menu_btn_icon    {display:inline-block;vertical-align:middle;margin-right:40px}
.menu_btn_text    {display:inline-block;vertical-align:middle}
.menu_btn_text span {display:block;text-align:left}
.menu_btn_text .menu_btn_en {font-weight:800;font-size:300%}
.menu_btn_text .menu_btn_ja {font-weight:600;font-size:100%;color:#888}
.map_container         {width:100%;margin:auto;background:#fff}
.map_container iframe  {width:100%;height:500px;border:none}
@media only screen and (max-width:979px) {
.menu_btn             {flex-basis:33.333333333%;padding:40px 0}
.menu_btn_icon        {display:block;margin:auto;text-align:center}
.menu_btn_text        {display:block}
.menu_btn_icon img    {max-width:35px;margin:15px auto}
.menu_btn_text span   {text-align:center}
.menu_btn2 .menu_btn_icon img    {margin:5px auto 13.5px}
.menu_btn_text .menu_btn_en {font-weight:800;font-size:200%}
.menu_btn_text .menu_btn_ja {font-weight:600;font-size:90%;color:#888}
.map_container        {width:100%;height:auto;position:relative;padding-bottom:75%;height:0;overflow:hidden}
.map_container iframe {position:absolute;top:0;left:0;width:100%!important;height:100%!important;border:none} 
}

/* ----------------------------------------------------------

Footer

---------------------------------------------------------- */
/*footer*/
footer  {background:url(../img/common/footer_bg.jpg) bottom center repeat-x #355a77;padding-bottom:25px;margin-top:-10px}
footer .footer_sitemap            {position:relative;margin:auto;text-align:center;padding:15px 0  5px}
footer .footer_sitemap_list       {margin:40px auto 30px}
footer .footer_sitemap_list li    {display:inline-block;vertical-align:top;box-sizing:border-box;position:relative;padding:10px 28px}
footer .footer_sitemap_list li a  {color:#fff;font-size:120%;font-weight:800;text-decoration:none;text-shadow:0px 4px 2px rgba(0,0,0,0.25)}
@media only screen and (max-width:979px) {
footer  {background:url(../img/common/footer_bg_sp.jpg) bottom center repeat #2f5874;background-size: cover}
footer .footer_sitemap_list       {margin:25px auto}
footer .footer_sitemap_list li    {line-height:1;padding:10px 12px}
}

.footer_information    {background:#111;box-sizing:border-box;padding:25px }
.footer_information_container {padding:25px 0;display:flex;flex-direction:row;justify-content:top;align-items:center;flex-wrap:wrap;text-align:center}
.footer_information_title {padding:25px 0;flex-basis:46%;border-right:1px solid #707070}
.footer_information_text {padding:12.5px 0;flex-basis:34%;;border-right:1px solid #707070}
.footer_information_contact {flex-basis:19%}
.footer_information_title span {display:inline-block; vertical-align:middle;margin:0 15px}
.footer_information_title span.logo02 {width:12.5%}
.footer_information_title span.logo_en {width:65%}
.footer_information_text span {display:block;color:#fff;text-align:center;margin:4px auto}
.footer_information_text span.store_title {font-size:140%;font-weight:800}
.footer_information_text span.store_address {font-size:100%;line-height:1.5em}
.footer_information_contact span {display:block;text-align:center;color:#fff}
.footer_information_contact span.contact_icon {width:100px;margin:5px auto;text-align:center;margin-top:10px}
.footer_information_contact span.contact_tel {font-size:190%;font-weight:800%}
.footer_bnr_list          {display:flex;justify-content:center;align-items:center;flex-wrap:wrap;text-align:center}
.footer_bnr_list li       {margin:10px 0}
.footer_bnr_list li img   {width:90%}
.copyright    {margin:75px auto 25px;text-align:center}
.copyright address        {font-style:normal;color:#fff;font-size:96%;font-weight:800}
@media only screen and (max-width:979px) {
.footer_information    {padding:10px}
.footer_information_container {padding:10px 20px;display:block;box-sizing:border-box}
.footer_information_title,
.footer_information_text    {padding:25px 0;flex-basis:100%;border-right:none;border-bottom:1px solid #707070}
.footer_information_title span {max-width: 50%}
.footer_information_title span.logo02 {width:10%}
.footer_information_title span.logo_en {width:65%}
.footer_information_contact {padding:25px 0;flex-basis:100%}
.footer_information_contact span {display:inline-block;vertical-align:middle}
.footer_information_contact span.contact_icon {width:60px}
.footer_information_contact span.contact_tel {font-size:240%;font-weight:800%}
.footer_bnr_list     {display:flex;justify-content:center;padding:0 20px 30px;box-sizing:border-box}
.footer_bnr_list li  {margin:5px 2px}
.copyright    {margin:25px auto;font-size:86%}
}

/*pagetop*/
.pagetop    {position:fixed;z-index:1;right:0;bottom:0;margin:0 auto}
.pagetop a  {font-size:300%;background:#5d9b1f;color:#fff;display:block;text-align:center;padding:20px;;line-height:0;cursor:pointer}
@media only screen and (max-width:979px) {
.pagetop a  {font-size:200%;padding:16px}
}

/*****works*********/
.seminar{background:#FFF;color:#333;}
.seminar_box{padding: 20px 0;}
.workmainimg{width:100%;}
.workmainimg img{width:100%;}
.works_datacontent {    position: relative;    margin-top: 30px;}
li.wks img{    border: 3px solid #ecb029;    box-sizing: border-box; height:181px;}
@media (max-width:420px){ li.wks img{height:auto;width:100%;} }

/**********************/
.media_block {padding: 60px 0; position: relative; min-height: 450px;background:rgba(255,255,255,0.5);}
.media_thumb_block{background:rgba(255,255,255,0.5); padding:30px 40px; box-sizing:border-box;}
.media_thumb_list{display:flex;flex-direction:row;justify-content:top;align-items:center;flex-wrap:wrap;text-align:center;}
.media_thumb_list li{flex-basis:22%;margin:10px 0px;}
.medias{
    background: url(../img/home/works_bg.jpg) top center no-repeat #332011;
    min-height: 500px;
    padding-bottom: 100px;
}
@media (max-width:768px){ .media_thumb_list li{flex-basis:50%;} }
@media (max-width:420px){ .media_thumb_list li{flex-basis:100%;} }
.media_thumb_list img{max-width:unset;}

/****blog info**********************/
.bkwhite{background-color:#FFFFFF;}
.main-column{width:730px;float:left;padding-bottom:30px;padding-top: 20px;}
.side-column{width:250px;float:right;padding-bottom:30px;padding-top: 20px;}
@media (max-width:1080px){.main-column,.side-column{max-width:100%;width:730px;margin-left:auto;margin-right:auto;float:none;}}
.cf:before,.cf:after{content:"";display:block;overflow:hidden;}
.cf:after{clear:both;}
.cf{zoom:1;}
@media (max-width:768px){.sp{display:block;}.pc{display:none;}}
@media (min-width:769px){.sp{display:none;}.pc{display:block;}}
hr.clear{clear:both; display: none;}

/****blog info**********************/
.side-widget .side-title {
 margin: 0 0 13px;
 font-size: 16px;
 color: #666;
 padding:10px;
 font-weight: bold;
 text-align:center;
 position: relative;
 background-color: #fff7e5;
 border:solid 4px #f9cf68;
}

.side-widget .side-title::before {
 content: '';
 position: absolute;
 display: block;
 width: 0;
 height: 0;
 left: 0;
 right: 0;
 bottom: -10px;
 margin: 0 auto;
 border-top: 10px solid #f9cf68;
 border-right: 10px solid transparent;
 border-left: 10px solid transparent;
}
/****blog info**********************/

h1.entry-title {
    border-left: 4px solid;
    padding: .7em 0 .7em .8em;
}
h1.entry-title{
    padding: 15px 0 15px 15px;
    clear: both;
    background-color: #f6f6f6;
    border-left: 5px solid #f2ab13;
}
.entry-header{
    text-align: right;
}
.infos{
    background: url(../img/home/works_bg.jpg) top center no-repeat #332011;
    min-height: 100px;
    padding-bottom: 100px;
}
/************一覧***************/
.post_list{display:flex;flex-direction:row;justify-content:top;align-items:center;flex-wrap:wrap;text-align:center;}
.post_list li{flex-basis:24%;margin:10px 10px;}
.post_list_item{width:100%; height:auto;}
div.post_thumb_inner img{height:auto;}

/**********問い合わせ*******************/
/* --- お問い合わせフォーム --- */
/* デザインカスタマイズ */
div.wpcf7 { background:#fafafa; border:1px solid #ddd; padding:0px; -moz-border-radius:10px; -khtml-border-radius:10px; -webkit-border-radius:10px; border-radius:10px; margin:0 0 30px 0; }
div.wpcf7 p { padding:20px 20px 0; margin:0; font-size:11px; }
div.wpcf7 input, .wpcf7 textarea { border:1px solid #ccc; padding:8px; font-size:14px; }
div.wpcf7 textarea { width:97.5%; height:300px; }
div.wpcf7 input.wpcf7-submit {
   cursor:pointer; color:#fff; font-weight:bold; font-size:14px; width:200px; height:45px; margin:0 auto; display:block;
   -moz-border-radius:5px; -khtml-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;
   background:#333; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #808080; border:1px solid #666;
}
div.wpcf7 input.wpcf7-submit:hover { background:#006080; box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.5), inset 0px 32px 0px -12px #007ea8; border:1px solid #006080; }
.wpcf7 input.wpcf7-submit:active { box-shadow:none; bottom:-2px; position:relative; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border:1px solid #009de1; }
.wpcf7-captchac { border:1px solid #ccc; }
 
 
/* エラー個所をわかりやすく表示 */
.wpcf7 .wpcf7-not-valid { background: #ffb6c1; }
.wpcf7 span.wpcf7-not-valid-tip {font-size: 80%;}
.wpcf7 .wpcf7-response-output {margin: 10px 0 0; padding: 8px 35px 8px 14px; text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
.wpcf7 .wpcf7-validation-errors {color: #B94A48; background-color: #F2DEDE; border: 1px solid #EED3D7;}
.wpcf7 .wpcf7-mail-sent-ok {color: #3A87AD; background-color: #D9EDF7; border: 1px solid #BCE8F1;}
 
/* 必須赤色表示 */
.wpcf7 .required { color: #f00;}
/* 任意緑色表示 */
.wpcf7 .any{ color: #080;}

.media_thumb_block a{color:#FFFFFF;}

h2.screen-reader-text{display:none;}