sidebar_banner_sns/*
Theme Name: Switch Child
Template: switch_tcd063
Author: Design Plus
Author URI: http://design-plus1.com/tcd-w/
Description: WordPressテーマ「Switch」
Version: 1.1.1542520486
Updated: 2018-11-18 14:54:46

*/

/* ========================================================================== Layout ========================================================================== */

/* Inner ----------------------------------------------------------------- */
.l-inner { position: relative; width: 92.1875%; max-width: 1000px!important; margin-right: auto; margin-left: auto; }

/* Iheader ----------------------------------------------------------------- */
.l-header{
    max-width: 1000px;
    margin:0 auto!important;
   position: relative;
   top:0;
}
.admin-bar .l-header{top:0;}

/* Imain ----------------------------------------------------------------- */
.l-main{
    max-width: 1000px;
    margin:0 auto;

    border: 1px solid #ccc;
    z-index: 2;
    position: relative;
    box-shadow: 0 0 5px 1px rgba(0,0,0,0.2);
}

/* Inner ----------------------------------------------------------------- */
.l-inner { position: relative; width: 92.1875%; max-width: 1180px; margin-right: auto; margin-left: auto; }

@media only screen and (max-width: 991px) { .l-inner { width: 96%!important; } }

@media only screen and (max-width: 767px) { .l-inner { width: 100%!important; padding: 0 10px; } }

/* Footer ----------------------------------------------------------------- */

.my-footer .p-footer-link {
    background-image: url('images/pc-pattern-1450x500-2.svg');
}

.my-footer .p-footer-link { position: relative; position: relative; width: 100%; height: 500px; overflow: hidden; background-position: center center; background-repeat: no-repeat; background-size: cover; }

.my-footer .p-footer-link::before { display: block; z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ""; }

.my-footer .p-footer-link { position: relative; position: relative; width: 100%; height: 500px; overflow: hidden; background-position: center center; background-repeat: no-repeat; background-size: cover; }

.my-footer .p-footer-link::before { display: block; z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ""; background:none; }

.my-footer .footer-logo img { width:70%; vertical-align: middle; }

.my-footer .p-footer-link__inner { display: -webkit-box; display: -ms-flexbox; display: flex; z-index: 1; position: relative; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; height: 100%; }

.my-footer .p-footer-link__title { font-family: "Rounded Mplus 1c"; font-weight: 600!important; margin-bottom: 10px; color: #fff; font-size: 36px; line-height: 1.5; text-align: center; -webkit-transition: color 0.2s ease; transition: color 0.2s ease; }

.my-footer .p-footer-link__desc { font-family: "Rounded Mplus 1c"; font-weight: 400!important;margin-bottom: 39px; color: #fff; font-size: 14px; line-height: 2.6; text-align: center; }

.my-footer .p-footer-link__list { display: -webkit-box; display: -ms-flexbox; display: flex; margin-bottom: 0; }

.my-footer .p-footer-link__list img { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100% !important; margin: auto; -o-object-fit: cover; object-fit: cover; }

.my-footer .p-footer-link__list-item { margin: 0 15px; }

.my-footer .p-article07__title{font-family: "Rounded Mplus 1c"; color:#666;font-size:2em;font-weight: 600!important;}


@media screen and (max-width: 991px) { 
    .my-footer .p-footer-link { height: auto; padding: 51px 0 55px; }
  .my-footer .p-footer-link__title { font-size: 28px; }
  .my-footer .p-footer-link__desc { margin-bottom: 17px; line-height: 2; } }

@media screen and (max-width: 900px) { 
    .my-footer .p-footer-link__list { display: block; width: 100%; }
  .my-footer .p-footer-link__list-item { margin: 0 auto; }
  .my-footer .p-footer-link__list-item + .p-footer-link__list-item { margin-top: 24px; } }

@media screen and (max-width: 767px) { .p-footer-link__title { margin-bottom: 10px; font-size: 20px; } }

/* パターン----------------------------------------------------------------- */

.cp_bgpattern01 {
	background-color: #dedede;
	background-image:
	 linear-gradient(-90deg, #ecebeb 50%, transparent 50%, transparent);
	background-size: 10px 10px;
}

.cp_bgpattern02 {
	background-color: #8be4f0;
	background-image:
	 linear-gradient(-90deg, #80deea 50%, transparent 50%, transparent);
	background-size: 14px 14px;
}

/*------------------------------------------------------------
共通設定
-------------------------------------------------------------*/

a{ text-decoration: none!important; }

.width100 {width:100%;}

.marginbottom_mini {margin-bottom:20px;}
.marginbottom_small {margin-bottom:30px;}
.marginbottom_middle {margin-bottom:40px;}

.margintop_mini {margin-top:20px;}

.grad4 {
 display: inline-block;
 padding: .5em 1em;
 background: linear-gradient(#6795fd 0%, #67ceff 100%);
 color: #fff;
}
.grad4:hover {
 background: linear-gradient(#6795fd 0%, #67ceff 70%);
}

.margintopm20{
  margin-top:20px;
}

.img_marginbottom20{
  width:100%;
  height:auto;
  margin-bottom:20px;
}

.white_bold {color:#fff;font-weight: bold;}

.padding10 {padding:10px;}

.lineheight150{line-height:150%!important;}

.flex-box-center{
    width:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}

.flex-box-right{
    width:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
     -ms-flex-pack: end;
   justify-content: flex-end;
}

.flex-vertical-middle{
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center; /* 縦方向中央揃え */
}


p.blue-box, p.pink-box, p.orange-box{
  vertical-align: middle;
  position: relative;
  font-size: 0.8em;
  font-weight: bold;
  padding: 0.15em 0.3em;
  text-decoration: none;
  color: #FFF;
  background: #00bcd4;
  transition: .4s;
  margin: 0;
}

p.pink-box{background: #ff69b4;}
p.orange-box{background: #ff7f50;}

.ymd-box{
    vertical-align: middle;
    font-size: 0.8em;
    padding-left:3px;
    margin: 0;
}

.yokonarabi{display: flex;align-items: center;}


/*------------------------------------------------------------
左にメイン　右にサイドバー
-------------------------------------------------------------*/

.flex_main_sidebar{
    width:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.flex_main_sidebar_main{
    width:75%;
    padding-right:10px;
}
.flex_main_sidebar_sidebar{
    width:25%;
    height:auto;
}
@media only screen and (max-width: 739px) {
    .flex_main_sidebar_main { width: 100%; padding:0;}
    .flex_main_sidebar_sidebar { width: 100%; }
}

ul.sidebar_banner_box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;

    flex-wrap: wrap;
    justify-content: space-between;
}
ul.sidebar_banner_box li{
    width:100%;
    margin-bottom:20px;
}

ul.sidebar_banner_sns{
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    flex-wrap: wrap;
    width:100%;
    height:100%;
}

ul.sidebar_banner_sns li{
    padding-bottom:20px;
}
ul.sidebar_banner_sns li:nth-child(1) { height:50%; }
ul.sidebar_banner_sns li:nth-child(2) { height:50%; }
.twitter-timeline{height:100%!important;}
.fb-page {width:100%;height:100%!important;}
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
    width: 100% !important;height:100%!important;
}

@media only screen and (max-width: 739px) {
    .flex_main_sidebar_sidebar, .flex_main_sidebar_sidebar {
        width: 100%;
    }
    .flex_main_sidebar_sidebar ul.sidebar_banner_box, .flex_main_sidebar_sidebar ul.sidebar_banner_sns {
        width: 100%;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
         flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .flex_main_sidebar_sidebar ul.sidebar_banner_sns{height:500px;}
    .flex_main_sidebar_sidebar ul.sidebar_banner_box li{ width:32%;}
    .flex_main_sidebar_sidebar ul.sidebar_banner_sns li{ width:49%;height:100%;}
}
@media only screen and (max-width: 640px) {
    .flex_main_sidebar_sidebar ul.sidebar_banner_box li{ width:49%;}
}
@media only screen and (max-width: 480px) {
    .flex_main_sidebar_sidebar ul.sidebar_banner_sns li{ width:100%;height:100%;}
}

/*------------------------------------------------------------
左に画像50%　右に文章50%のレスポンシブ
-------------------------------------------------------------*/

.half_box_all{
width:100%;
margin:0 0 10px 0;
}
.half_box_all:after{content:"";
display: block;
clear: both;
}
.half_box_left{
float:left;
width:50%;
padding:0;
margin:0;
}

.half_box_left img{
width:100%;
height:auto;
padding:0;
margin:0;
}

.half_box_right{
float:left;
width:50%;
padding:0 10px;
}

@media (max-width: 767px) {
    .half_box_left{
        width:100%;
    }
    .half_box_right{
        padding:10px 0 0 ;
        width:100%;
    }
}

.entry-content {margin-top:30px;}

p.fab__contents_title {font-size:0!important;}
p.fab__contents_title:before {font-size: 18px; content: "シェアをお願いします！"!important;}

.sns-btn__item .fab { display: block;
    width: auto;
    height: auto;
    font-size: 35px;
    line-height: 1;}

p.footer-meta_title {font-size:0!important;}
p.footer-meta_title:before {font-size: 18px; content: "分野："!important;color:#3A8FB7;}

/*------------------------------------------------------------
学習シリーズアーカイブ用
-------------------------------------------------------------*/

.series_box_all{
width:100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin:0 0 10px 0;
}

.series_box_left{
    width:70%;
}
.series_box_right{
    width:28%;
    padding:0 0 0 10px;
    background-color: #DDD;
}

.series_box{
width:100%;
padding:0;
margin:0;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

/* 学習指導 */

.flex_width_half_1000 {/* 幅1000以上は2列にする */
    width:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}



.flex_width_half_1000_box{width:50%;}

.flex_width_half_1000_box ul{ width: 100%; height: 100%; }


/* ##### 画面の横幅1000ピクセル以下 ##### */
@media (max-width: 999px) {
    .flex_width_half_1000_box{width:100%;}

}

/* 講座のシングルページでのタイトル画像 */
.lecture_title_img img{width:100%;max-width:640px;height:auto}

/*------------------------------------------------------------
共通見出し
-------------------------------------------------------------*/

/* イベント見出し */
h3.midashi-sidebar-icon {
    width:100%;
  font-size:18px;
  position: relative;
  background: #f1f8ff;
  padding: 0.25em 0.5em;
  border-left: solid 2em #5c9ee7;
}
h3.midashi-sidebar-icon:before {
  font-family: "Font Awesome 5 Free";
  content: "\f274";
  position: absolute;
  padding: 0em;
  color: white;
  font-weight: normal;
  left: -1.35em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/* ニュース見出し */
h3.midashi-sidebar-icon-news {
    width:100%;
  font-size:18px;
  position: relative;
  background: #f1f8ff;
  padding: 0.25em 0.5em;
  border-left: solid 2em #5c9ee7;
}
h3.midashi-sidebar-icon-news:before {
  font-family: "Font Awesome 5 Free";
  content: "\f1ea";
  position: absolute;
  padding: 0em;
  color: white;
  font-weight: normal;
  left: -1.35em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.box8 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-left: solid 6px #ffc06e;
 background: #fff8e8;
 color: #232323;
}

.img_str_shidou .box8 {margin-top:0;padding:10px 16px 10px 16px;line-height: 1.5em}

.box16 {
    width:100%;
    height:100%;
 margin: 2em 0;
 padding: 1.5em 1em;
 background: repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px, #e9f4ff 3px, #e9f4ff 7px);
}

.box25 {
 position: relative;
 margin: 2em 5px;
 padding: 1.5em 1em;
 border: dashed 2px white;
 background: #fff0cd;
 box-shadow: 0 0 0 5px #fff0cd;
 color: #454545;
}
.box25:after {
 position: absolute;
 top: -7px;
 right: -7px;
 border-width: 0 15px 15px 0;
 border-style: solid;
 border-color: #ffdb88 #fff #ffdb88;
 box-shadow: -1px 1px 1px rgba(0, 0, 0, .15);
 content: "";
}
.box28 {
 position: relative;
 margin: 3em 0 2em;
 padding: 1.5em 1em;
 border: solid 3px #62c1ce;
}
.box28 .box-title {
 display: inline-block;
 position: absolute;
 top: -30px;
 left: -3px;
 height: 28px;
 padding: 0 9px;
 border-radius: 5px 5px 0 0;
 background: #62c1ce;
 color: #fff;
 font-size: 17px;
 vertical-align: middle;
 line-height: 28px;
}

/*トップムービー下*/
.p-index-content01__title{
  padding-top:20px;
}

.img_str_shidou .box28 {margin-top:27px;padding:10px 16px 10x 16px;line-height: 1.5em}
.box29 {
 position: relative;
 margin: 0;
 padding: 30px 15px 15px;
 border: solid 2px #ffc107;
}
.box29 .box-title {
 display: inline-block;
 position: absolute;
 top: -2px;
 left: -2px;
 height: 25px;
 padding: 0 9px;
 background: #ffc107;
 color: #fff;
 font-size: 17px;
 vertical-align: middle;
 line-height: 25px;
}
.box29 .box-title:before {
 padding-right: 4px;
 font-family: "Font Awesome 5 Free";
 content: "\f0eb";
}
.balloon1-right {
    position: relative;
    display: inline-block;
    margin: 0 15px 0 0;
    padding: 7px 5px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 16px;
    background: #e0edff;
}

.balloon1-right:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 100%;
    margin-top: -15px;
    border: 15px solid transparent;
    border-left: 15px solid #e0edff;
}

.keiko_blue {
 background: linear-gradient(transparent 50%, rgba(107, 182, 255, .24) 50%);
}
.keiko_yellow {
 background: linear-gradient(transparent 50%, rgba(255, 252, 107, .69) 50%);
}
.keiko_green {
 background: linear-gradient(transparent 50%, rgba(151, 232, 154, .69) 50%);
}
.keiko_red {
 background: linear-gradient(transparent 50%, rgba(255, 88, 88, 0.24) 50%);
}
.labeltext {
 display: inline-block;
 margin-right: 5px;
 padding: 5px;
 color: #fff;
 font-size: .9em;
 font-weight: bold;
 line-height: 1;
}
.text_orange {color:orange;}

/*見出しhh系共通*/
.hh {
 margin: 1em 0 1em;
 padding: 0;
 border: 0;
 background: transparent;
 box-shadow: none;
 font-weight: bold;
}
p.hh {
 font-size: 1.1em;
}
.hh:before,
.hh:after {
 top: auto;
 right: auto;
 bottom: auto;
 left: auto;
 border: 0;
 background: transparent;
 box-shadow: none;
 content: none;
}

/* 左から右へ矢印 */

.hh19 {
 position: relative;
 padding-left: 25px;
}
.hh19:before {
 position: absolute;
 bottom: -3px;
 left: 0;
 width: 0;
 height: 0;
 border: none;
 border-bottom: solid 15px rgb(119, 195, 223);
 border-left: solid 15px transparent;
 content: "";
}
.hh19:after {
 position: absolute;
 bottom: -3px;
 left: 10px;
 width: 100%;
 border-bottom: solid 3px rgb(119, 195, 223);
 content: "";
}

/* 斜めのストライプ */

.hh20 {
 padding: .5em;
 background: repeating-linear-gradient(-45deg, #cce7ff, #cce7ff 3px,#e9f4ff 3px, #e9f4ff 7px);
 text-shadow: 0 0 5px white;
}

/* 背景ストライプ2 */
.hh21 {
 padding: .5em;
 border-left: solid 7px #6bb6ff;
 background: repeating-linear-gradient(-45deg, #cce7ff, #cce7ff 3px,#e9f4ff 3px, #e9f4ff 7px);
 text-shadow: 0 0 5px white;
}

h1.hh21 {
    font-size:1.7em;
    line-height: 1.8em;
    font-weight: 800;
    color:#4682B4;
}

/** ボックス **/
.sng-box p {
 margin: 0;
 padding: 0;
}
.sng-box .say {margin-bottom: 0}
.sng-box .faceicon {padding-right: 20px;}
.box1 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border: solid 2px #000;
 font-weight: bold;
}
.box2 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border: solid 2px #d1d1d1;
 border-radius: 5px;
 background: #fff;
}
.box3 {
 margin: 2em 0;
 padding: 1.5em 1em;
 background: #edf6ff;
 color: #2c2c2f;
}
.box4 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-top: solid 3px #6bb6ff;
 border-bottom: solid 3px #6bb6ff;
 background: #eef7ff;
 color: #2c2c2f;
}
.box5 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border: double 5px #4ec4d3;
 color: #474747;
}
.box6 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border: dashed 2px #6bb6ff;
 background: #edf6ff;
}
.box7 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-right: double 7px #4ec4d3;
 border-left: double 7px #4ec4d3;
 background: whitesmoke;
 color: #474747;
}
.box8 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-left: solid 6px #ffc06e;
 background: #fff8e8;
 color: #232323;
}
.box9 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-top: solid 6px #f47d7d;
 background: #fceded;
 color: #f47d7d;
 font-weight: bold;
}
.box10 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-top: solid 6px #1dc1d6;
 background: #e4fcff;
 box-shadow: 0 2px 3px rgba(0, 0, 0, .22);
 color: #00bcd4;
}
.box11 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-top: solid 5px #5d627b;
 background: white;
 box-shadow: 0 2px 3px rgba(0, 0, 0, .22);
 color: #5d627b;
}
.box12 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-bottom: solid 6px #aac5de;
 border-radius: 9px;
 background: #c6e4ff;
 color: #5989cf;
 font-weight: bold;
}
.box13 {
 margin: 2em 0;
 padding: 1.5em 1em;
 border-bottom: solid 6px #3f87ce;
 border-radius: 9px;
 background: #6eb7ff;
 box-shadow: 0 2px 3px rgba(0, 0, 0, .22);
 color: #fff;
 font-weight: bold;
}
.box14 {
 margin: 2em 10px;
 padding: 1.5em 1em;
 border: dashed 2px white;
 background: #d6ebff;
 box-shadow: 0 0 0 10px #d6ebff;
}
.box15 {
 margin: 2em 10px;
 padding: 1.5em 1em;
 border: dashed 2px #ffc3c3;
 border-radius: 8px;
 background: #ffeaea;
 box-shadow: 0 0 0 10px #ffeaea;
 color: #565656;
}
.box16 {
 margin: 2em 0;
 padding: 1.5em 1em;
 background: repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px, #e9f4ff 3px, #e9f4ff 7px);
}
.box17 {
 position: relative;
 margin: 2em 0;
 padding: 1em 2em;
 border-top: solid 2px black;
 border-bottom: solid 2px black;
}
.box17:before,
.box17:after {
 position: absolute;
 top: -10px;
 width: 2px;
 height: -webkit-calc(100% + 20px);
 height:   calc(100% + 20px);
 background-color: black;
 content: "";
}
.box17:before {
 left: 10px;
}
.box17:after {
 right: 10px;
}
.box18 {
 position: relative;
 margin: 2em 0;
 padding: 1.5em 1em;
 border: solid 2px #ffcb8a;
 border-radius: 3px 0 3px 0;
}
.box18:before,
.box18:after {
 position: absolute;
 width: 10px;
 height: 10px;
 border: solid 2px #ffcb8a;
 border-radius: 50%;
 content: "";
}
.box18:after {
 top: -12px;
 left: -12px;
}
.box18:before {
 right: -12px;
 bottom: -12px;
}
.box19 {
 position: relative;
 padding: 1.5em 1em;
}
.box19:before,
.box19:after {
 display: inline-block;
 position: absolute;
 width: 20px;
 height: 30px;
 content: "";
}
.box19:before {
 top: 0;
 left: 0;
 border-top: solid 1px #5767bf;
 border-left: solid 1px #5767bf;
}
.box19:after {
 right: 0;
 bottom: 0;
 border-right: solid 1px #5767bf;
 border-bottom: solid 1px #5767bf;
}
.box20 {
 position: relative;
 top: 0;
 margin: 2em 0;
 padding: 1.5em 1em;
 background: #efefef;
}
.box20:before,
.box20:after {
 display: inline-block;
 box-sizing: border-box;
 position: absolute;
 top: 0;
 width: 15px;
 height: 100%;
 content: "";
}
.box20:before {
 left: 0;
 border-top: dotted 2px #15adc1;
 border-bottom: dotted 2px #15adc1;
 border-left: dotted 2px #15adc1;
}
.box20:after {
 right: 0;
 border-top: dotted 2px #15adc1;
 border-right: dotted 2px #15adc1;
 border-bottom: dotted 2px #15adc1;
}
.box21 {
 margin: 2em 0;
 padding: 1.3em;
 background: linear-gradient(to left, #92d2f8, #c4baff);
 box-shadow: 0 5px 15px rgba(0, 0, 0, .13);
 color: #fff;
 font-weight: bold;
}
.box22 {
 margin: 1em 0;
 padding: 1.5em 1em;
 border-left: solid 6px #6bb6ff;
 background: #f6f6f6;
 box-shadow: 0 2px 3px rgba(0, 0, 0, .33);
}
.box23 {
 position: relative;
 max-width: 400px;
 margin: 2em 0 2em 40px;
 padding: 20px;
 border-radius: 30px;
 background: #fff0c6;
}
.box23:before {
 position: absolute;
 bottom: 0;
 left: -40px;
 color: #fff0c6;
 font-family: FontAwesome;
 font-size: 15px;
 content: "\f111";
}
.box23:after {
 position: absolute;
 bottom: 0;
 left: -23px;
 color: #fff0c6;
 font-family: FontAwesome;
 font-size: 23px;
 content: "\f111";
}
.box24 {
 position: relative;
 margin: 2em 0;
 padding: .8em 1em;
 background: #e6f4ff;
 color: #5c98d4;
 font-weight: bold;
}
.box24:after {
 position: absolute;
 top: 100%;
 left: 30px;
 width: 0;
 height: 0;
 border: 15px solid transparent;
 border-top: 15px solid #e6f4ff;
 content: "";
}
.box25 {
 position: relative;
 margin: 2em 5px;
 padding: 1.5em 1em;
 border: dashed 2px white;
 background: #fff0cd;
 box-shadow: 0 0 0 5px #fff0cd;
 color: #454545;
}
.box25:after {
 position: absolute;
 top: -7px;
 right: -7px;
 border-width: 0 15px 15px 0;
 border-style: solid;
 border-color: #ffdb88 #fff #ffdb88;
 box-shadow: -1px 1px 1px rgba(0, 0, 0, .15);
 content: "";
}
.box-title {
 font-weight: bold;
}
.box26 {
 position: relative;
 margin: 2em 0;
 padding: 1.5em 1em;
 border: solid 3px #95ccff;
 border-radius: 8px;
}
.box26 .box-title {
 display: inline-block;
 position: absolute;
 top: -10px;
 left: 10px;
 padding: 0 9px;
 background: #fff;
 color: #95ccff;
 font-size: 19px;
 line-height: 1;
}
.box26 .box-title:before {
 padding-right: 4px;
 font-family: FontAwesome;
 content: "\f02e";
}
.box27 {
 position: relative;
 margin: 2em 0;
 padding: 1.5em 1em 1em;
 border: solid 3px #ed8583;
 border-radius: 8px;
}
.box27 .box-title {
 display: inline-block;
 position: absolute;
 top: -10px;
 left: 10px;
 padding: 0 9px;
 background: #fff;
 color: #ed8583;
 font-size: 19px;
 line-height: 1;
}
.box27 .box-title:before {
 padding-right: 4px;
 font-family: FontAwesome;
 content: "\f071";
}
.box28 {
 position: relative;
 margin: 3em 0 2em;
 padding: 1.5em 1em;
 border: solid 3px #62c1ce;
}
.box28 .box-title {
 display: inline-block;
 position: absolute;
 top: -30px;
 left: -3px;
 height: 28px;
 padding: 0 9px;
 border-radius: 5px 5px 0 0;
 background: #62c1ce;
 color: #fff;
 font-size: 17px;
 vertical-align: middle;
 line-height: 28px;
}
.box29 {
 position: relative;
 margin: 2em 0;
 padding: 30px 15px 15px;
 border: solid 2px #ffc107;
}
.box29 .box-title {
 display: inline-block;
 position: absolute;
 top: -2px;
 left: -2px;
 height: 25px;
 padding: 0 9px;
 background: #ffc107;
 color: #fff;
 font-size: 17px;
 vertical-align: middle;
 line-height: 25px;
}
.box29 .box-title:before {
 padding-right: 4px;
 font-family: FontAwesome;
 content: "\f0eb";
}
.box30 {
 margin: 2em 0;
 padding: 15px 15px 10px;
 background: #dcefff;
}
.box30 .box-title:before {
 padding-right: 4px;
 font-family: FontAwesome;
 content: "\f00c";
}
.box30 .box-title {
 margin: -15px -15px 15px;
 padding: 4px;
 background: #5fb3f5;
 color: #fff;
 font-size: 1.2em;
 text-align: center;
}
.box30 p,.box31 p {
 margin: 0 0 5px;
}
.box31,.box32,.box33 {
 margin: 2em 0;
 padding: 0 15px 10px;
 background: #edf6ff;
 box-shadow: 0 2px 4px rgba(0, 0, 0, .15);
}
.box31 .box-title,
.box32 .box-title,
.box33 .box-title {
 margin: -15px -15px 15px;
 padding: 4px;
 background: #5fc2f5;
 color: #fff;
 font-size: 1.2em;
 text-align: center;
}
.box32,
.box33 {
 background: #fff9eb;
}
.box32 .box-title {
 background: #f5a15f;
}
.box33 .box-title {
 background: #f46b6b;
}

/* 文字がある部分だけ色がつく下線見出し */
.midashi_moji_kasen {
  width: 100%;
  margin: 0 auto;
  padding: 10px 0;
}
h2.midashi_moji_kasen .heading span{
  color:#3cb3e4;
  margin: 10px 0;

}
.midashi_moji_kasen .heading {
  overflow: hidden;
  position: relative;
  padding-bottom: 3px;
}
.midashi_moji_kasen .heading span{
  padding: 0px;
}
.midashi_moji_kasen .heading:before {
  content: "";
  border-bottom: 3px solid #3cb3e4;
  bottom: 0;
  height: 0;
  position: absolute;
  width: 100%;
  z-index: 0;
}
.midashi_moji_kasen .heading:after {
  border-bottom: 3px solid #ddd;
  bottom: 0;
  content: "";
  position: absolute;
  width: 100%;
  z-index: 1;
}

/* 縦線＋下線見出し */

.midashi_tate_kasen {
     position: relative;
     padding:0 0 0.5em 0.7em;
     border-bottom: 1px solid #ddd;
}

.midashi_tate_kasen::after {
     position: absolute;
     top: -0.2em;
     left:0;
     content: '';
     width: 5px;
     height:1.4em;
     background-color: #446689;
}

/* 日付表示 */
.top-date {
    padding: 3px 0;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 14px;
    text-align: right;
    color:#bbb;
}

/* ドット見出し */

.midashi_dot {
     position: relative;
     color: white;
     padding:0.5em 0.5em 0.5em 2em;
     background-color: #446689;
     border-radius:1.5em;
}
 
.midashi_dot::after {
     position: absolute;
     top: 50%;
     left:1em;
     transform:translateY(-50%);
     content: '';
     width: 13px;
     height:13px;
     background-color: white;
     border-radius:100%;
}

/* 下フキダシ見出し */

.midashi_shitafukidashi {
     text-align: center!important;
}
 
.midashi_shitafukidashi span{
     position: relative;
     display: inline-block;
     padding-bottom:0.5em;
     border-bottom: 1px solid black;
}
      
.midashi_shitafukidashi span::before,
.midashi_shitafukidashi span::after {
     position: absolute;
     top: 100%;
     left:50%;
     transform:translateX(-50%);
     content: '';
     border: 10px solid transparent;
}
 
.midashi_shitafukidashi span::before {
     border-top: 10px solid black;
}
 
.midashi_shitafukidashi span::after {
     margin-top: -1px;
     border-top: 10px solid white;
}

/* トーン見出し */

.midashi_tone {
     position: relative;
     padding-bottom: 0.5em;
     border-bottom: 4px solid #DDD;
}
 
.midashi_tone::after {
     position: absolute;
     content: " ";
     border-bottom: solid 4px #446689;
     bottom: -4px;
     width:10%;
     display: block;
}

/* トップのビデオ */
.p-header-video video{margin:0;}
.p-index-content01 {
  padding-top:0;
  padding-bottom:20px;
  margin-bottom:50px;
}
.p-header-content__title.p-header-content__title--vertical{height:0;}

/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
    .p-header-video { height: 360px;;}
}
/* ##### 画面の横幅768～999ピクセル ##### */
@media (min-width: 768px) and (max-width: 999px) {
    .p-header-video { height: 360px;}
}
/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {
    .p-header-video { height: 280px;}
}

/* ##### 画面の横幅640ピクセル以下 ##### */
@media (max-width: 640px) {
    .globalmenu_padding .l-inner { padding-right: 0;padding-left: 0;}
    .p-cb__item.l-inner.marginbottom_mini { margin: 0;padding:0 10px;}
}


/* トップの見出し */
h1.top_midashi {
    font-family: 'Rounded Mplus 1c';
    font-size: 1em;
    font-weight: 700;
    margin-top: 5px;
    margin-bottom: 12px;
    line-height: 1.4;
    position: relative;
    border-top: dotted 1px gray;
    border-bottom: dotted 1px gray;
    background-color: #fffff4;
    color: #ff6a6a;
    padding: 0.5em 0.5em 0.5em 1.5em;
}
h1.top_midashi:before {
    font-family: "Font Awesome 5 Free";
    font-size: 1em;
    left: 0.25em;
    position: absolute;
    top: 0.5em;
    color: #ff6a6a;
    content: "\f35a";
}

/* ロゴと電話番号 */
#js-cb.p-cb{padding-top:0;}
.logo_and_phone .p-cb__item.l-inner{margin-bottom:10px;}
.school_phone p {
    line-height: 1.5em;
    vertical-align: top;
}

@media only screen and (min-width: 767px) {
.tokuchou a.p-btn {
    position: absolute;
    bottom: 20px;
    -webkit-transform: translate(-50%,0);
    -moz-transform: translate(-50%,0);
    -ms-transform: translate(-50%,0);
    -o-transform: translate(-50%,0);
    transform: translate(-50%,0);
    margin: 0 auto!important;
    padding: 0!important;
}
p.p-article08__desc {
    margin-bottom:50px;
}
}

.school_phone p {
    font-size: 13px;
    margin-top: 6px;
}
h2.phone_pc {
    line-height: 24px;
}
a.big_str {
    font-size: 20px;
}
.header-site {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 20px 0 0;
}
.header-site:after {
    display: block;
    content: "";
    clear: both;
}
.member-registration {
    font-size: 14px;
}
.member-registration a {
    float: right;
    margin: 10px 10px 0 0;
}
.phone-number {
    width: 50%;
    text-align: right;
    padding: 0;
    margin: 0;
}
.phone-number .school_phone p {
    font-size: 16px;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: 5px;
    margin-bottom: 0;
    margin-left: 0;
}
.phone-number h2.phone_pc {
    font-size: 30px;
    margin-bottom: 5px;
}
.phone_pc {
    color: #cb6686 !important;
    text-decoration: none;
    padding: 0;
    margin: 0;
}
.phone-number h2 {
    font-size: 30px;
    font-weight: bold;
    padding: 0;
    margin: 0;
}
.h_logo {
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
}
.site {
    width: 50%;
    height: auto;
}
.logo_pc {
    display: block !important;
    width:540px;
}
.logo_sp {
    display: none !important;
}
.logo_tab {
    display: none !important;
}
.catchCopy p {
    font-size: 14px;
    margin-top: 5px;
    margin-bottom: 8px;
    text-align: justify;
    color: #555;
    font-weight: bold;
    line-height: 1.5em;
}
.osusume8_btn_left {
    margin-bottom: 10px;
    padding: 0 5px 0 0;
}
.osusume8_btn_right {
    margin-bottom: 10px;
    padding: 0 0 0 5px;
}
.info_short {
    margin-bottom: 20px;
    border: solid 5px #ddd;
    padding: 10px;
    width:100%;
    height:auto;
}
.info_short h1 {
    font-size: 21px;
    margin-top: 0;
    margin-bottom: 5px;
    color: #666;
}
.info_short h1:hover {
    text-decoration: underline;
}
.info_short ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.info_short ul li {
    width:100%;
}
.info_short ul li article {width:100%;}
.info_short li a {
    font-size: 16px;
    display: block;
    border-bottom: dotted 2px #ddd;
    color: #000;
    text-decoration: none;
    padding: 5px;
}
.info_short li a:hover {
    background-color: #eee;
}
.info_short time {
    float: left;
    width: 60px;
    font-size: 16px;
    color: #888;
    font-weight: bold;
}
.info_short a {
    color: #666;
    text-decoration: none;
}
.info_short a:after {
    display: block;
    content: "";
    clear: both;
}
.info_short .text {
    float: none;
    width: auto;
    margin-left: 70px;
}
.box16 {
    padding: 1em;
    margin: 0;
}
.sng-box.box33 {
    margin: 26px 0 20px;
}
.keiko_pink {
    background-image: -moz-linear-gradient(top, transparent, rgba(255,105,180,.24));
    background-image: -webkit-linear-gradient(top, transparent, rgba(255,105,180,.24));
    background-image: -o-linear-gradient(top, transparent, rgba(255,105,180,.24));
    background-image: -ms-linear-gradient(top, transparent, rgba(255,105,180,.24));
    background-image: linear-gradient(to bottom, transparent, rgba(255,105,180,.24));
}
.keiko_purple {
    background-image: -moz-linear-gradient(top, transparent, rgba(119,66,141,.24));
    background-image: -webkit-linear-gradient(top, transparent, rgba(119,66,141,.24));
    background-image: -o-linear-gradient(top, transparent, rgba(119,66,141,.24));
    background-image: -ms-linear-gradient(top, transparent, rgba(119,66,141,.24));
    background-image: linear-gradient(to bottom, transparent, rgba(119,66,141,.24));
}
.keiko_glay {
    background-image: -moz-linear-gradient(top, transparent, rgba(78,78,78,.24));
    background-image: -webkit-linear-gradient(top, transparent, rgba(78,78,78,.24));
    background-image: -o-linear-gradient(top, transparent, rgba(78,78,78,.24));
    background-image: -ms-linear-gradient(top, transparent, rgba(78,78,78,.24));
    background-image: linear-gradient(to bottom, transparent, rgba(78,78,78,.24));
}

.ttl_dx_h2, .article-header .ttl_dx_h2 {
    font-size: 26px;
    margin-bottom: 10px;
    position: relative;
    color: #3498db;
    font-weight: bold;
    border-left: 6px solid #ccc;
    padding: .25em 0 .5em .75em;
}
.ttl_dx_h2::before, .article-header .ttl_dx_h2::before {
    width: 6px;
    height: 50%;
    left: -6px;
    bottom: 0;
    position: absolute;
    background-color: #3498db;
    content: '';
}
.ttl_dx_h2::after, .article-header .ttl_dx_h2::after {
    width: 100%;
    height: 0;
    left: 0;
    bottom: 0;
    position: absolute;
    border-bottom: 2px solid #ccc;
    content: '';
}
.ttl_dx_h2.midashi_yellow::before {
    background-color: #daa520;
}
.ttl_dx_h2.midashi_yellow {
    color: #daa520;
}
.ttl_dx_h2.midashi_green::before {
    background-color: #3cb371;
}
.ttl_dx_h2.midashi_green {
    color: #3cb371;
}
.ttl_dx_h2.midashi_emerald::before {
    background-color: #00CED1;
}
.ttl_dx_h2.midashi_emerald {
    color: #5F9EA0;
}
.ttl_dx_h2.midashi_orange::before {
    background-color: #FF8C00;
}
.ttl_dx_h2.midashi_orange {
    color: #FF8C00;
}
.midashi {
    font-size: 1;
    margin-top: 0;
    margin-bottom: 1rem;
    padding-bottom: 4px;
    padding-top: 10px;
    position: relative;
    border-bottom: 4px solid #ccc;
    color: #555;
    font-weight: normal;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
}
.midashi span {
    color: #FF7F50;
    font-size:1.3em;
    font-weight: 800;
}
.midashi a {
    color: #555;
}
.midashi::before {
    width: 20%;
    height: 4px;
    left: 0;
    position: absolute;
    z-index: 2;
    top: 100%;
    background-color: #3498db;
    content: '';
}
.midashi i {
    font-size: 1.8em;
    margin-right: 0.2em;
    position: relative;
    top: 5px;
    color: #3498db;
}
.list_big .post_ttl {
    height: 2.6em;
    line-height: 1.4em;
}
.midashi_btn {
    float: right;
    font-size: 1.0em;
    position: relative;
    top: 2px;
    border: 2px solid !important;
    padding: 0.1em 0.5em;
}
.midashi:after {
    display: block;
    content: "";
    clear: both;
}
h2.midashi {
    font-size: 1.3em;
    margin-top: 5px;
    padding-bottom: 5px;
    line-height: 1.6em;
}
h3.midashi {
    font-size: 1.1em;
    margin-top: 0px;
    padding-bottom: 5px;
    line-height: 1.4em;
}
h3.midashi.orange_midashi i{color:#DAA520;}
h3.midashi.orange_midashi::before {background-color:#DAA520 }
h3.midashi.darkorange_midashi i{color:#FF8C00;}
h3.midashi.darkorange_midashi::before {background-color:#FF8C00 }
a.linkto {
    border-color: #fff;
}
.search_widget {
    margin: 10px 0 2.5em;
}

.widget-archive-thumb p {
	color:#4F4F48;
	text-align:justify;
}
.widget-archive-thumb p:hover{
	color:#f00!important;
}
.widget-archive-thumb a:hover{
	text-decoration: none!important;
}
.widget_img {
    margin-top: 0;
    margin-bottom: 0;
    padding: 8px 10px;
}
.img_shadow {
    width:100%;
    position: relative;
    background-color: #fff;
    overflow: hidden;
    cursor: pointer;
    -moz-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    -webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    -o-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    -moz-transition: .2s ease-in-out;
    -webkit-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
    margin: 0;
}
.img_shadow:hover {
    -moz-transform: translateY(-4px);
    -webkit-transform: translateY(-4px);
    -o-transform: translateY(-4px);
    transform: translateY(-4px);
    -moz-box-shadow: 0 15px 30px -5px rgba(0,0,0,.15),0 0 5px rgba(0,0,0,.1);
    -webkit-box-shadow: 0 15px 30px -5px rgba(0,0,0,.15),0 0 5px rgba(0,0,0,.1);
    -o-box-shadow: 0 15px 30px -5px rgba(0,0,0,.15),0 0 5px rgba(0,0,0,.1);
    box-shadow: 0 15px 30px -5px rgba(0,0,0,.15),0 0 5px rgba(0,0,0,.1);
}
.card.border-dark {
    border-color: #aaa !important;
}

.img_str_big h2{margin-bottom:20px;}
.img_str_big ul {
    width: 100%;
    display: flex;
    animation: fadeIn .7s ease 0s 1 normal;
    list-style-type: none;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    -moz-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    -webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    -o-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    padding: 0;
    margin: 0 0% 25px 0;
}
.img_str_big span {
    font-size: 18px;
    margin-bottom: 0;
}
.img_str_big li img {
    width: 100%;
}
.img_str_big li:first-child {
    width: 40%;
    height: auto;
    order: 1;
    padding: 10px;
}
.img_str_big li:nth-child(2) {
    width: 60%;
    order: 2;
    padding: 10px;
}
.img_str_big li:nth-child(3) {
    width: 50%;
    order: 3;
    padding: 10px;
}
.img_str_big li:nth-child(4) {
    width: 50%;
    order: 4;
    padding: 10px;
}
.column_str_all {

    height: 100%;
    list-style-type: none;
    padding: 0;
}
.column_str_up {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
    padding: 0;
}
.column_str_up p {
    font-size: 14px;
    margin-bottom: 0;
}
.column_str_down {
    width: 100%;
    height: auto;
    margin-bottom: 0;
    padding: 0;
}
.column_str_down p {
    font-size: 14px;
    margin-bottom: 0;
}

.row_str_all {
    width: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    height: 100%;
    list-style-type: none;
    align-content: space-between;
    padding: 0;
}
.row_str_left {
    width: 55%;
    height: auto;
    padding: 0 0 10px;
}
.row_str_left p {
    font-size: 14px;
    margin-bottom: 0;
}
.row_str_right {
    width: 45%;
    height: auto;
    padding: 0 0 10px;
}
.row_str_right p {
    font-size: 14px;
    margin-bottom: 0;
}
.img_str_series ul.first_ul {
    display: flex;
    animation: fadeIn .7s ease 0s 1 normal;
    list-style-type: none;
    padding: 0;
    margin: 0 0% 25px;
}
.img_str_series span {
    margin-bottom: 0;
}
.img_str_series ul.first_ul li:first-child { /* background-color: #ffa; */
    width: 60%;
    order: 1;
    padding: 10px;
}.img_str_series ul.first_ul li:first-child img {
    width: 100%;
}
.img_str_series ul.first_ul li:nth-child(2) { /* background-color: #faa; */
    width: 40%;
    order: 2;
    padding: 10px;
}

.column_str_series ul.second_ul{
    display: flex;
    -webkit-flex-direction: column; /* Safari */
    flex-direction:         column;
      -webkit-align-content: stretch; /* Safari */
  align-content:         stretch;
    -webkit-justify-content: space-between; /* Safari */
  justify-content:         space-between;
}

.column_str_series ul.second_ul li:first-child { /* background-color: #faf; */
    width: 100%;
    order: 1;
    padding: 0;
    margin-bottom: 0;
}

.column_str_series ul.second_ul li:nth-child(2) { /* background-color: #aff; */
    width: 100%;
    align-items: flex-end;
    -webkit-align-items: flex-end;
    order: 2;
    padding: 0;
    text-align: right;
}
.column_str_series ul.second_ul li:nth-child(2) img {
    width: 60%;
    min-width: 150px;
}

@media only screen and (max-width: 480px) {
    .img_str_series ul.first_ul li:first-child { width:100%; }
    .img_str_series ul.first_ul li:nth-child(2) { width:100%; }
    .column_str_series ul.second_ul.series_right {
        -webkit-flex-direction: column; /* Safari */
    flex-direction:         column;
    }
}

/* フランチャイズチェーン　Franchise chain */
.flex_fc_description_text p{
    font-size: 1em;
    margin-top:1em;
    line-height: 1.5em;
}

.series_name_midashi h3 {
    font-size: 1.2em;
    margin-bottom: 0.8em;
    line-height: 1.4em;
    color: #555;
}
.series_name_midashi h3 a {
    color: #555;
}
.column_str_series p {
    font-size: 1;
    line-height: 1.4em;
    color: #555;
}

/* 教室の外観 */

.flex_wrap_container{
	width: 100%;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

	-ms-flex-wrap: wrap;
    flex-wrap: wrap;
	padding: 0;
	margin: 0;
}

.img_str_fukidashi {
	width: 100%;
	display: flex;
}

.img_str_fukidashi ul {
    width: 100%;
    display: flex;
    animation: fadeIn .7s ease 0s 1 normal;
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.img_str_fukidashi ul li:first-child{
    width: 50%;
    height:100%;
}
.img_str_fukidashi ul li:nth-child(2){
    width: 50%;
    height:100%;
}
.img_str_fukidashi ul li img{
    width: 100%;
    height:100%;
}

.row_fukidashi_all {
    width: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    height: 100%;
    list-style-type: none;
    align-content: space-between;
    padding: 0;
}
.row_fukidashi_left {
    width: 50%;
    height: auto;
    padding: 0 0 10px;
}
.row_fukidashi_left p {
    font-size: 14px;
    margin-bottom: 0;
}
.row_fukidashi_right {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    justify-content: center;
    align-items: center;
    padding: 0 0 10px;
}
.row_fukidashi_right p {
    font-size: 14px;
    margin-bottom: 0;
    height: 100px;
}
.row_fukidashi_right img {
    width: 100%;
    height: auto;
}
.bottom_img {
    display: inline-flex;
    align-items: center;
}
.img_str_fukidashi li:first-child {
    width: 50%;
    height: 100%;
    order: 1;
    padding: 10px;
}
.img_str_fukidashi li:nth-child(2) {
    width: 50%;
    height: 100%;
    order: 2;
    padding: 10px;
}
img.cover_img {
  width:100%;
  height:auto;
}
@media only screen and (min-width: 1000px) {
	.img_str_fukidashi {
        width:50%;
        height:auto;
    }
  img.cover_img {
    height: 100%;
    width:100%;
    object-fit: cover;
  }
}

.img_str_shidou ul {
    width: 100%;
    height:100%;
    display: flex;
    height: 100%;
    animation: fadeIn .7s ease 0s 1 normal;
    list-style-type: none;
    padding: 0;
    margin: 0;
}
.img_str_shidou li {
    width: 100%;
    height: 100%;
}
.img_str_shidou p {
    text-align: justify;
    text-justify: inter-ideograph;
}


.row_shidou_all {
    width: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    height: auto;
    list-style-type: none;
    align-content: space-between;
    padding: 0;
}
.row_shidou_left {
    width: 50%;
    height: auto;
    padding: 0 0 10px;
}

.row_shidou_left p {
    font-size: 14px;
    margin-bottom: 0;
}
.row_shidou_right {
    width: 50%;
    display: flex;
    flex-wrap: wrap;
    height: auto;
    justify-content: center;
    align-items: center;
    padding: 0 0 10px;
}
.row_shidou_right p {
    font-size: 14px;
    margin-bottom: 0;
    height: 100px;
}
.row_shidou_right img {
    width: 100%;
    height: auto;
}
.img_str_shidou li:first-child {
    width: 50%;
    height: 100%;
    align-self: flex-start;
    order: 1;
    padding: 10px;
}
.img_str_shidou li:nth-child(2) {
    width: 50%;
    height: 100%;
    align-self: flex-start;
    order: 2;
    padding: 10px;
}
h4.shidou_midashi {
    font-size: 1.2em;
    font-weight: 800;
}
.img_str_shidou .box25 {
    margin-top: 0;
    margin-bottom: 10px;
}
.img_str_shidou .box5 {
    margin-top: 0;
    margin-bottom: 10px;
}
.access_flex p {
    font-size: 14px;
    margin-bottom: 0;
}
.access_flex span {
    font-size: 18px;
    margin-bottom: 0;
}
.access_flex ul {
    width: 100%;
    display: flex;
    flex-direction: row;
    -webkit-flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    animation: fadeIn .7s ease 0s 1 normal;
    list-style-type: none;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    -moz-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    -webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    -o-box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    padding: 0;
    margin: 0 0% 25px;
}
.access_flex li img {
    width: 100%;
}
.access_flex li:first-child {
    width: 40%;
    height: auto;
    order: 1;
    padding: 10px;
}
.access_flex li:nth-child(2) {
    width: 60%;
    order: 2;
    padding: 10px;
}
.access_flex li:nth-child(3) {
    width: 100%;
    order: 3;
    padding: 10px;
}
.access_flex li:nth-child(4) {
    width: 100%;
    order: 4;
    padding: 10px;
}
.access_flex li:nth-child(5) {
    width: 100%;
    order: 5;
    padding: 10px;
}
.access_flex li:nth-child(6) {
    width: 100%;
    order: 6;
    padding: 10px;
}
.access_flex li:nth-child(7) {
    width: 100%;
    order: 7;
    padding: 10px;
}
.access_flex li:nth-child(8) {
    width: 50%;
    order: 8;
    padding: 10px;
}
.access_flex li:nth-child(9) {
    width: 50%;
    order: 9;
    padding: 10px;
}
@media only screen and (max-width: 940px) {
h2.midashi {
    font-size: 1.2em;
    padding-top: 3px;
}
}
@media only screen and (max-width: 900px) {
.phone-number .school_phone p {
    font-size: 16px;
}
}
@media only screen and (max-width: 800px) {
    .phone-number .school_phone p {
        font-size: 14px;
    }
}
@media only screen and (max-width: 767px) {
    .access_flex li:first-child {
        width: 100%;
    }
    .access_flex li:nth-child(2) {
        width: 100%;
    }
    .img_str_shidou ul {
       width: 100%;
        height: auto;
        flex-direction: column;
    }
    .img_str_shidou li:first-child {
        width: 100%;
        height: auto;
    }
    .img_str_shidou li:nth-child(2) {
        width: 100%;
        height: auto;
    }
    .row_shidou_left {
        padding-top: 0;
    }
    .row_shidou_right {
        padding-top: 0;
    }
    .img_str_fukidashi ul {
      width:100%;
        flex-direction: column;
    }
    .flex_wrap_container .img_str_fukidashi ul li:first-child {
        width: 100%;
        height: 100%;
        align-self: flex-start;
    }
    .flex_wrap_container .img_str_fukidashi li:nth-child(2) {
        width: 100%;
        height: 100%;
        align-self: flex-start;
    }
    .row_fukidashi_left {
      width:70%;
        padding-top: 0;
    }
    .row_fukidashi_right {
      width:30%;
        padding-top: 0;
    }
    .row_str_left {
        width: 50%;
        padding-top: 0;
    }
    .row_str_right {
        width: 50%;
        padding-top: 0;
    }
    .column_str_up {
        padding-top: 0;
    }
    .column_str_down {
        padding-top: 5px;
    }
    .img_str_big ul {
        flex-direction: column;
    }
    .img_str_big li:first-child {
        width: 100%;
    }
    .img_str_big li:nth-child(2) {
        width: 100%;
    }
}

@media only screen and (max-width: 900px) {
    .phone-number .school_phone p {
        font-size: 14px;
    }
    .logo_pc {
    width: 450px;
    display: block !important;
    }
    .logo_sp {
    display: none !important;
    }
}

@media only screen and (max-width: 800px) {
    .site {
        width: 50%;
    }
    .phone-number {
        width: 50%;
    }
    .phone-number .school_phone p {
        font-size: 12px;
    }
    .logo_pc {
    width: 425px;
    display: block !important;
    }
    .logo_sp {
    display: none !important;
    }
}

@media only screen and (max-width: 767px) {
    .site {
        width: 50%;
    }
    .phone-number {
        width: 50%;
    }
    .phone-number .school_phone p {
        font-size: 12px;
    }
    .logo_pc {
    width: 400px;
    display: block !important;
    }
}

@media only screen and (max-width: 640px) {
.site {
    width: 100%;
}
.site .h_logo {
    margin-bottom: 10px;
}
.phone-number .school_phone p {
    font-size: 16px;
}
.phone-number {
    width: 100%;
    text-align: center;
}
.logo_pc {
    width: 0;
    display: none !important;
    height: 0;
}
.logo_sp {
    width:100%;
    display: block !important;
}
.logo_tab {
    width: 0;
    display: none !important;
    height: 0;
}
.headline .logo_box_all {
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.headline .logo_box {
    width: 100%;
    text-align: center;
    padding: 10px 10px 5px;
}
.headline .logo_str {
    width: 100%;
}
.headline .logo_str h1 {
    font-size: 16px;
    margin-top: 0;
    padding-left: 0;
    text-align: center;
}
.headline .logo_box img {
    width: 400px;
    height: auto;
}
.headline h1.site-title {
    font-size: 12px;
    margin-bottom: 10px;
}
}

@media only screen and (max-width: 599px) {
    .gmenu li a {
    font-size: 16px;
    display: block;
    }
}

#global_menu {
    width: 100%;
    display: block !important;
}
.gmenu ul {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
}
.gmenu li a {
    font-size: 20px !important;
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 0;
}
.gmenu ul:after {
    display: block;
    content: "";
    clear: both;
}
.gmenu li {
    float: left;
    width: 20%;
}
@media only screen and (max-width: 480px) {
  .gmenu span {
    display:none;
  }
}

.header-nav {
    width: 100%;
    margin-bottom: 10px;
    background-color: #ddd;
}
.header-nav .btn {
    width: 100%;
    font-size: 14px;
    border: 0;
    border-bottom: 4px solid #ccc;
    font-weight: bold;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
    -moz-box-shadow: 0 5px 5px -6px rgba(0,0,0,.3);
    -webkit-box-shadow: 0 5px 5px -6px rgba(0,0,0,.3);
    -o-box-shadow: 0 5px 5px -6px rgba(0,0,0,.3);
    box-shadow: 0 5px 5px -6px rgba(0,0,0,.3);
    padding: 10px 0 8px 0;
    margin: 0;
}
.header-nav .btn .btn-block:active, .btn .btn-lg:active {
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
    -moz-box-shadow: inset 0 3px 3px -5px rgba(0,0,0,.3);
    -webkit-box-shadow: inset 0 3px 3px -5px rgba(0,0,0,.3);
    -o-box-shadow: inset 0 3px 3px -5px rgba(0,0,0,.3);
    box-shadow: inset 0 3px 3px -5px rgba(0,0,0,.3);
}
.header-nav .btn-success {
    background-color: #78c2c4;
    border-color: #6699a1;
    text-shadow: 1px 1px 0 #336774;
}
.header-nav .btn-success:hover, .btn-success:focus {
    background-color: #33a6b8;
    border-color: #2b5f75;
}
.header-nav .btn-info {
    background-color: #dc9fb4;
    border-color: #e87a90;
    text-shadow: 1px 1px 0 #b5495b;
}
.header-nav .btn-info:hover, .btn-info:focus {
    background-color: #e16b8c;
    border-color: #9f353a;
}
.header-nav .btn-warning {
    background-color: #f6c555;
    color: #fff;
    border-color: #d79a34;
    text-shadow: 1px 1px 0 #c99833;
}
.header-nav .btn-warning:hover, .btn-warning:focus {
    background-color: #f5a620;
    border-color: #74673e;
}
.header-nav .btn-danger {
    background-color: #86c166;
    border-color: #7ba23f;
    text-shadow: 1px 1px 0 #516e41;
}
.header-nav .btn-danger:hover, .btn-danger:focus {
    background-color: #00aa90;
    border-color: #42602d;
}

.header-nav .btn-primary {
    background-color: #ffba84;
    border-color: #fb9966;
    text-shadow: 1px 1px 0 #c1693c;
}
.header-nav .btn-primary:hover, .btn-primary:focus {
    background-color: #e79460;
    border-color: #96632e;
}


.header-nav .btn_honbu {
    background-color: #58B2DC;
    border-color: #3A8FB7;
    text-shadow: 1px 1px 0 #2B5F75;
}
.header-nav .btn_honbu:hover, .btn_honbu:focus {
    background-color: #3A8FB7;
    border-color: #006284;
}

.header-nav .btn_fc {
    background-color: #DDD23B;
    border-color: #B1B479;
    text-shadow: 1px 1px 0 #6C6024;
}
.header-nav .btn_fc:hover, .btn_fc:focus {
    background-color: #A28C37;
    border-color: #867835;
}

.header-nav .btn_contact {
    background-color: #9B90C2;
    border-color: #6E75A4;
    text-shadow: 1px 1px 0 #6A4C9C;
}
.header-nav .btn_contact:hover, .btn_contact:focus {
    background-color: #6E75A4;
    border-color: #4E4F97;
}

.header-nav .btn-pressure {
    margin-bottom: 0;
    position: relative;
}
.header-nav .btn-pressure:focus {
    outline: medium none;
    -moz-outline-style: none;
}
.header-nav .btn-pressure:active, .btn-pressure.active {
    position: relative;
    top: 4px;
    border: 0;
}
.header-nav .btn-sensitive:active, .btn-sensitive.active {
    margin-top: 4px;
    top: 1px;
}

.header-nav .btn {
    font-size: 18px;
    color:#fff;
 }
 @media only screen and (max-width: 767px) {
     .header-nav .btn {
        font-size: 18px;
    }
    .header-nav .btn  span {
        font-size: 0px;
        display: inline-block;
        text-indent: -9999px;
    }
    .header-nav .nav_change_str {font-size:0;}
    .header-nav .nav_change_str:before {font-size: 18px; content: "FC";}
}
@media only screen and (max-width: 599px) {
    .header-nav .btn { font-size: 16px; }
    .header-nav .nav_change_str:before {font-size: 16px;}
}
@media only screen and (min-width: 768px) {
    .header-nav .btn { font-size: 18px; }
}
@media only screen and (min-width: 1190px) {
    .header-nav .btn { font-size: 20px; }
}

/*------------------------------------------------------------
flex_fc_description
-------------------------------------------------------------*/

/* flex_fc_description_photos */

.flex_fc_description {
    margin: 0 0 30px 0;
    width: 100%;
}

.flex_fc_description_photos {
    width: 100%;
}

.flex_fc_description_photos ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
     -ms-flex-direction: row;
         flex-direction: row;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}
.flex_fc_description_photos li {
  width: 20%;
  height: auto;
  padding:5px;
}

.flex_fc_description_photos li img{
  width: 100%;
}

.flex_fc_description_photos ul li:nth-child(13){
    width:40%;
    height: auto;
}
.flex_fc_description_photos .eigyo_photo img{
  width: 100%;
  height: auto;
}

.flex_fc_description_photos ul li:nth-child(14){
    width:60%;
}

.flex_fc_description_photos ul li .flex_fc_description_text h3{
    width:100%;
    margin-top:0!important;
    text-align: center;
    font-size:18px;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight:200!important;
}

.flex_fc_description_photos ul li .flex_fc_description_text h3.hh.hh15{
    padding-left:0!important;
    padding-right:0!important;
    line-height: 0.8;
    background:#e50011!important;
    
}

.flex_fc_description_photos ul li .flex_fc_description_text h3.hh.hh15::before{
    border-right: solid 20px #A52A2A!important;
}

.flex_fc_description_photos ul li .flex_fc_description_text p{
    width:100%;
    margin-top:0!important;
    padding:0 8px 0 16px;
    text-align: justify;
    font-size:18px;
    font-family: "Rounded Mplus 1c";
    font-weight: 400!important;
    color:#333;
}

/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
    .flex_fc_description_photos ul li:nth-child(11) { display: none; }
    .flex_fc_description_photos ul li:nth-child(12) { display: none; }
    .flex_fc_description_photos ul li .flex_fc_description_text h3{ font-size:18px; }
    .flex_fc_description_photos ul li .flex_fc_description_text p{ font-size:18px; }
}

/* ##### 画面の横幅768～999ピクセル ##### */
@media (min-width: 768px) and (max-width: 999px) {
    .flex_fc_description_photos ul li:nth-child(11) { display: none; }
    .flex_fc_description_photos ul li:nth-child(12) { display: none; }
    
    
    .flex_fc_description_photos ul li .flex_fc_description_text h3{ font-size: calc(12px + 6 * (100vw - 768px) / 231); }
    .flex_fc_description_photos ul li .flex_fc_description_text p{ font-size: calc(14px + 4 * (100vw - 768px) / 231); }
}

/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {
    .flex_fc_description_photos li { width: 25%; }
    .flex_fc_description_photos ul li .flex_fc_description_text h3{ font-size:12px; font-weight: 600!important; }
    .flex_fc_description_photos ul li .flex_fc_description_text p{ font-size:14px;line-height: 1.5;padding:0; }
}

/* burger */
/* CSSグリッドに対応したブラウザ用の設定 */
@supports (display: grid) {


/* 基本 */
.burger * {
	margin: 0;
}

.burger img	{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.burger-sub img {
	max-width: 100px;
}


/* グリッド */
.burger {
	--side: 20px;
	display: grid;
	grid-template-columns: 100px 1fr auto;
	grid-template-rows: auto 200px;
	grid-column-gap: 15px;
	grid-row-gap: 30px;
	margin: 0 var(--side) 30px;
    font-family: 'Noto Sans Japanese', sans-serif;
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 2px #eee;
}

/* 大きい画像 */
.burger-photo {
	grid-column: 1 / -1;
	grid-row: 1;
	margin: 0 calc( var(--side) * -1);
}

.burger-photo img {
	height: 100%;
	object-fit: cover;
	max-height: 600px;
}

/* タイトル */
.burger-title {
	grid-column: 3;
	grid-row: 1 / -1;
	align-self: end;
	z-index: 1;
	padding: 120px 0 40px;
	font-size: 56px;
	font-weight: 900;
	line-height: 1.3;
	writing-mode: vertical-rl;
}

/* 文章 */
.burger-text {
	grid-column: 2;
	grid-row: 2;
	justify-self: center;
	font-size: 16px;
	font-weight: 300;
	line-height: 1.85;
	writing-mode: vertical-rl;
}

/* サブ情報 */
.burger-sub {
	grid-column: 1;
	grid-row: 2;
}

.burger-sub p {
	margin-top: 10px;
	font-size: 10px;
	font-weight: 500;
	line-height: 1.5;
}


/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
	.burger {
		--side_old: calc( (100vw - 960px) / 2 );
	}

	/* 文章 */
	.burger-text {
    font-size: 17px;
		line-height: 1.7;
	}
  .burger-sub p { font-size: 15px; }
}


/* ##### 画面の横幅768～999ピクセル ##### */
@media (min-width: 768px) and (max-width: 999px) {
	/* 文章 */
	.burger-text {
    font-size: 14px;
		line-height: calc(22.2px + 5.0 * (100vw - 768px) / 232);
	}
    .burger-sub p { font-size: 15px; }
}


/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {

	.burger {
		grid-template-columns: 1fr auto;
		grid-template-rows: auto 200px auto;
	}

	/* タイトル */
	.burger-title {
		grid-column: 2;
		grid-row: 1 / 3;
		font-size: 35px;
	}

	/* 文章 */
	.burger-text {
		grid-column: 1;
		grid-row: 2;
		overflow-x: auto;
		min-width: 1px; /* Safari 10.x用の設定 */
		justify-self: stretch;
		padding-left: 30px;
    font-size: 16px;
    line-height:1.6;
	}

	.burger::after	{
		grid-column: 1;
		grid-row: 2;
		justify-self: start;
		z-index: 1;
		width: 30px;
		content: '';
		background: linear-gradient(
			to right, 
			rgba(255,255,255,1) 0%, 
			rgba(255,255,255,0) 100%
		);
	}
  .burger-sub p { font-size: 15px; }
}

  /* ##### 画面の横幅600ピクセル以下 ##### */
@media (max-width: 600px) {
    .burger {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 240px auto;
  }
  .burger-text {font-size: 15px;}
}

/* ##### 画面の横幅414ピクセル以下 ##### */
@media (max-width: 414px) {
    .burger {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 360px auto;
  }
    .burger-text { line-height:1.5; }
}
/* ##### 画面の横幅375ピクセル以下 ##### */
@media (max-width: 375px) {
    .burger {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 400px auto;
  }
    .burger-text { line-height:1.3;}
}
/* ##### 画面の横幅320ピクセル以下 ##### */
@media (max-width: 320px) {
    .burger {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 410px auto;
  }
    .burger-text { line-height:1.2;}
}

	/* サブ情報 */
	.burger-sub {
		grid-column: 1 / -1;
		grid-row: 3;

		/* サブ情報のグリッド */
		display: grid;
		grid-auto-flow: column;
		grid-column-gap: 10px;
		max-width: 280px;
	}

	.burger-sub p {
		margin: 0;
	}

}

} /* CSSグリッドに対応したブラウザ用の設定 ここまで */

/* IE11用の設定 */
@media all and (-ms-high-contrast: none), not all and (-ms-high-contrast: none) {

/* 基本 */
.burger * {
	margin: 0;
}

.burger img	{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.burger-sub img {
	max-width: 100px;
}


/* グリッド */
.burger {
	--side: 20px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 100px 1fr auto;
	    grid-template-columns: 100px 1fr auto;
	-ms-grid-rows: auto 180px;
	    grid-template-rows: auto 180px;
	grid-column-gap: 15px;
	grid-row-gap: 30px;
	margin: 0 calc( (100vw - 960px) / 2 ) 30px;
	font-family: 'Noto Sans Japanese', sans-serif;
}

/* 大きい画像 */
.burger-photo {
	-ms-grid-column: 1;
	-ms-grid-column-span: 3;
	grid-column: 1 / 4;
	-ms-grid-row: 1;
	grid-row: 1;
	margin: 0 0 0 calc( ( (100vw - 960px) / 2 ) * -1);
}

.burger-photo img {
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	max-height: 600px;
}

/* タイトル */
.burger-title {
	-ms-grid-column: 3;
	grid-column: 3;
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	grid-row: 1 / 3;
	-ms-flex-item-align: end;
	    -ms-grid-row-align: end;
	    align-self: end;
	z-index: 1;
	padding: 120px 0 40px;
	font-size: 56px;
	font-weight: 900;
	line-height: 1.3;
	-webkit-writing-mode: vertical-rl;
	    -ms-writing-mode: tb-rl;
	        writing-mode: vertical-rl;
}

/* 文章 */
.burger-text {
	-ms-grid-column: 2;
	grid-column: 2;
	-ms-grid-row: 2;
	grid-row: 2;
	-ms-grid-column-align: center;
	    justify-self: center;
	font-size: 12px;
	font-weight: 300;
	line-height: 1.85;
	-webkit-writing-mode: vertical-rl;
	    -ms-writing-mode: tb-rl;
	        writing-mode: vertical-rl;
}

/* サブ情報 */
.burger-sub {
	-ms-grid-column: 1;
	grid-column: 1;
	-ms-grid-row: 2;
	grid-row: 2;
}

.burger-sub p {
	margin-top: 10px;
	font-size: 10px;
	font-weight: 500;
	line-height: 1.5;
}

/* 画面の横幅960px以上のときの設定を適用 */

	/* 文章 */
	.burger-text {
		line-height: 2.5;
	}


/* IE11用追加設定 */
.burger {
	min-width: 960px;
}
.burger-photo {
	margin-bottom: 30px;
}

} /* IE11用の設定 ここまで */


/* IE11用の設定（画面の横幅1000px以下のときの両サイドの余白) */
@media all and (max-width: 1000px) and (-ms-high-contrast: none), 
not all (min-width: 1000px) and (-ms-high-contrast: none) {
	.burger {
		margin-left: 20px;
		margin-right: 20px;
	}
	.burger-photo {
		margin-left: -20px;
		margin-right: -20px;
	}
} /* IE11用の設定 ここまで */

/* CSSグリッド対応ブラウザ用設定 */
@supports (display: grid) {

body {
    margin: 0;
    font-family: 'メイリオ', 'Hiragino Kaku Gothic Pro', sans-serif;
}
/* 基本 */

.beach * {
    margin: 0;
}

.beach img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}


/* グリッド */
.beach {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(12, 1fr);
    grid-column-gap: 40px;
    padding: 0 0px;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 16px;
}


/* タイトル */
.beach-title {
    grid-column: 1 / 6;
    grid-row: 1 / 3;
    align-self: center;
    z-index: 10;
    font-size: 2.8125em;
    font-weight: 900;
    line-height: 1.2;
}

/* サブタイトル */
.beach-sub {
    grid-column: 1 / -1;
    grid-row: 2;
    color: #ddd;
    font-family: 'Montserrat', sans-serif;
    font-size: 3.375em;
    font-weight: 900;
    letter-spacing: 0.14em;
    line-height: 1;
}

/* 日付 */
.beach-date {
    grid-column: 5;
    grid-row: 2;
    justify-self: end;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.875em;
}

/* リード文 */
.beach-lead {
    grid-column: 1 / 3;
    grid-row: 3 / 5;
    font-size: 0.9375em;
    font-weight: 700;
    line-height: 1.8;
}

/* 文章01 */
.beach-text01 {
    grid-column: 1 / 3;
    grid-row: 5 / 9;
    font-size: 0.75em;
    font-weight: 200;
    line-height: 2;
    text-align: justify;
    text-justify: inter-ideograph;
}

/* 画像01 */
.beach-fig01 {
    grid-column: 3 / 6;
    grid-row: 3 / 7;
    margin-right: -30px;
}

.beach-fig01 img {
    height: 100%;
    object-fit: cover;
}

/* キャッチコピー */
.beach-catch {
    grid-column: 3 / 6;
    grid-row: 7;
    justify-self: center;
    align-self: center;
    margin-left: 30px;
    font-size: 1.25em;
    line-height: 1.5;
    text-align: center;
    quotes: '“' '”';
    display: grid;
    grid-auto-flow: column;
    grid-column-gap: 5px;
}

.beach-catch::before {
    content: open-quote;
}

.beach-catch::after {
    content: close-quote;
}

.beach-catch::before,
.beach-catch::after {
    color: #aaa;
    font-size: 2em;
    font-weight: 900;
}


/* 文章02 */
.beach-text02 {
    grid-column: 3 / 5;
    grid-row: 8 / 13;
    font-size: 0.75em;
    font-weight: 200;
    line-height: 2;
    text-align: justify;
    text-justify: inter-ideograph;
}

/* 画像02 */
.beach-fig02 {
    grid-column: 1 / 3;
    grid-row: 9 / 13;
    align-self: center;
}

.beach-fig02 figcaption {
    font-size: 0.625em;
    font-weight: 500;
}

/* SNSメニュー */
.beach-sns {
    grid-column: 5;
    grid-row: 8 / 13;
    justify-self: end;
    align-self: center;
}

.beach-sns ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-row-gap: 10px;
}

.beach-sns a {
    font-size: 1.5em;
    color: #aaa;
    text-decoration: none;
    text-align: center;
    border: solid 1px #aaa;
    border-radius: 50%;
    display: block;
    width: 2em;
    height: 2em;
    line-height: 2em;
}



/* マーク画像 */
.beach::after {
    grid-column: 2 / 4;
    grid-row: 4 / 6;
    justify-self: center;
    align-self: center;
    width: 9.375em;
    height: 9.375em;
    content: url(images/check.svg);
    opacity: 0.15;
}


/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {

    .beach {
        width: 1000px;
        box-sizing: border-box;
        margin: auto;
        font-size: 20px;
    }

}


/* ##### 画面の横幅769～999ピクセル ##### */
@media (min-width: 769px) and (max-width: 999px) {
    .beach {
        font-size: calc(16px + 4 * (100vw - 768px) / 232);
    }
}



/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {

    .beach {
        grid-template-columns: none;
        grid-template-rows: none;
        grid-row-gap: 20px;
        padding: 0px;
        font-size: 14.4px;
    }

    .beach > *,
    .beach::after {
        grid-column: auto;
        grid-row: auto;
    }


    /* タイトル */
    .beach-title {
        grid-column: 1;
        grid-row: 1;
        word-break: keep-all;
    }

    /* マーク画像 */
    .beach::after {
        grid-column: 1;
        grid-row: 1;
        justify-self: center;
        margin-bottom: -20px;
    }

    /* サブタイトル */
    .beach-sub {
        grid-column: 1;
        grid-row: 2;
        font-size: 24px;
    }

    /* 日付 */
    .beach-date {
        grid-column: 1;
        grid-row: 2;
        align-self: end;
    }

    /* リード文 */
    .beach-lead {
        font-size: 16px;
    }

    /* 画像01 */
    .beach-fig01 {
        margin-left: -20px;
        margin-right: -20px;
    }

    /* キャッチコピー */
    .beach-catch {
        margin-left: 0;
        margin-top: -35px;
        justify-self: end;
        background: rgba(255,255,255,0.6);
        box-shadow: 0 0 10px 10px rgba(255,255,255,0.6);
        border-radius: 10px;
    }

    /* 文章01 & 文章02 */
    .beach-text01,
    .beach-text02 {
        font-size: 15px;
    }

    /* SNSメニュー */
    .beach-sns {
        justify-self: center;
    }

    .beach-sns ul {
        grid-auto-flow: column;
        grid-column-gap: 20px;
    }
}

} /* CSSグリッド対応ブラウザ用設定 ここまで */


/* IE11用設定 */
@media all and (-ms-high-contrast: none), not all and (-ms-high-contrast: none) {


/* 基本 */

.beach * {
    margin: 0;
}

.beach img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

/* グリッド */
.beach {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[5];
        grid-template-columns: repeat(5, 1fr);
    -ms-grid-rows: (1fr)[12];
        grid-template-rows: repeat(12, 1fr);
    grid-column-gap: 40px;
    padding: 0 0px;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 16px;
}


/* タイトル */
.beach-title {
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    grid-column: 1 / 6;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1 / 3;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    z-index: 10;
    font-size: 2.8125em;
    font-weight: 900;
    line-height: 1.2;
}

/* サブタイトル */
.beach-sub {
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
    grid-column: 1 / 6;
    -ms-grid-row: 2;
    grid-row: 2;
    color: #ddd;
    font-family: 'Montserrat', sans-serif;
    font-size: 3.375em;
    font-weight: 900;
    letter-spacing: 0.14em;
    line-height: 1;
}

/* 日付 */
.beach-date {
    -ms-grid-column: 5;
    grid-column: 5;
    -ms-grid-row: 2;
    grid-row: 2;
    -ms-grid-column-align: end;
        justify-self: end;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.875em;
}

/* リード文 */
.beach-lead {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 3;
    -ms-grid-row-span: 2;
    grid-row: 3 / 5;
    font-size: 0.9375em;
    font-weight: 700;
    line-height: 1.8;
}

/* 文章01 */
.beach-text01 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 5;
    -ms-grid-row-span: 4;
    grid-row: 5 / 9;
    font-size: 0.75em;
    font-weight: 200;
    line-height: 2;
    text-align: justify;
    text-justify: inter-ideograph;
}

/* 画像01 */
.beach-fig01 {
    -ms-grid-column: 3;
    -ms-grid-column-span: 3;
    grid-column: 3 / 6;
    -ms-grid-row: 3;
    -ms-grid-row-span: 4;
    grid-row: 3 / 7;
    margin-right: -30px;
}

.beach-fig01 img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* キャッチコピー */
.beach-catch {
    -ms-grid-column: 3;
    -ms-grid-column-span: 3;
    grid-column: 3 / 6;
    -ms-grid-row: 7;
    grid-row: 7;
    -ms-grid-column-align: center;
        justify-self: center;
    -ms-grid-row-align: center;
        align-self: center;
    margin-left: 30px;
    font-size: 1.25em;
    line-height: 1.5;
    text-align: center;
    quotes: '“' '”';
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    grid-column-gap: 5px;
}

.beach-catch::before {
    content: open-quote;
}

.beach-catch::after {
    content: close-quote;
}

.beach-catch::before,
.beach-catch::after {
    color: #aaa;
    font-size: 2em;
    font-weight: 900;
}


/* 文章02 */
.beach-text02 {
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
    grid-column: 3 / 5;
    -ms-grid-row: 8;
    -ms-grid-row-span: 5;
    grid-row: 8 / 13;
    font-size: 0.75em;
    font-weight: 200;
    line-height: 2;
    text-align: justify;
    text-justify: inter-ideograph;
}

/* 画像02 */
.beach-fig02 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 9;
    -ms-grid-row-span: 4;
    grid-row: 9 / 13;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
}

.beach-fig02 figcaption {
    font-size: 0.625em;
    font-weight: 500;
}

/* SNSメニュー */
.beach-sns {
    -ms-grid-column: 5;
    grid-column: 5;
    -ms-grid-row: 8;
    -ms-grid-row-span: 5;
    grid-row: 8 / 13;
    -ms-grid-column-align: end;
        justify-self: end;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
}

.beach-sns ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: -ms-grid;
    display: grid;
    grid-row-gap: 10px;
}

.beach-sns a {
    font-size: 1.5em;
    color: #aaa;
    text-decoration: none;
    text-align: center;
    border: solid 1px #aaa;
    border-radius: 50%;
    display: block;
    width: 2em;
    height: 2em;
    line-height: 2em;
}



/* マーク画像 */
.beach::after {
    -ms-grid-column: 2;
    -ms-grid-column-span: 2;
    grid-column: 2 / 4;
    -ms-grid-row: 4;
    -ms-grid-row-span: 2;
    grid-row: 4 / 6;
    -ms-grid-column-align: center;
        justify-self: center;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    width: 9.375em;
    height: 9.375em;
    content: url(images/check.svg);
    opacity: 0.15;
}



/* IE11用追加設定 */
.beach {
    width: 100%;
    margin:auto;
}

.beach-lead,
.beach-text01,
.beach-text02,
.beach-fig02 {
    margin-right: 40px;
}

.beach-date,
.beach::after {
    display: block;
}

.beach-catch {
    display: flex;
}

.beach-sns ul {
    display: flex;
    flex-direction: column;
}
.beach-sns ul > *:not(:last-child) {
    margin-bottom: 10px;
}

} /* IE11用設定 ここまで */

/* 3menu */

/* CSSグリッドに対応したブラウザ用の設定を記述 */
@supports (display: grid) {

/* 基本 */
.block3 * {
    margin: 0;
}

.block3 img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.block3-series img {
    max-width: 40px;
}

.shop img {
    max-width: 100px;
}


/* グリッド */
.block3 {
    --side: 20px;
    display: grid;
    grid-template-columns: 0 1fr 50px 1fr 0;
    grid-template-rows: auto 30px auto 40px auto 30px auto;
}

/* ヘッダー */
.block3-head {
    grid-column: 2 / -2;
    grid-row: 1;

    /* ヘッダーのグリッド */
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 0px repeat(3, auto);
    grid-column-gap: 0px;
    grid-row-gap: 12px;
}


/* ヘッダー: タイトル */
.block3-title {
    grid-column: 2;
    grid-row: 3;
    font-family: 'Mplus 1p', sans-serif;
    font-size: 35px;
    font-weight: 900;
    line-height: 1.2;
}

/* ヘッダー: リード文 */
.block3-lead {
    grid-column: 2;
    grid-row: 4;
    font-size: 13px;
    line-height: 1.8;
}

/* ヘッダー: シリーズ名 */
.block3-series {
    grid-column: 1;
    grid-row: 1 / 4;
    margin-bottom: -12px;
    background-color: #F9BF45;
    color: #fff;
    font-size: 14px;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    text-align: center;
    display: grid;
    justify-items: center;
    align-items: center;
    align-content: center;
    grid-row-gap: 8px;
}

/* ヘッダー： メニューの基本設定 */
.block3-head ol,
.block3-head ul {
    display: grid;
    grid-auto-flow: column;
    justify-content: start;
    margin: 0;
    padding: 0;
    list-style: none;
}

.block3-head a,
.block3-head a {
    color: #000;
    text-decoration: none;
}

/* ヘッダー: パンくずリスト */
.block3-bread {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    font-size: 10px;
    line-height: 2;
}

.block3-bread li:not(:last-child)::after {
    margin: 0 5px;
    content: '>';
    color: #aaa;
}

/* ヘッダー: カテゴリー */
.block3-category {
    grid-column: 2;
    grid-row: 2;
}

.block3-category ul {
    grid-column-gap: 5px;
}

.block3-category a {
    display: block;
    padding: 3px 10px;
    border-radius: 5px;
    background-color: #ccc;
    font-size: 10px;
}

/* ヘッダー: SNSメニュー */
.block3-sns {
    grid-column: 3;
    grid-row: 3;
}

.block3-sns ul {
    justify-content: space-between;
}

.block3-sns a {
    font-size: 14px;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    display: block;
    width: 40px;
    line-height: 35px;
}
.block3-sns li:nth-child(1) a
     {background-color: #55acee;}
.block3-sns li:nth-child(2) a
     {background-color: #3b5998;}
.block3-sns li:nth-child(3) a
     {background-color: #dd4b39;}



/* ヘッダー： 装飾画像 */
.block3-head::after   {
    grid-column: 3;
    grid-row: 4;
    justify-self: center;
    align-self: center;
    width: 80%;
    content: url('img/gourmet.svg');
}


/* セクション（共通） */
.sec h2 {
    font-family: 'Mplus 1p', sans-serif;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.sec .spot {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    border: solid 1px #aaa;
    border-radius: 50%;
    box-sizing: border-box;
    display: block;
    width: 3.75em;
    height: 3.75em;
    line-height: 3.75em;
}

.sec .num {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 78px;
    font-weight: 300;
    line-height: 1;
}

.sec p {
    font-size: 14px;
    text-align: justify;
    text-justify: inter-ideograph;
}


/* セクション01 */
.sec01 {
    grid-column: 2 / -2;
    grid-row: 3;

    /* セクション01のグリッド */
    display: grid;
    grid-template-columns: 50% 1fr;
    grid-template-rows: auto 1fr auto;
    grid-column-gap: 25px;
    grid-row-gap: 15px;
}

/* セクション01: 小見出し */
.sec01 h2 {
    grid-column: 2;
    grid-row: 1;
    margin-left: -70px;
    z-index: 1;

    /* 小見出しのグリッド */
    display: grid;
    grid-template-columns: auto auto 1fr;
    grid-template-rows: auto auto;
    grid-row-gap: 10px;
    align-items: end;
}

.sec01 h2::after {
    grid-column: 1 / -1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec01 .spot {
    margin-top: -8px;
    align-self: start;
}

.sec01 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション01: 画像 */
.sec01 figure {
    grid-column: 1;
    grid-row: 1 / -1;
}

.sec01 figure img {
    height: 100%;
    object-fit: cover;
}

/* セクション01: 文章 */
.sec01 p {
    grid-column: 2;
    grid-row: 2;
}

/* セクション01: ショップ情報 */
.sec01 .shop {
    grid-column: 2;
    grid-row: 3;
}


/* セクション02 */
.sec02 {
    grid-column: 2;
    grid-row: 5;

    /* セクション02のグリッド */
    display: grid;
    grid-template-columns: 4fr 5fr;
    grid-template-rows: auto 1fr auto auto;
    grid-column-gap: 15px;
    grid-row-gap: 15px;
}


/* セクション02: 小見出し */
.sec02 h2 {
    grid-column: 1 / -1;
    grid-row: 1;

    /* 小見出しのグリッド */
    display: grid;
    grid-template-columns: auto auto auto 1fr;
    grid-template-rows: auto;
    align-items: end;
}

.sec02 h2::after {
    grid-column: 3;
    grid-row: 1;
    align-self: stretch;
    margin-bottom: -45px;
    margin-right: 5px;
    z-index: 1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec02 .spot {
    margin-left: -20px;
    margin-right: -10px;
    margin-bottom: -20px;
    z-index: 1;
}

.sec02 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション02: 画像01 */
.sec02 .fig01 {
    grid-column: 1;
    grid-row: 2 / 4;
    margin-bottom: 40px;
}

.sec02 .fig01 img {
    height: 100%;
    object-fit: cover;
}


/* セクション02: 画像02 */
.sec02 .fig02 {
    grid-column: 2;
    grid-row: 3;
    margin-left: -40px;
}

/* セクション02: 文章 */
.sec02 p {
    grid-column: 2;
    grid-row: 2;
}

/* セクション02: ショップ情報 */
.sec02 .shop {
    grid-column: 1 / -1;
    grid-row: 4;
}


/* セクション03 */
.sec03 {
    grid-column: 4;
    grid-row: 5;

    /* セクション03のグリッド */
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto 1fr auto;
    grid-row-gap: 15px;
}

/* セクション03: 小見出し */
.sec03 h2 {
    grid-column: 1;
    grid-row: 2;

    /* 小見出しのグリッド */
    display: grid;
    grid-template-columns: auto auto 1fr auto;
    grid-template-rows: auto auto;
    grid-row-gap: 10px;
    align-items: end;
}

.sec03 h2::before {
    grid-column: 4;
    grid-row: 1;
    align-self: stretch;
    margin-bottom: -10px;
    margin-top: -60px;
    z-index: 1;
    transform: rotate(-22deg);
    transform-origin: right bottom;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 h2::after {
    grid-column: 1 / -1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 .spot {
    margin-left: -15px;
}

.sec03 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}

/* セクション03: 画像 */
.sec03 figure {
    grid-column: 1;
    grid-row: 1;
}

/* セクション03: 文章 */
.sec03 p {
    grid-column: 1;
    grid-row: 3;
}

/* セクション03: ショップ情報 */
.sec03 .shop {
    grid-column: 1;
    grid-row: 4;
}


/* ショップ情報 */
.shop {
    display: grid;
    grid-template-columns: 100px 1fr;
    grid-template-rows: auto auto;
    grid-column-gap: 10px;
    grid-row-gap: 5px;
    border: solid 1px #222;
}


.shop img {
    grid-column: 1;
    grid-row: 1 / -1;
}

.shop h3 {
    grid-column: 2;
    grid-row: 1;
    font-size: 12px;
    align-self: end;
}
.shop p {
    grid-column: 2;
    grid-row: 2;
    font-size: 10px;
    line-height: 1.5;
}

.shop span {
    padding: 0 5px;
    border-radius: 10px;
    background-color: #ddd;
}


/* セクションを区切る点線 */
.block3::before   {
    grid-column: 2 / -2;
    grid-row: 4;
    align-self: center;
    content: '';
    border-top: dotted 6px #ddd;
}

.block3::after    {
    grid-column: 3;
    grid-row: 5;
    justify-self: center;
    content: '';
    border-left: dotted 6px #ddd;
}


/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
    .block3 {
        --side_old: calc( (100vw - 960px) / 2 );
    }

    .block3-title {
        font-size: 40px;
    }

    .sec h2 {
        font-size: 21px;
    }
}



/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {
    /* グリッド */
    .block3 {
        --side: 0px;
        grid-template-columns:
         var(--side) 1fr var(--side);
        grid-template-rows:
         auto 40px auto 50px auto 50px auto 40px auto;
    }

    /* ヘッダー */
    .block3-head {
        grid-column: 1 / 3;
        grid-row: 1;

        /* ヘッダーのグリッド */
        grid-template-columns: var(--side) 1fr 100px;
        grid-column-gap: 12px;
    }

    /* ヘッダー: シリーズ名 */
    .block3-series {
        display: block;
        writing-mode: vertical-rl;
        width: var(--side); /* Safari 10.x用 */
    }

    .block3-series img {
        width: 15px;
        height: 15px;
        vertical-align: baseline;
    }


    /* ヘッダー: タイトル */
    .block3-title {
        grid-column: 2 / -1;
        grid-row: 2;
    }

    /* ヘッダー: カテゴリー */
    .block3-category {
        grid-column: 2;
        grid-row: 3;
    }

    /* ヘッダー: リード文 */
    .block3-lead {
        grid-column: 2 / -1;
        grid-row: 4;
    }

    /* ヘッダー: SNSメニュー */
    .block3-sns a {
        width: 30px;
        line-height: 30px;
    }

    /* ヘッダー： 装飾画像 */
    .block3-head::after {
        content: none;
    }


    /* セクション: 小見出し */
    .sec h2 {
        margin: 0;
        font-size: 20px;
    }

    .sec .spot {
        margin: 0 0 0 calc( (var(--side) + 5px) * -1 );
        font-size: 12px;
        align-self: end;
    }

    .sec .num {
        font-size: 60px;
    }

    /* セクション01 */
    .sec01 {
        grid-column: 2;
        grid-row: 3;

        /* セクション01のグリッド */
        grid-template-columns: 1fr;
        grid-template-rows: repeat(4, auto);
        grid-row-gap: 15px;
    }

    .sec01.sec > * {
        grid-column: auto;
        grid-row: auto;
    }

    .sec01 h2::after {
        margin: 0 calc( var(--side) * -1 );
    }

    /* セクション02 */
    .sec02 {
        grid-column: 2;
        grid-row: 5;
    }

    /* セクション03 */
    .sec03 {
        grid-column: 2;
        grid-row: 7;
    }

    .sec03.sec > * {
        grid-column: auto;
        grid-row: auto;
    }

    .sec03 h2::before {
        content: none;
    }

    /* フッター */
    .block3-foot {
        grid-column: 1 / -1;
        grid-row: -2 / -1;
    }


    /* セクションを区切る点線 */
    .block3::before   {
        grid-column: 2;
        grid-row: 4;
    }

    .block3::after    {
        grid-column: 2;
        grid-row: 6;
        justify-self: stretch;
        align-self: center;
        border-top: dotted 6px #ddd;
    }

}


} /* CSSグリッドに対応したブラウザ用の設定 ここまで */


/* IE11用の設定を記述 */
@media all and (-ms-high-contrast: none), not all and (-ms-high-contrast: none) {

/* 基本 */
.block3 * {
    margin: 0;
}

.block3 {
    width:100%;
    margin: auto;
}

.block3 img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.block3-series img {
    max-width: 30px;
}

.shop img {
    max-width: 100px;
}


/* グリッド */
.block3 {
    --side: 0px;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 0 1fr 50px 1fr 0;
        grid-template-columns: 0 1fr 50px 1fr 0;
    -ms-grid-rows: auto 30px auto 40px auto 30px auto;
        grid-template-rows: auto 30px auto 40px auto 30px auto;
}

/* ヘッダー */
.block3-head {
    -ms-grid-column: 2;
    -ms-grid-column-span: 3;
    grid-column: 2 / 5;
    -ms-grid-row: 1;
    grid-row: 1;

    /* ヘッダーのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 75px 1fr 140px;
        grid-template-columns: 75px 1fr 140px;
    -ms-grid-rows: 45px (auto)[3];
        grid-template-rows: 45px repeat(3, auto);
    grid-column-gap: 24px;
    grid-row-gap: 12px;
}


/* ヘッダー: タイトル */
.block3-title {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 3;
    grid-row: 3;
    font-family: 'Mplus 1p', sans-serif;
    font-size: 35px;
    font-weight: 900;
    line-height: 1.2;
}

/* ヘッダー: リード文 */
.block3-lead {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 4;
    grid-row: 4;
    font-size: 13px;
    line-height: 1.8;
}

/* ヘッダー: シリーズ名 */
.block3-series {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / 4;
    margin-bottom: -12px;
    background-color: #000;
    color: #fff;
    font-size: 14px;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    text-align: center;
    display: -ms-grid;
    display: grid;
    justify-items: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    grid-row-gap: 8px;
}

/* ヘッダー: 日付 */
.block3-date {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
    padding: 3px 0;
    background-color: #222;
    color: #fff;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 14px;
    text-align: center;
}


/* ヘッダー： メニューの基本設定 */
.block3-head ol,
.block3-head ul {
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    margin: 0;
    padding: 0;
    list-style: none;
}

.block3-head a,
.block3-head a {
    color: #000;
    text-decoration: none;
}

/* ヘッダー: カテゴリー */
.block3-category {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
}

.block3-category ul {
    grid-column-gap: 5px;
}

.block3-category a {
    display: block;
    padding: 3px 10px;
    border-radius: 5px;
    background-color: #ccc;
    font-size: 10px;
}



/* ヘッダー： 装飾画像 */
.block3-head::after   {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 4;
    grid-row: 4;
    -ms-grid-column-align: center;
        justify-self: center;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    width: 80%;
    content: url('img/gourmet.svg');
}


/* セクション（共通） */
.sec h2 {
    font-family: 'Mplus 1p', sans-serif;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.sec .spot {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    border: solid 1px #aaa;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    width: 3.75em;
    height: 3.75em;
    line-height: 3.75em;
}

.sec .num {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 78px;
    font-weight: 300;
    line-height: 1;
}

.sec p {
    font-size: 14px;
    text-align: justify;
    text-justify: inter-ideograph;
}


/* セクション01 */
.sec01 {
    -ms-grid-column: 2;
    -ms-grid-column-span: 3;
    grid-column: 2 / 5;
    -ms-grid-row: 3;
    grid-row: 3;

    /* セクション01のグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 50% 1fr;
        grid-template-columns: 50% 1fr;
    -ms-grid-rows: auto 1fr auto;
        grid-template-rows: auto 1fr auto;
    grid-column-gap: 25px;
    grid-row-gap: 15px;
}

/* セクション01: 小見出し */
.sec01 h2 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    margin-left: -70px;
    z-index: 1;

    /* 小見出しのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto 1fr;
        grid-template-columns: auto auto 1fr;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
    grid-row-gap: 10px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
}

.sec01 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / 4;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec01 .spot {
    margin-top: -8px;
    -ms-flex-item-align: start;
        -ms-grid-row-align: start;
        align-self: start;
}

.sec01 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション01: 画像 */
.sec01 figure {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / 4;
}

.sec01 figure img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* セクション01: 文章 */
.sec01 p {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
}

/* セクション01: ショップ情報 */
.sec01 .shop {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 3;
    grid-row: 3;
}


/* セクション02 */
.sec02 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 5;
    grid-row: 5;

    /* セクション02のグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 4fr 5fr;
        grid-template-columns: 4fr 5fr;
    -ms-grid-rows: auto 1fr auto auto;
        grid-template-rows: auto 1fr auto auto;
    grid-column-gap: 15px;
    grid-row-gap: 15px;
}


/* セクション02: 小見出し */
.sec02 h2 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 1;
    grid-row: 1;

    /* 小見出しのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto auto 1fr;
        grid-template-columns: auto auto auto 1fr;
    -ms-grid-rows: auto;
        grid-template-rows: auto;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
}

.sec02 h2::after {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
    margin-bottom: -45px;
    margin-right: 5px;
    z-index: 1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec02 .spot {
    margin-left: -20px;
    margin-right: -10px;
    margin-bottom: -20px;
    z-index: 1;
}

.sec02 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション02: 画像01 */
.sec02 .fig01 {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    grid-row: 2 / 4;
    margin-bottom: 40px;
}

.sec02 .fig01 img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}


/* セクション02: 画像02 */
.sec02 .fig02 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 3;
    grid-row: 3;
    margin-left: -40px;
}

/* セクション02: 文章 */
.sec02 p {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
}

/* セクション02: ショップ情報 */
.sec02 .shop {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 4;
    grid-row: 4;
}


/* セクション03 */
.sec03 {
    -ms-grid-column: 4;
    grid-column: 4;
    -ms-grid-row: 5;
    grid-row: 5;

    /* セクション03のグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    -ms-grid-rows: auto auto 1fr auto;
        grid-template-rows: auto auto 1fr auto;
    grid-row-gap: 15px;
}

/* セクション03: 小見出し */
.sec03 h2 {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;

    /* 小見出しのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto 1fr auto;
        grid-template-columns: auto auto 1fr auto;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
    grid-row-gap: 10px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
}

.sec03 h2::before {
    -ms-grid-column: 4;
    grid-column: 4;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
    margin-bottom: -10px;
    margin-top: -60px;
    z-index: 1;
    -webkit-transform: rotate(-22deg);
        -ms-transform: rotate(-22deg);
            transform: rotate(-22deg);
    -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
            transform-origin: right bottom;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    grid-column: 1 / 5;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 .spot {
    margin-left: -15px;
}

.sec03 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}

/* セクション03: 画像 */
.sec03 figure {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
}

/* セクション03: 文章 */
.sec03 p {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 3;
    grid-row: 3;
}

/* セクション03: ショップ情報 */
.sec03 .shop {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 4;
    grid-row: 4;
}


/* ショップ情報 */
.shop {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100px 1fr;
        grid-template-columns: 100px 1fr;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
    grid-column-gap: 10px;
    grid-row-gap: 5px;
    border: solid 1px #222;
}


.shop img {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1 / 3;
}

.shop h3 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    font-size: 12px;
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
}
.shop p {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
    font-size: 10px;
    line-height: 1.5;
}

.shop span {
    padding: 0 5px;
    border-radius: 10px;
    background-color: #ddd;
}


/* セクションを区切る点線 */
.block3::before   {
    -ms-grid-column: 2;
    -ms-grid-column-span: 3;
    grid-column: 2 / 5;
    -ms-grid-row: 4;
    grid-row: 4;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    content: '';
    border-top: dotted 6px #ddd;
}

.block3::after    {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 5;
    grid-row: 5;
    -ms-grid-column-align: center;
        justify-self: center;
    content: '';
    border-left: dotted 6px #ddd;
}


/* フッター */
.block3-foot {
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
    grid-column: 1 / 6;
    -ms-grid-row: 7;
    grid-row: 7;
    padding: 30px 0;
    background-color: #222;
    color: #fff;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}



/* IE11用追加設定 */
.block3::before,
.block3::after {
    display: block;
}

/* IE11用追加設定: ヘッダー */
.block3-date,
.block3-head::before,
.block3-head::after {
    display: block;
}
.block3-bread,
.block3-category,
.block3-title,
.block3-lead {
    margin-left: 24px;
    margin-right: 24px;
    margin-top: 12px;
}
.block3-head ol,
.block3-head ul {
    display: flex;
}
.block3-series {
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 10px;
}
.block3-series img {
    margin-bottom: 5px;
}


/* IE11用追加設定: セクション */
.block3 {
    min-width: 768px;
}
.sec > h2,
.sec > p {
    margin-bottom: 15px;
}
.sec01 > figure {
    margin-right: 25px;
}
.sec02 > .fig01 {
    margin-right: 15px;
}
.sec02 > .fig02 {
    margin-bottom: 15px;
}
.shop h3,
.shop p {
    margin-left: 10px;
}

/* IE11用追加設定: セクション 小見出し */
.sec h2 span,
.sec h2::after,
.sec h2::before {
    display: block;
}
.sec h2 span {
    -ms-grid-column: 3;
    -ms-grid-row-align: end;
}
.sec h2 .spot {
    -ms-grid-column: 1;
}
.sec h2 .num {
    -ms-grid-column: 2;
}
.sec01 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    -ms-grid-row: 2;
    margin-top: 10px;
}
.sec02 h2 span {
    -ms-grid-column: 4;
}
.sec02 h2::after {
    -ms-grid-column: 3;
    -ms-grid-row: 1;
}
.sec03 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    -ms-grid-row: 2;
    margin-top: 10px;
}


} /* IE11用の設定 ここまで */


/* IE11用の設定（画面の横幅768px以下のときの両サイドの余白) */
@media all and (max-width: 768px) and (-ms-high-contrast: none), 
not all (min-width: 768px) and (-ms-high-contrast: none) {
    .block3 {
        -ms-grid-columns: 0px 1fr 50px 1fr 0px;
    }
    .block3-head::before {
        margin-left: -20px;
        margin-right: -20px;
    }
} /* IE11用の設定 ここまで */


/* CSSグリッドに対応したブラウザ用の設定 */
@supports (display: grid) {

body	{margin: 0;
	font-family: 'メイリオ', 'Hiragino Kaku Gothic Pro', sans-serif}


/* 基本 */
.orange * {
	margin: 0;
}

.orange img	{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.orange-sub img {
	max-width: 120px;
}


/* グリッド */
.orange {
	--side: 20px;
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: repeat(2, auto);
	grid-row-gap: 30px;
	margin: 0 var(--side) 30px;
	font-family: 'Noto Sans Japanese', sans-serif;
}

/* 大きい画像 */
.orange-photo {
	grid-column: 1 / -1;
	grid-row: 1;
	margin: 0 calc( var(--side) * -1 );
}

.orange-photo img {
	height: 100%;
	object-fit: cover;
	max-height: 600px;
}

/* テキスト */
.orange-text {
	grid-column: span 5 / -1;
	grid-row: 1;
	justify-self: center;
	align-self: center;
	z-index: 10;
	padding: 40px 0;
	color: #fff;
	writing-mode: vertical-rl;
	text-shadow: 0px 0px 20px #000;

	/* テキストのグリッド */
	display: grid;
	grid-row-gap: 15px;
	justify-items: end;
}

.orange-text h2 {
	padding-bottom: 20px;
	font-size: 40px;
	font-weight: 900;
	line-height: 1.5;
}

.orange-text p {
	height: 18em;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

/* サブ情報 */
.orange-sub {
	grid-column: 1 / span 6;
	grid-row: 2;

	/* サブ情報のグリッド */
	display: grid;
	grid-auto-flow: column;
	grid-column-gap: 10px;
}

.orange-sub p {
	font-size: 14px;
	line-height: 1.5;
}




/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {

	.orange-text {
		justify-self: end;
	}

	.orange-sub {
		grid-column: 1 / -1;
	}

	.orange::after {
		grid-column: 1 / -1;
		grid-row: 1;
		margin: 0 calc( var(--side) * -1 );
		content: '';
		background-color: rgba(0,0,0,0.4);
	}

}


} /* CSSグリッドに対応したブラウザ用の設定 ここまで */




/* IE11用の設定 */
@media all and (-ms-high-contrast: none), not all and (-ms-high-contrast: none) {

/* Autoprefixerで変換した設定 */



/* 基本 */
.orange * {
	margin: 0;
}

.orange img	{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.orange-sub img {
	max-width: 120px;
}


/* グリッド */
.orange {
	--side: 20px;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: (1fr)[12];
	    grid-template-columns: repeat(12, 1fr);
	-ms-grid-rows: (auto)[2];
	    grid-template-rows: repeat(2, auto);
	grid-row-gap: 30px;
	margin: 0 20px 30px;
	font-family: 'Noto Sans Japanese', sans-serif;
}

/* 大きい画像 */
.orange-photo {
	-ms-grid-column: 1;
	-ms-grid-column-span: 12;
	grid-column: 1 / 13;
	-ms-grid-row: 1;
	grid-row: 1;
	margin: 0 calc( 20px * -1 );
}

.orange-photo img {
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	max-height: 600px;
}

/* テキスト */
.orange-text {
	-ms-grid-column: 8;
	-ms-grid-column-span: 5;
	grid-column: span 5 / 13;
	-ms-grid-row: 1;
	grid-row: 1;
	-ms-grid-column-align: center;
	    justify-self: center;
	-ms-grid-row-align: center;
	    align-self: center;
	z-index: 10;
	padding: 40px 0;
	color: #fff;
	-webkit-writing-mode: vertical-rl;
	    -ms-writing-mode: tb-rl;
	        writing-mode: vertical-rl;
	text-shadow: 0px 0px 20px #000;

	/* テキストのグリッド */
	display: -ms-grid;
	display: grid;
	grid-row-gap: 15px;
	justify-items: end;
}

.orange-text h2 {
	padding-bottom: 20px;
	font-size: 40px;
	font-weight: 900;
	line-height: 1.5;
}

.orange-text p {
	height: 18em;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
}

/* サブ情報 */
.orange-sub {
	-ms-grid-column: 1;
	-ms-grid-column-span: 6;
	grid-column: 1 / span 6;
	-ms-grid-row: 2;
	grid-row: 2;

	/* サブ情報のグリッド */
	display: -ms-grid;
	display: grid;
	grid-auto-flow: column;
	grid-column-gap: 10px;
}

.orange-sub p {
	font-size: 14px;
	line-height: 1.5;
}


/* IE11用追加設定 */
.orange {
	min-width: 768px;
}
.orange-text {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
.orange-sub {
	display: flex;
	margin-top: 30px;
}
.orange-sub img {
	width: auto;
	margin-right: 10px;
}
.orange::after {
	display: block;
}

} /* IE11用の設定 ここまで */

/*------------------------------------------------------------
flex_top_main_slide
-------------------------------------------------------------*/

/* 基本 */
.flex_top_main_slide * {margin:0;}

.flex_top_main_slide img {
width: 100%;
height: auto;
vertical-align: bottom;
}

/* レイアウト */
.flex_top_main_slide {
    width:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 2px #eee;
}

/* 見出し */
.flex_top_main_slide_midashi {
    width:100%;
    height: auto;
    font-family: "Rounded Mplus 1c";
}

/* スライダー */
.flex_top_main_slide_slider {
    width:70%;
}

/* サイドバー */
.flex_top_main_slide_sidebar{
    width:30%;
    padding-left:16px;
}

.flex_top_main_slide_sidebar_sp {
    width:100%;
    padding: 16px;
    margin-top: 16px;
    background-color: #eee;
}

.flex_top_main_slide_sidebar ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.flex_top_main_slide_sidebar_sp ul{
    width:100%;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.flex_top_main_slide_sidebar ul li{
    height:100%;
    margin-bottom: 16px;
}

.flex_top_main_slide_sidebar_sp ul li{
    width:32%;
height:100%;
}

/* ##### 画面の横幅640ピクセル以下 ##### */
@media only screen and (max-width: 640px) {
    .flex_top_main_slide_sidebar_sp {padding: 0px;}
}

/* 本文 */
.flex_top_main_slide_slider h2{
font-weight:600;
line-height:1.3;
margin: 16px 0!important;

}

.flex_top_main_slide_slider p{
font-weight:500;
text-align: justify;
text-justify: inter-ideograph;
padding: 0 10px;
line-height: 1.7em;
color:#333;
}

/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
.flex_top_main_slide_midashi { font-size: 20px; }
.flex_top_main_slide_slider h2{ font-size: 22px; }
.flex_top_main_slide_slider p{ font-size: 16px;}

.flex_top_main_slide_sidebar_sp { display: none; }
}

/* ##### 画面の横幅768～999ピクセル ##### */
@media (min-width: 768px) and (max-width: 999px) {
.flex_top_main_slide_midashi { font-size: calc(14px + 6 * (100vw - 768px) / 232); }
.flex_top_main_slide_slider h2{ font-size: calc(20px + 8 * (100vw - 768px) / 232); }
.flex_top_main_slide_slider p{ font-size: calc(14px + 6 * (100vw - 768px) / 232); }

.flex_top_main_slide_sidebar_sp { display: none; }
}

/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {
.flex_top_main_slide_midashi { font-size: 14px; }
.flex_top_main_slide_slider h2{ font-size: 20px; }
.flex_top_main_slide_slider p{ font-size: 14px; }

.flex_top_main_slide_slider { width:100%; }

.flex_top_main_slide_sidebar { display: none; }
}

/*------------------------------------------------------------
flex_osusumebox_honbu
-------------------------------------------------------------*/

/* 基本 */
.flex_osusumebox_honbu * {margin:0;}

.flex_osusumebox_honbu img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

/* グリッド */
.flex_osusumebox_honbu {
    width:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 2px #eee;
}

/* タイトル */
.flex_osusumebox_honbu_title h2{
width:100%;
color: #2B5F75;
font-size: 26px;
font-family: "Rounded Mplus 1c";
font-weight: 800!important;
margin: 0 0 20px 0;
}


/* 8つのボタン */
.flex_osusumebox_honbu_8box {
    width:70%;

    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    margin: 0;
    padding: 0;
}

.flex_osusumebox_honbu_8box ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    margin: 0;
    padding: 0;
}

.flex_osusumebox_honbu_8box ul li {
    width:48.5%;
    height:auto;
    margin:0 0 16px 0;
}

/* サイドバー */
.flex_osusumebox_honbu_sidebar {
    width: 30%;
    margin: 0;
    padding:0 0 0 16px;
}

.flex_osusumebox_honbu_sidebar h3{
    font-size: 20px;
    text-align: center;
    margin: 0 0 10px 0!important;
    font-family: "Rounded Mplus 1c";
    font-weight: 800!important;
    color: #3A8FB7;
}

.flex_osusumebox_honbu_sidebar ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;

    margin: 0;
    padding:0;
}

.flex_osusumebox_honbu_sidebar ul a  {
    width:50%;
    height:auto;
    margin: 0;
    padding:0;

    text-align: center;
    height:auto;
    border-bottom: solid 2px #eee;
    background-color: #FFF;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.flex_osusumebox_honbu_sidebar ul a:nth-child(even) {
    border-left: solid 2px #eee;
}

.flex_osusumebox_honbu_sidebar ul i{
font-size:36px;
padding-top:14px;
margin:0;
}

.flex_osusumebox_honbu_sidebar ul p{
font-size:14px;
font-family: 'Noto Sans Japanese', sans-serif;
font-weight:500;
padding:0 0 6px 0;
margin:0;
line-height: 1.5em;
color: #888;
white-space: nowrap;
}

.flex_osusumebox_honbu_sidebar ul a:hover{
cursor: pointer;
color: ;
background-color: #eee;
}

.flex_osusumebox_honbu_sidebar ul a:link{
text-decoration:none;
}

/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
.flex_osusumebox_honbu_title h2{ font-size: 22px; }
.flex_osusumebox_honbu_sidebar h3{ font-size: 20px; }
.flex_osusumebox_honbu_sidebar ul p{ font-size: 16px; }

.flex_top_main_slide_sidebar_sp { display: none; }
}

/* ##### 画面の横幅768～999ピクセル ##### */
@media (min-width: 768px) and (max-width: 999px) {
.flex_osusumebox_honbu_title h2{ font-size: calc(20px + 6 * (100vw - 768px) / 232); }
.flex_osusumebox_honbu_sidebar h3{ font-size: calc(14px + 6 * (100vw - 768px) / 232); }
.flex_osusumebox_honbu_sidebar ul p{ font-size: calc(10px + 6 * (100vw - 768px) / 232); }

.flex_top_main_slide_sidebar_sp { display: none; }
}

/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {
.flex_osusumebox_honbu_title h2{ font-size: 20px; }
.flex_osusumebox_honbu_sidebar h3{ font-size: 20px; }
.flex_osusumebox_honbu_sidebar ul p{ font-size: 14px; }

.flex_osusumebox_honbu_8box { width:100%; }
.flex_osusumebox_honbu_sidebar { width:100%;padding:0;margin-top:16px; }
.flex_osusumebox_honbu_sidebar ul a  { width:20%; }
.flex_osusumebox_honbu_sidebar ul a:nth-child(3) {border-left: solid 2px #eee; }
.flex_osusumebox_honbu_sidebar ul a:nth-child(5) {border-left: solid 2px #eee; }
.flex_osusumebox_honbu_sidebar ul a:nth-child(6) {border-left: solid 0; }
.flex_osusumebox_honbu_sidebar ul a:nth-child(7) {border-left: solid 2px #eee; }
.flex_osusumebox_honbu_sidebar ul a:nth-child(9) {border-left: solid 2px #eee; }
}

/*------------------------------------------------------------
flex_access_short_and_info
-------------------------------------------------------------*/

/* 基本 */
.flex_access_short_and_info * {margin:0;}

.flex_access_short_and_info img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

/* FlexBox */
.flex_access_short_and_info {
    width:100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 2px #eee;
}

/* 住所と営業時間 */
.flex_access_short_and_info .flex_access_short {
    width:60%;

    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    margin: 0;
    padding: 0;
}

.flex_access_short .flex_img_str_big {
    width:100%;
}

.flex_access_short .flex_img_str_big h2{ width:100%; margin-bottom:20px;}
.info_short_sidebar h2.midashi{ width:100%; margin-bottom:20px;}

.flex_access_short .flex_img_str_big ul {
display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

    margin: 0;
    padding: 0;
}

.flex_access_short .flex_img_str_big ul li:nth-child(1) {
    width:40%;
    height:auto;
    margin:0;
}
.flex_access_short .flex_img_str_big ul li:nth-child(2) {
    width:60%;
    height:auto;
    margin:0;
    padding: 0 0 0 10px;
}

/* サイドバー */
.flex_access_short_and_info .info_short_sidebar {
    width: 40%;
    margin: 0;
    padding:0 0 0 16px;
}

.flex_access_short .flex_img_str_big h3{
    font-size: 22px;
    text-align: left;
    margin: 0 0 10px 0!important;
    font-family: "Rounded Mplus 1c";
    font-weight: 800!important;
    color: #3A8FB7;
}

.flex_access_short .flex_img_str_big ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;

    margin: 0;
    padding:0;
}

.flex_access_short .flex_img_str_big ul a  {
    width:50%;
    height:auto;
    margin: 0;
    padding:0;

    text-align: center;
    height:auto;
    border-bottom: solid 2px #eee;
    background-color: #FFF;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.flex_access_short .flex_img_str_big .info_short_sidebar ul a:nth-child(even) {
    border-left: solid 2px #eee;
}

.flex_access_short .flex_img_str_big .info_short_sidebar ul i{
font-size:36px;
padding-top:14px;
margin:0;
}

.flex_access_short .flex_img_str_big .info_short_sidebar ul p{
font-size:14px;
font-family: 'Noto Sans Japanese', sans-serif;
font-weight:500;
padding:0 0 6px 0;
margin:0;
line-height: 1.5em;
color: #888;
white-space: nowrap;
}

.flex_access_short .flex_img_str_big .info_short_sidebar ul a:hover{
cursor: pointer;
color: ;
background-color: #eee;
}

.flex_access_short .flex_img_str_big .info_short_sidebar ul a:link{
text-decoration:none;
}

/* ##### 画面の横幅1000ピクセル以上 ##### */
@media screen and (min-width: 1000px) {

}

/* ##### 画面の横幅768～960ピクセル ##### */
@media screen and (min-width: 768px) and (max-width: 960px) {
    .flex_access_short_and_info .flex_access_short { width:100%; }
    .flex_access_short_and_info .info_short_sidebar { width: 100%; padding:0;}

    .flex_access_short .flex_img_str_big ul li:nth-child(1) { width:40%; }
    .flex_access_short .flex_img_str_big ul li:nth-child(2) { width:60%; }
}

/* ##### 画面の横幅600～767ピクセル以下 ##### */
@media screen and (min-width: 600px) and (max-width: 767px) {
    .flex_access_short_and_info .flex_access_short { width:100%; }
    .flex_access_short_and_info .info_short_sidebar { width: 100%; padding:0;}

    .flex_access_short .flex_img_str_big ul li:nth-child(1) { width:35%; }
    .flex_access_short .flex_img_str_big ul li:nth-child(2) { width:65%; }
}

/* ##### 画面の横幅599ピクセル以下 ##### */
@media screen and (max-width: 599px) {
    .flex_access_short_and_info .flex_access_short { width:100%; }
    .flex_access_short_and_info .info_short_sidebar { width: 100%; padding:0;}

    .flex_access_short .flex_img_str_big ul li:nth-child(1) { width:100%; }
    .flex_access_short .flex_img_str_big ul li:nth-child(2) { width:100%; }
    .flex_access_short .flex_img_str_big ul li img { margin-bottom:20px; }
}

/* column3 */

/* CSSグリッドに対応したブラウザ用の設定を記述 */
@supports (display: grid) {

.column3 {
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 2px #eee;
}

/* 基本 */
.column3 * {
    margin: 0;
}

.column3 img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.column3-series img {
    max-width: 40px;
}

.shop img {
    max-width: 100px;
}


/* グリッド */
.column3 {
    --side: 20px;
    display: grid;
    grid-template-columns: var(--side) 1fr 50px 1fr var(--side);
    grid-template-rows: auto 30px auto 40px auto 30px auto;
}

/* ヘッダー */
.column3-head {
    grid-column: 2 / -2;
    grid-row: 1;

    /* ヘッダーのグリッド */
    display: grid;
    grid-template-columns: 75px 1fr 140px;
    grid-template-rows: 45px repeat(3, auto);
    grid-column-gap: 24px;
    grid-row-gap: 12px;
}


/* ヘッダー: タイトル */
.column3-title {
    grid-column: 2;
    grid-row: 3;
    font-family: 'Mplus 1p', sans-serif;
    font-size: 35px;
    font-weight: 900;
    line-height: 1.2;
}

/* ヘッダー: リード文 */
.column3-lead {
    grid-column: 2;
    grid-row: 4;
    font-size: 13px;
    line-height: 1.8;
}

/* ヘッダー: シリーズ名 */
.column3-series {
    grid-column: 1;
    grid-row: 1 / 4;
    margin-bottom: -12px;
    background-color: #F9BF45;
    color: #fff;
    font-size: 14px;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    text-align: center;
    display: grid;
    justify-items: center;
    align-items: center;
    align-content: center;
    grid-row-gap: 8px;
}

/* ヘッダー: 日付 */
.column3-date {
    grid-column: 3;
    grid-row: 1;
    align-self: end;
    padding: 3px 0;
    background-color: #222;
    color: #fff;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 14px;
    text-align: center;
}


/* ヘッダー： メニューの基本設定 */
.column3-head ol,
.column3-head ul {
    display: grid;
    grid-auto-flow: column;
    justify-content: start;
    margin: 0;
    padding: 0;
    list-style: none;
}

.column3-head a,
.column3-head a {
    color: #000;
    text-decoration: none;
}

/* ヘッダー: パンくずリスト */
.column3-bread {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    font-size: 10px;
    line-height: 2;
}

.column3-bread li:not(:last-child)::after {
    margin: 0 5px;
    content: '>';
    color: #aaa;
}

/* ヘッダー: カテゴリー */
.column3-category {
    grid-column: 2;
    grid-row: 2;
}

.column3-category ul {
    grid-column-gap: 5px;
}

.column3-category a {
    display: block;
    padding: 3px 5px;
    border-radius: 5px;
    background-color: #ccc;
    font-size: 10px;
}

/* ヘッダー: SNSメニュー */
.column3-sns {
    grid-column: 3;
    grid-row: 3;
}

.column3-sns ul {
    justify-content: space-between;
}

.column3-sns a {
    font-size: 14px;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    display: block;
    width: 40px;
    line-height: 35px;
}
.column3-sns li:nth-child(1) a
     {background-color: #55acee;}
.column3-sns li:nth-child(2) a
     {background-color: #3b5998;}
.column3-sns li:nth-child(3) a
     {background-color: #dd4b39;}

/* ヘッダー： 区切り線 */
.column3-head::before  {
    grid-column: 1 / -1;
    grid-row: 1;
    align-self: end;
    content: '';
    border-top: solid 4px #222;
    height: 2px;
    border-bottom: solid 2px #222;
    margin: 0 calc(var(--side) * -1) -4px;
}

/* ヘッダー： 装飾画像 */
.column3-head::after   {
    grid-column: 3;
    grid-row: 4;
    justify-self: center;
    align-self: center;
    width: 80%;
    content: url('img/gourmet.svg');
}


/* セクション（共通） */
.sec h2 {
    font-family: 'Mplus 1p', sans-serif;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.sec .spot {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    border: solid 1px #aaa;
    border-radius: 50%;
    box-sizing: border-box;
    display: block;
    width: 3.75em;
    height: 3.75em;
    line-height: 3.75em;
}

.sec .num {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 78px;
    font-weight: 300;
    line-height: 1;
}

.sec p {
    font-size: 14px;
    text-align: justify;
    text-justify: inter-ideograph;
}


/* セクション01 */
.sec01 {
    grid-column: 2 / -2;
    grid-row: 3;

    /* セクション01のグリッド */
    display: grid;
    grid-template-columns: 50% 1fr;
    grid-template-rows: auto 1fr auto;
    grid-column-gap: 25px;
    grid-row-gap: 15px;
}

/* セクション01: 小見出し */
.sec01 h2 {
    grid-column: 2;
    grid-row: 1;
    margin-left: -70px;
    z-index: 1;

    /* 小見出しのグリッド */
    display: grid;
    grid-template-columns: auto auto 1fr;
    grid-template-rows: auto auto;
    grid-row-gap: 10px;
    align-items: end;
}

.sec01 h2::after {
    grid-column: 1 / -1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec01 .spot {
    margin-top: -8px;
    align-self: start;
}

.sec01 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション01: 画像 */
.sec01 figure {
    grid-column: 1;
    grid-row: 1 / -1;
}

.sec01 figure img {
    height: 100%;
    object-fit: cover;
}

/* セクション01: 文章 */
.sec01 p {
    grid-column: 2;
    grid-row: 2;
}

/* セクション01: ショップ情報 */
.sec01 .shop {
    grid-column: 2;
    grid-row: 3;
}


/* セクション02 */
.sec02 {
    grid-column: 2;
    grid-row: 5;

    /* セクション02のグリッド */
    display: grid;
    grid-template-columns: 4fr 5fr;
    grid-template-rows: auto 1fr auto auto;
    grid-column-gap: 15px;
    grid-row-gap: 15px;
}


/* セクション02: 小見出し */
.sec02 h2 {
    grid-column: 1 / -1;
    grid-row: 1;

    /* 小見出しのグリッド */
    display: grid;
    grid-template-columns: auto auto auto 1fr;
    grid-template-rows: auto;
    align-items: end;
}

.sec02 h2::after {
    grid-column: 3;
    grid-row: 1;
    align-self: stretch;
    margin-bottom: -45px;
    margin-right: 5px;
    z-index: 1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec02 .spot {
    margin-left: -20px;
    margin-right: -10px;
    margin-bottom: -20px;
    z-index: 1;
}

.sec02 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション02: 画像01 */
.sec02 .fig01 {
    grid-column: 1;
    grid-row: 2 / 4;
    margin-bottom: 40px;
}

.sec02 .fig01 img {
    height: 100%;
    object-fit: cover;
}


/* セクション02: 画像02 */
.sec02 .fig02 {
    grid-column: 2;
    grid-row: 3;
    margin-left: -40px;
}

/* セクション02: 文章 */
.sec02 p {
    grid-column: 2;
    grid-row: 2;
}

/* セクション02: ショップ情報 */
.sec02 .shop {
    grid-column: 1 / -1;
    grid-row: 4;
}


/* セクション03 */
.sec03 {
    grid-column: 4;
    grid-row: 5;

    /* セクション03のグリッド */
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto 1fr auto;
    grid-row-gap: 15px;
}

/* セクション03: 小見出し */
.sec03 h2 {
    grid-column: 1;
    grid-row: 2;

    /* 小見出しのグリッド */
    display: grid;
    grid-template-columns: auto auto 1fr auto;
    grid-template-rows: auto auto;
    grid-row-gap: 10px;
    align-items: end;
}

.sec03 h2::before {
    grid-column: 4;
    grid-row: 1;
    align-self: stretch;
    margin-bottom: -10px;
    margin-top: -60px;
    z-index: 1;
    transform: rotate(-22deg);
    transform-origin: right bottom;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 h2::after {
    grid-column: 1 / -1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 .spot {
    margin-left: -15px;
}

.sec03 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}

/* セクション03: 画像 */
.sec03 figure {
    grid-column: 1;
    grid-row: 1;
}

/* セクション03: 文章 */
.sec03 p {
    grid-column: 1;
    grid-row: 3;
}

/* セクション03: ショップ情報 */
.sec03 .shop {
    grid-column: 1;
    grid-row: 4;
}


/* ショップ情報 */
.shop {
    display: grid;
    grid-template-columns: 100px 1fr;
    grid-template-rows: auto auto;
    grid-column-gap: 10px;
    grid-row-gap: 5px;
    border: solid 1px #222;
}


.shop img {
    grid-column: 1;
    grid-row: 1 / -1;
}

.shop h3 {
    grid-column: 2;
    grid-row: 1;
    font-size: 12px;
    align-self: end;
}
.shop p {
    grid-column: 2;
    grid-row: 2;
    font-size: 10px;
    line-height: 1.5;
}

.shop span {
    padding: 0 5px;
    border-radius: 10px;
    background-color: #ddd;
}


/* セクションを区切る点線 */
.column3::before   {
    grid-column: 2 / -2;
    grid-row: 4;
    align-self: center;
    content: '';
    border-top: dotted 6px #ddd;
}

.column3::after    {
    grid-column: 3;
    grid-row: 5;
    justify-self: center;
    content: '';
    border-left: dotted 6px #ddd;
}


/* フッター */
.column3-foot {
    grid-column: 1 / -1;
    grid-row: -2;
    padding: 30px 0;
    background-color: #222;
    color: #fff;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}


/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
    .column3 {
        --side_old: calc( (100vw - 960px) / 2 );
    }

    .column3-title {
        font-size: 40px;
    }

    .sec h2 {
        font-size: 21px;
    }
}



/* ##### 画面の横幅767ピクセル以下 ##### */
@media (max-width: 767px) {
    /* グリッド */
    .column3 {
        --side: 20px;
        grid-template-columns:
         var(--side) 1fr var(--side);
        grid-template-rows:
         auto 40px auto 50px auto 50px auto 40px auto;
    }

    /* ヘッダー */
    .column3-head {
        grid-column: 1 / 3;
        grid-row: 1;

        /* ヘッダーのグリッド */
        grid-template-columns: var(--side) 1fr 100px;
        grid-column-gap: 12px;
    }

    /* ヘッダー: シリーズ名 */
    .column3-series {
        display: block;
        writing-mode: vertical-rl;
        width: var(--side); /* Safari 10.x用 */
    }

    .column3-series img {
        width: 15px;
        height: 15px;
        vertical-align: baseline;
    }


    /* ヘッダー: タイトル */
    .column3-title {
        grid-column: 2 / -1;
        grid-row: 2;
    }

    /* ヘッダー: カテゴリー */
    .column3-category {
        grid-column: 2 / -1;
        grid-row: 3;
    }

    /* ヘッダー: リード文 */
    .column3-lead {
        grid-column: 2 / -1;
        grid-row: 4;
    }

    /* ヘッダー: SNSメニュー */
    .column3-sns a {
        width: 30px;
        line-height: 30px;
    }

    /* ヘッダー： 装飾画像 */
    .column3-head::after {
        content: none;
    }


    /* セクション: 小見出し */
    .sec h2 {
        margin: 0;
        font-size: 20px;
    }

    .sec .spot {
        margin: 0 0 0 calc( (var(--side) + 5px) * -1 );
        font-size: 12px;
        align-self: end;
    }

    .sec .num {
        font-size: 60px;
    }

    /* セクション01 */
    .sec01 {
        grid-column: 2;
        grid-row: 3;

        /* セクション01のグリッド */
        grid-template-columns: 1fr;
        grid-template-rows: repeat(4, auto);
        grid-row-gap: 15px;
    }

    .sec01.sec > * {
        grid-column: auto;
        grid-row: auto;
    }

    .sec01 h2::after {
        margin: 0 calc( var(--side) * -1 );
    }

    /* セクション02 */
    .sec02 {
        grid-column: 2;
        grid-row: 5;
    }

    /* セクション03 */
    .sec03 {
        grid-column: 2;
        grid-row: 7;
    }

    .sec03.sec > * {
        grid-column: auto;
        grid-row: auto;
    }

    .sec03 h2::before {
        content: none;
    }

    /* フッター */
    .column3-foot {
        grid-column: 1 / -1;
        grid-row: -2 / -1;
    }


    /* セクションを区切る点線 */
    .column3::before   {
        grid-column: 2;
        grid-row: 4;
    }

    .column3::after    {
        grid-column: 2;
        grid-row: 6;
        justify-self: stretch;
        align-self: center;
        border-top: dotted 6px #ddd;
    }

}


} /* CSSグリッドに対応したブラウザ用の設定 ここまで */


/* IE11用の設定を記述 */
@media all and (-ms-high-contrast: none), not all and (-ms-high-contrast: none) {

/* Autoprefixerで変換した設定 */

/* 基本 */

.column3 * {
    margin: 0;
}

.column3 img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

.column3-series img {
    max-width: 30px;
}

.shop img {
    max-width: 100px;
}


/* グリッド */
.column3 {
    --side: 20px;
    display: -ms-grid;
    display: grid;
    /* -ms-grid-columns: calc( (100vw - 768px) / 2 ) 1fr 50px 1fr calc( (100vw - 768px) / 2 ); */
    -ms-grid-columns: 10px 1fr 50px 1fr 10px;
        grid-template-columns: calc( (100vw - 768px) / 2 ) 1fr 50px 1fr calc( (100vw - 768px) / 2 );
    -ms-grid-rows: auto 30px auto 40px auto 30px auto;
        grid-template-rows: auto 30px auto 40px auto 30px auto;
}

/* ヘッダー */
.column3-head {
    width:1000px;
    -ms-grid-column: 2;
    -ms-grid-column-span: 3;
    grid-column: 2 / 5;
    -ms-grid-row: 1;
    grid-row: 1;

    /* ヘッダーのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 75px 1fr 140px;
        grid-template-columns: 75px 1fr 140px;
    -ms-grid-rows: 45px (auto)[3];
        grid-template-rows: 45px repeat(3, auto);
    grid-column-gap: 24px;
    grid-row-gap: 12px;
}


/* ヘッダー: タイトル */
.column3-title {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 3;
    grid-row: 3;
    font-family: 'Mplus 1p', sans-serif;
    font-size: 35px;
    font-weight: 900;
    line-height: 1.2;
}

/* ヘッダー: リード文 */
.column3-lead {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 4;
    grid-row: 4;
    font-size: 13px;
    line-height: 1.8;
}

/* ヘッダー: シリーズ名 */
.column3-series {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / 4;
    margin-bottom: -12px;
    background-color: #000;
    color: #fff;
    font-size: 14px;
    font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    text-align: center;
    display: -ms-grid;
    display: grid;
    justify-items: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    grid-row-gap: 8px;
}

/* ヘッダー: 日付 */
.column3-date {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
    padding: 3px 0;
    background-color: #222;
    color: #fff;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 14px;
    text-align: center;
}


/* ヘッダー： メニューの基本設定 */
.column3-head ol,
.column3-head ul {
    display: -ms-grid;
    display: grid;
    grid-auto-flow: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: start;
    margin: 0;
    padding: 0;
    list-style: none;
}

.column3-head a,
.column3-head a {
    color: #000;
    text-decoration: none;
}

/* ヘッダー: パンくずリスト */
.column3-bread {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
    font-size: 10px;
    line-height: 2;
}

.column3-bread li:not(:last-child)::after {
    margin: 0 5px;
    content: '>';
    color: #aaa;
}

/* ヘッダー: カテゴリー */
.column3-category {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
}

.column3-category ul {
    grid-column-gap: 5px;
}

.column3-category a {
    display: block;
    padding: 3px 5px;
    border-radius: 5px;
    background-color: #ccc;
    font-size: 10px;
}

/* ヘッダー: SNSメニュー */
.column3-sns {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 3;
    grid-row: 3;
}

.column3-sns ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.column3-sns a {
    font-size: 14px;
    color: #fff;
    text-align: center;
    border-radius: 5px;
    display: block;
    width: 40px;
    line-height: 35px;
}
.column3-sns li:nth-child(1) a
     {background-color: #55acee;}
.column3-sns li:nth-child(2) a
     {background-color: #3b5998;}
.column3-sns li:nth-child(3) a
     {background-color: #dd4b39;}

/* ヘッダー： 区切り線 */
.column3-head::before  {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / 4;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
    content: '';
    border-top: solid 4px #222;
    height: 2px;
    border-bottom: solid 2px #222;
    margin: 0 calc(( (100vw - 768px) / 2 ) * -1) -4px;
}

/* ヘッダー： 装飾画像 */
.column3-head::after   {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 4;
    grid-row: 4;
    -ms-grid-column-align: center;
        justify-self: center;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    width: 80%;
    content: url('img/gourmet.svg');
}


/* セクション（共通） */
.sec h2 {
    font-family: 'Mplus 1p', sans-serif;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.sec .spot {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    border: solid 1px #aaa;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    width: 3.75em;
    height: 3.75em;
    line-height: 3.75em;
}

.sec .num {
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 78px;
    font-weight: 300;
    line-height: 1;
}

.sec p {
    font-size: 14px;
    text-align: justify;
    text-justify: inter-ideograph;
}


/* セクション01 */
.sec01 {
    -ms-grid-column: 2;
    -ms-grid-column-span: 3;
    grid-column: 2 / 5;
    -ms-grid-row: 3;
    grid-row: 3;

    /* セクション01のグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 50% 1fr;
        grid-template-columns: 50% 1fr;
    -ms-grid-rows: auto 1fr auto;
        grid-template-rows: auto 1fr auto;
    grid-column-gap: 25px;
    grid-row-gap: 15px;
}

/* セクション01: 小見出し */
.sec01 h2 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    margin-left: -70px;
    z-index: 1;

    /* 小見出しのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto 1fr;
        grid-template-columns: auto auto 1fr;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
    grid-row-gap: 10px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
}

.sec01 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column: 1 / 4;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec01 .spot {
    margin-top: -8px;
    -ms-flex-item-align: start;
        -ms-grid-row-align: start;
        align-self: start;
}

.sec01 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション01: 画像 */
.sec01 figure {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / 4;
}

.sec01 figure img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

/* セクション01: 文章 */
.sec01 p {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
}

/* セクション01: ショップ情報 */
.sec01 .shop {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 3;
    grid-row: 3;
}


/* セクション02 */
.sec02 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 5;
    grid-row: 5;

    /* セクション02のグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 4fr 5fr;
        grid-template-columns: 4fr 5fr;
    -ms-grid-rows: auto 1fr auto auto;
        grid-template-rows: auto 1fr auto auto;
    grid-column-gap: 15px;
    grid-row-gap: 15px;
}


/* セクション02: 小見出し */
.sec02 h2 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 1;
    grid-row: 1;

    /* 小見出しのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto auto 1fr;
        grid-template-columns: auto auto auto 1fr;
    -ms-grid-rows: auto;
        grid-template-rows: auto;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
}

.sec02 h2::after {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
    margin-bottom: -45px;
    margin-right: 5px;
    z-index: 1;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec02 .spot {
    margin-left: -20px;
    margin-right: -10px;
    margin-bottom: -20px;
    z-index: 1;
}

.sec02 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}


/* セクション02: 画像01 */
.sec02 .fig01 {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    grid-row: 2 / 4;
    margin-bottom: 40px;
}

.sec02 .fig01 img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}


/* セクション02: 画像02 */
.sec02 .fig02 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 3;
    grid-row: 3;
    margin-left: -40px;
}

/* セクション02: 文章 */
.sec02 p {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
}

/* セクション02: ショップ情報 */
.sec02 .shop {
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
    grid-column: 1 / 3;
    -ms-grid-row: 4;
    grid-row: 4;
}


/* セクション03 */
.sec03 {
    -ms-grid-column: 4;
    grid-column: 4;
    -ms-grid-row: 5;
    grid-row: 5;

    /* セクション03のグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    -ms-grid-rows: auto auto 1fr auto;
        grid-template-rows: auto auto 1fr auto;
    grid-row-gap: 15px;
}

/* セクション03: 小見出し */
.sec03 h2 {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 2;
    grid-row: 2;

    /* 小見出しのグリッド */
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: auto auto 1fr auto;
        grid-template-columns: auto auto 1fr auto;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
    grid-row-gap: 10px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
}

.sec03 h2::before {
    -ms-grid-column: 4;
    grid-column: 4;
    -ms-grid-row: 1;
    grid-row: 1;
    -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
    margin-bottom: -10px;
    margin-top: -60px;
    z-index: 1;
    -webkit-transform: rotate(-22deg);
        -ms-transform: rotate(-22deg);
            transform: rotate(-22deg);
    -webkit-transform-origin: right bottom;
        -ms-transform-origin: right bottom;
            transform-origin: right bottom;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    grid-column: 1 / 5;
    content: '';
    display: block;
    border: solid 4px gold;
}

.sec03 .spot {
    margin-left: -15px;
}

.sec03 .num {
    margin-bottom: -5px;
    margin-right: 5px;
}

/* セクション03: 画像 */
.sec03 figure {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
}

/* セクション03: 文章 */
.sec03 p {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 3;
    grid-row: 3;
}

/* セクション03: ショップ情報 */
.sec03 .shop {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 4;
    grid-row: 4;
}


/* ショップ情報 */
.shop {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 100px 1fr;
        grid-template-columns: 100px 1fr;
    -ms-grid-rows: auto auto;
        grid-template-rows: auto auto;
    grid-column-gap: 10px;
    grid-row-gap: 5px;
    border: solid 1px #222;
}


.shop img {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    grid-row: 1 / 3;
}

.shop h3 {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    grid-row: 1;
    font-size: 12px;
    -ms-flex-item-align: end;
        -ms-grid-row-align: end;
        align-self: end;
}
.shop p {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 2;
    grid-row: 2;
    font-size: 10px;
    line-height: 1.5;
}

.shop span {
    padding: 0 5px;
    border-radius: 10px;
    background-color: #ddd;
}


/* セクションを区切る点線 */
.column3::before   {
    -ms-grid-column: 2;
    -ms-grid-column-span: 3;
    grid-column: 2 / 5;
    -ms-grid-row: 4;
    grid-row: 4;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    content: '';
    border-top: dotted 6px #ddd;
}

.column3::after    {
    -ms-grid-column: 3;
    grid-column: 3;
    -ms-grid-row: 5;
    grid-row: 5;
    -ms-grid-column-align: center;
        justify-self: center;
    content: '';
    border-left: dotted 6px #ddd;
}


/* フッター */
.column3-foot {
    -ms-grid-column: 1;
    -ms-grid-column-span: 5;
    grid-column: 1 / 6;
    -ms-grid-row: 7;
    grid-row: 7;
    padding: 30px 0;
    background-color: #222;
    color: #fff;
    font-family: 'Source Sans Pro', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}



/* IE11用追加設定 */
.column3::before,
.column3::after {
    display: block;
}

/* IE11用追加設定: ヘッダー */
.column3-date,
.column3-head::before,
.column3-head::after {
    display: block;
}
.column3-bread,
.column3-category,
.column3-title,
.column3-lead {
    margin-left: 24px;
    margin-right: 24px;
    margin-top: 12px;
}
.column3-head ol,
.column3-head ul {
    display: flex;
}
.column3-series {
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 10px;
}
.column3-series img {
    margin-bottom: 5px;
}


/* IE11用追加設定: セクション */
.column3 {
    min-width: 768px;
}
.sec > h2,
.sec > p {
    margin-bottom: 15px;
}
.sec01 > figure {
    margin-right: 25px;
}
.sec02 > .fig01 {
    margin-right: 15px;
}
.sec02 > .fig02 {
    margin-bottom: 15px;
}
.shop h3,
.shop p {
    margin-left: 10px;
}

/* IE11用追加設定: セクション 小見出し */
.sec h2 span,
.sec h2::after,
.sec h2::before {
    display: block;
}
.sec h2 span {
    -ms-grid-column: 3;
    -ms-grid-row-align: end;
}
.sec h2 .spot {
    -ms-grid-column: 1;
}
.sec h2 .num {
    -ms-grid-column: 2;
}
.sec01 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    -ms-grid-row: 2;
    margin-top: 10px;
}
.sec02 h2 span {
    -ms-grid-column: 4;
}
.sec02 h2::after {
    -ms-grid-column: 3;
    -ms-grid-row: 1;
}
.sec03 h2::after {
    -ms-grid-column: 1;
    -ms-grid-column-span: 4;
    -ms-grid-row: 2;
    margin-top: 10px;
}


} /* IE11用の設定 ここまで */


/* IE11用の設定（画面の横幅768px以下のときの両サイドの余白) */
@media all and (max-width: 768px) and (-ms-high-contrast: none), 
not all (min-width: 768px) and (-ms-high-contrast: none) {
    .column3 {
        -ms-grid-columns: 20px 1fr 50px 1fr 20px;
    }
    .column3-head::before {
        margin-left: -20px;
        margin-right: -20px;
    }
} /* IE11用の設定 ここまで */


/* /column3 */

/* sectionの最後の下線 */
#school_shoukai, #school_shidou, #ondemand {
    margin: 0 0 20px 0;
    padding: 0 0 20px 0;
    border-bottom: solid 2px #eee;
}



/* よくある質問 */

.faq_container{
    display: -webkit-inline-flex; /* Safari */
    display: inline-flex;
    -webkit-flex-direction: row; /* Safari */
    flex-direction:         row;
    -webkit-flex-wrap: nowrap; /* Safari */
    flex-wrap:         nowrap;
    -webkit-align-items: stretch; /* Safari */
    align-items:         stretch;
    width:100%;
    -webkit-align-items: center; /* Safari */
    align-items:         center;
    margin-bottom:40px;
}

.faq_image_kotei{
width:150px;
padding:0 10px;
}
.faq_image_kotei img{
    width:100%;
}
.faq_str_grow{
  flex:1;
  padding:0 5px;
}
.faq_str_grow p{
text-align: justify; /* 両端揃え(均等割り付け) */
}

@media screen and (max-width:768px) {
.faq_image_kotei{width:120px;}
}
@media screen and (max-width:480px) {
    .faq_image_kotei{width:90px;}
}

/* スタッフ */
.img_str_shidou .box16 {margin-top:0px;}

/* 入会の流れ */

.box29 .column_str_all .column_str_up {margin-top:0px;margin-bottom:0px;}
.box29 .column_str_all .column_str_down {padding:0px;}

/* 吹き出し本体 */
.balloon_right{
  position: relative;
  padding: 20px;
  border-radius: 10px;
  color: #ffffff;
  background-color: #4682B4;
  margin-right:10px;
}

/* 三角アイコン */
.balloon_right::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -15px;
  top: 20px;
  border-left: 15px solid #4682B4;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}

.balloon_left{
  position: relative;
  padding: 20px;
  border-radius: 10px;
  color: #ffffff;
  background-color: #DB7093;
    margin-left:10px;
}

/* 三角アイコン */
.balloon_left::before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -15px;
  top: 20px;
  border-right: 15px solid #DB7093;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}

/*------------------------------------------------------------
シリーズ情報
-------------------------------------------------------------*/

.series_gaiyou_box{animation: fadeIn .7s ease 0s 1 normal; }

/*------------------------------------------------------------
講座情報
-------------------------------------------------------------*/

/* lecturesアーカイブ */

.gaiyou_lectures {
    width:100%;
    margin-bottom:15px;
    border-bottom:2px dotted dimgray;
}
.lectures_archive_header{
    margin:5px 0 ;
}
.lectures_archive_header h2.midashi a:hover{
    color: #ff6347;
    text-decoration: none!important;
}

.lectures_archive_content{
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width:100%;
}
.lectures_archive_picture{
    width:50%;
    margin-bottom:10px;
}
.lectures_archive_picture img{
  width:100%;
}
.lectures_archive_setsumei{
  width:50%;
    padding:0 0 0 15px;
-webkit-flex: 1;
  flex: 1;
}
.lectures_archive_setsumei p{
    text-align: justify;
    margin-bottom: 0;
}

.lectures_archive_detailbtn{
    text-align: right;
    margin-bottom: 10px;
}

@media only screen and (max-width: 480px){
    .lectures_archive_content{
    flex-direction: column;
}
    .lectures_archive_picture{
        width:100%;
        max-width:480px;
    }
     .lectures_archive_setsumei{
        width:100%;
        max-width:480px;
        padding:0;
    }
 }
/* 校正用 */
/* 
.gaiyou_lectures {background-color: lightyellow;}
.lectures_archive_header{background-color: mistyrose;}
.lectures_archive_content{background-color: aliceblue;}
.lectures_archive_picture{background-color: palegreen;}
.lectures_archive_setsumei{background-color: wheat;}
.lectures_archive_detailbtn{background-color: rosybrown;}
 */

/* タグ */
.kiji-tag     {margin-bottom: 0px}

.kiji-tag ul,.entry-content .kiji-tag ul {margin: 0;
     padding: 0;
     list-style: none;
     border:0;}

.kiji-tag li,.entry-content .kiji-tag li {display: block;
     margin-right: 5px;
     margin-bottom: 5px;
     padding: 3px 5px;
     border-radius: 2px;
     background-color: #51A8DD;
     color: #ffffff;
     font-size: 12px;
     text-decoration: none}

.kiji-tag li:first-child a     {background-color: #E16B8C;}

.kiji-tag li a:hover     {background-color: #94ecf6}
.kiji-tag li:first-child a:hover     {background-color: #F8C3CD}

.kiji-tag ul:after     {content: "";
     display: block;
     clear: both}

.kiji-tag li     {float: left;
     width: auto}

.kiji-tag.kind-box li{background-color: #E79460;}

/* 投稿日・更新日 */

.kiji-date     {margin-bottom: 10px;
     color: #f00;
     font-size: 1.0em}

@media only screen and (max-width: 599px) {
     .kiji-date     {font-size: 0.8em;}
}

.lecture_table_middle table {
  width: 100%;
height: auto;
margin-bottom: 10px!important;

}

/* 小見出し */
.kiji h2     {position: relative;
     margin-top: 0.7em;
     padding-left: 32px;
     padding-bottom: 5px;
     border-bottom: solid 2px #00a0e9;
     font-size: 26px;
font-weight: bold;
     clear: both}

.kiji h2:before     {position: absolute;
     left: 0px;
     top: 3px;
     content: '\f14a';
     color: #00a0e9;
     font-family: "Font Awesome 5 Free";
     font-size: 28px;
     line-height: 1}

.kiji h3     {margin-top: 10px;
     padding-left: 10px;
     border-left: solid 10px #a5e2fe;
     font-size: 21px;
font-weight: bold;
     clear: both}

@media only screen and (max-width: 768px) {
     .kiji h1     {font-size: 32px}

     .kiji p     {font-size: 18px;
        line-height:30px;}

     .kiji h2     {padding-left: 40px;
          font-size: 24px}

     .kiji h2:before     {font-size: 26px}

     .kiji h3     {padding-left: 12px;
margin-bottom:15px;
          font-size: 22px}
}

@media only screen and (max-width: 599px) {
     .kiji h1     {font-size: 24px}

     .kiji p     {font-size: 18px;
        line-height:28px;}

     .kiji h2     {padding-left: 21px;
          font-size: 22px}

     .kiji h2:before     {font-size: 22px}

     .kiji h3     {padding-left: 6px;
          font-size: 20px}
}

/*------------------------------------------------------------
教室検索
-------------------------------------------------------------*/

/* 地域を選択するテーブル */

#table01 table {
  width: 100%;
  border-spacing: 0;
  font-size:1.0em;
  *border-collapse: collapse;
margin-top: 0px;
padding:0;
}
#table01 table th {
  color: #fff;
  padding: 8px 8px;
  background: #66BAB7;
  background:-moz-linear-gradient(rgba(34,85,136,0.7), rgba(34,85,136,0.9) 50%);
  font-weight: bold;
  border-left:1px solid #268785;
  border-top:1px solid #268785;
  border-bottom:1px solid #268785;
  line-height: 120%;
  vertical-align: middle;
  text-align: center;
}
#table01 table th a{color: #fff;}
#table01 table th:first-child {
width:2em;
}
#table01 table tr:nth-child(2) td:nth-child(2) {
  width:4em;
}
#table01 table th:last-child {
  border-right:1px solid #268785;
}
#table01 table tr td {
  padding: 8px 8px;
  border-bottom: 1px solid #268785;
  border-left: 1px solid #268785;
  text-align: center;
}
#table01 table tr td:last-child {
  border-right: 1px solid #268785;
text-align: left;
}
#table01 table tr {
  background: #fff;
}
#table01 table tr:nth-child(2n+1) td:last-child {
  background: #f1f6fc;
}
#table01 table tr:nth-child(2n+1) td:nth-last-child(2) {
  background: #f1f6fc;
}

#table01 table tr:last-child td {
}
#table01 table tr:last-child td:first-child {
}
#table01 table tr:last-child td:last-child {
}

/*------------------------------------------------------------
講座情報個別
-------------------------------------------------------------*/
.lecture_single {
width: 100%;
height: auto;
}

.lecture_single .regist_date p{
font-size:12px;
color:#666;dorasoku.com
}


.lecture_single .catch_single {
clear: both;
font-size:21px;
}

.lecture_single .main_image {
margin-bottom: 0.5em;
}

.lecture_table_middle table {
  width: 100%;
height: auto;
margin-bottom: 10px!important;
border-width: 2px;
border-color: #ccc;
}

.lecture_table_middle th {
  font-size: 16px;
  vertical-align: middle;
  text-align: center;
  width: 25%;
height: 1.0em;
padding: 3px 3px;
}

.lecture_table_middle td {
  font-size: 14px;
  width: 75%;
height: 1.0em;
padding: 10px;
}

.lecture_single .table_all{
  font-size: 16px;
width:100%;
padding:0;
margin-bottom: 10px;
}

.lecture_single .table_all:after{
content:"";
display:block;
clear:both;
}

.lecture_single .table_left{
float:left;
width:30%;
padding:0;
vertical-align:top;
}

.lecture_single .table_right{
float:left;
width:70%;
padding:0 0 0 20px;
vertical-align:top;
}

.lecture_single .text_image{
text-align: center;
}

.lecture_single .lecture_item_list{
width:100%;
}

.lecture_single .lecture_item_list table {
  width: 100%;
margin-bottom: 10px;
}

.lecture_single .lecture_item_list tbody {
  width: 100%;
}

.lecture_single .lecture_item_list tr {
  width: 100%;
}

.lecture_single .lecture_item_list th {
width: 100%;
  font-size: 16px;
  vertical-align: middle;
  text-align: center;
height: 0.5em;
padding: 3px 5px;
}

.lecture_single .lecture_item_list td {
width: 100%;
  font-size: 14px;
height: 0.5em;
padding: 5px 10px;
}

.lecture_single .text_shokai p{
  width: 100%;
padding-top:10px;
}

/*●テーブルタグ*/
.lecture_single table{
     margin-bottom: 10px;
     padding: 0;
     border-top: 1px solid #959595;
     border-left: 1px solid #959595;
}

/*「table」の1行目に「colspan」を利用する場合は「auto」を指定する*/
/*#main-contents table{ table-layout: auto; }*/

.lecture_single th,
.lecture_single td{
     padding: 10px;
     border: 1px solid #959595;
}

.lecture_single th{
     background-color: #a6a6a6!important;
     color: #fff;
     font-weight: bold;
     text-align: left;
}

/*wp-pagenavi base*/
.wp-pagenavi {
clear: both;
text-align:center;
margin-bottom: 20px;
}
.wp-pagenavi a, .wp-pagenavi span {
color: #999;
background-color: #FFF;
border: solid 1px #e0e0d2;
padding: 8px 15px;
margin: 0 2px;
white-space: nowrap;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
-webkit-transition: 0.2s ease-in-out;
-moz-transition: 0.2s ease-in-out;
-o-transition: 0.2s ease-in-out;
transition: 0.2s ease-in-out;
text-align: center;
text-decoration:none;
}
.wp-pagenavi a:hover{
color:#ffd700; 
background-color:#999; 
border-color:#999;
}
.wp-pagenavi span.current{
color: #FFF;
background-color: #66cccc;
border-color: #66cccc;
font-weight: bold;
}

/*サイドバー調整*/

input#s{border-top:solid 1px #eee;}
.widget.widget_sp_image{margin-bottom: 20px;}
h4.widgettitle.dfont{margin-bottom: 10px;}
.widget-menu__title{margin-bottom: 20px;}
.search_widget{margin-bottom: 20px}

.header-nav .btn-warning:hover, .btn-warning:focus {
    color: #fff;
 }

/*
 * トップページ/アーカイブの記事一覧スタイル
 */
.cardtype,.sidelong {
 margin-bottom: 1em;
}
.cardtype__article {
 position: relative;
 width: 100%;
 margin: 0 0 25px;
 border-radius: 2px;
 background: #fff;
 box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
 cursor: pointer;
 transition: .2s ease-in-out;
}
.cardtype__article:hover {
 box-shadow: 0 15px 30px -5px rgba(0,0,0,.15),0 0 5px rgba(0,0,0,.1);
 transform: translateY(-4px);
}
.cardtype__link {
 display: block;
 color: #555;
 text-decoration: none;
 cursor: pointer;
}
.cardtype__link:hover {
 color: #555;
 text-decoration: none;
}
.cardtype__img {
 margin: 0;
 overflow: hidden;
 position: relative;
 height: 0;
 padding-bottom: 57.7%;
}
.cardtype__img img {
  border-radius: 2px 2px 0 0;
  object-fit: cover;
}
.cardtype__link {
 padding-bottom: 25px;
}
.cardtype h2 {
 margin: 8px 13px 0;
 font-size: 17px;
}
.cardtype time {
 display: block;
 margin: 13px 13px 8px;
 color: #b5b5b5;
 font-size: 13px;
 font-weight: bold;
}
/* .cardtype time:before {
 content: "\f1ae";
 font-family: 'FontAwesome'!important;
 padding-right: 4px;
 font-weight: normal;
} */
.cat-name {
 display: inline-block;
 overflow: hidden;
 position: absolute;
 top: 13px;
 left: 13px;
 height: 22px;
 margin: 0;
 padding: 0 10px;
 border-radius: 14px;
 color: #fff;
 font-size: 11px;
 font-weight: bold;
 vertical-align: middle;
 line-height: 22px;
}
.cat-name:hover {
 text-decoration: none;
 background: silver;
}
.newmark {
 display: inline-block;
 position: absolute;
 top: 13px;
 right: 10px;
 width: 37px;
 height: 37px;
 border-radius: 8px;
 color: #fff;
 font-size: 13px;
 font-weight: bold;
 text-align: center;
 line-height: 37px;
 transform-origin: 50% 50%;
 animation: animScale 3.5s ease-out;
}

@keyframes animScale {
 0% {
  transform: scale(0, 0);
 }
 30% {
  transform: scale(0, 0);
 }
 35% {
  transform: scale(1.2, 1.2);
 }
 40% {
  transform: scale(1, 1);
 }
 45% {
  transform: scale(1.1, 1.1);
 }
 60% {
  transform: scale(1, 1);
 }
 100% {
  transform: scale(1, 1);
 }
}
.home_bottom {
 margin: 1em 0;
}
.home_top {
 margin: 0 0 1em;
}
#content.page-forfront {
 margin-top: 0;
 padding: 15px;
 background: #fff;
}
#content.page-forfront .entry-content {
 padding: 0!important;
}

/*記事一覧を横長スタイルにした場合*/
.sidelong__article {
 position: relative;
 width: 100%;
 margin: 0 0 1em;
 overflow: hidden;
 background: #fff;
 cursor: pointer;
 transition: .3s ease-in-out;
 border: solid 1px #ddd;
}
.sidelong__article:hover {
 box-shadow: 0 10px 20px -5px rgba(0,0,0,.2);
}
.sidelong__link {
 display: table;
 width: 100%;
 padding: 7px;
 color: #555;
 text-decoration: none;
 cursor: pointer;
}
.sidelong__link:hover{
 text-decoration: none}
.sidelong__img,
.sidelong__article-info {
 display: table-cell;
 vertical-align: top;
}
.sidelong__article-info h2{
  font-size: 24px;
}
.sidelong__article-info p{
  font-size: 16px;
}
.sidelong__img {
 width: 160px;
 height: 120px;
}
.sidelong__img img {
  object-fit: cover;
  width: 160px;
  height: 100%;
  background-color: #fff;
 }
.sidelong__article-info {
 width: calc(100% - 90px);
 padding-left: 10px;
}
.sidelong time {
 display: block;
 color: #b5b5b5;
 font-size: 13px;
 font-weight: bold;
 margin: 0;
}
.sidelong h2 {
 display: -webkit-box;
 overflow: hidden;
 height: 4.2em;
 margin: 0;
 font-size: 12px;
 line-height: 1.4;
 -webkit-box-orient: vertical;
 -webkit-line-clamp: 3;
}
.sidelong .newmark {
 top: 4px;
 right: auto;
 left: 4px;
}
@media only screen and (max-width: 639px) {
  .flex_archive_category{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .sidelong__article {
    width:49%;
  }
  .sidelong__link {

  }
  .sidelong__img img {
    width:100%;
  }
  .sidelong__article-info {
 display: block;
 width:100%;
  }
.sidelong__link {
 display: block;
 }
 .sidelong__img{
  width:100%;
  height:150px;
  }

}

.cardtype__article, .sidelong__article {
   animation: fadeIn 1.1s ease 0s 1 normal;
}
.cardtype__article:first-child,
.cardtype__article:nth-child(2),
.sidelong__article:first-child,
.sidelong__article:nth-child(2) {
   animation: fadeIn .7s ease 0s 1 normal;
}
@keyframes fadeIn {
 0% {
  opacity: 0;
  transform: translateY(30px);
 }
 100% {
  opacity: 1;
 }
}

/*記事カードのカスタマイズ*/
.cardtype__img img {
  width:100%;
  height:auto;
}
.flex_event_card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;

  width:100%;
  padding: 10px;
}
.flex_event_card article.cardtype__article{
  width:49%;
}

/*トップページのニュース＆イベントのショート*/
.news_event_short {width:100%;}
.news_event_short ul{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;

  width:100%;
  padding:0;
  margin:0;
}
.news_event_short li{
  width:49%;
}
@media only screen and (max-width: 767px) {
.news_event_short li{ width:100%; }
}

/*トップページの本部イベントのショート*/
.news-honbu-event-short {width:100%;}

/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
    .news-honbu-event-short .flex_event_card article.cardtype__article{ width:24%; }
}
/* ##### 画面の横幅769～999ピクセル ##### */
@media (min-width: 769px) and (max-width: 999px) {
    .news-honbu-event-short .flex_event_card article.cardtype__article{ width:24%; }
}
/* ##### 画面の横幅481～768ピクセル ##### */
@media (min-width: 481px) and (max-width: 768px) {
    .news-honbu-event-short .flex_event_card article.cardtype__article{ width:32%; }
}
/* ##### 画面の横幅480ピクセル以下 ##### */
@media only screen and (max-width: 480px) {
    .news-honbu-event-short .flex_event_card article.cardtype__article{ width:calc(50% - 5px); }
}
/* ##### 画面の横幅640ピクセル以下（スマホ以下） ##### */
@media only screen and (max-width: 640px) {
    .news-honbu-event-short .flex_event_card{padding:10px 0;}
}

/*三冠達成*/
.flex_triple_crown ul{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

  -ms-flex-wrap: wrap;
  flex-wrap: wrap;

  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}
.flex_triple_crown ul li:nth-child(1) {
  padding-top:24px;
  flex-basis:  33%;
}
.flex_triple_crown ul li:nth-child(2) {
  flex-basis:  66%;
}
.flex_triple_crown ul li h3 {
  font-size: 24px;
}
.flex_triple_crown ul li p {
  font-size: 18px;
}

.flex_triple_crown ol.koumoku {
  padding: 0;
  position: relative;
}
.flex_triple_crown ol.koumoku li {
  color: black;
  border-left: solid 8px orange;/*左側の線*/
  background: whitesmoke;/*背景色*/
  margin-bottom: 5px;/*下のバーとの余白*/
  line-height: 1.5;
  border-radius: 0 15px 15px 0;/*右側の角だけ丸く*/
  padding: 0.5em;
  list-style-type: none!important;
}

/*サイドバー付のレイアウト*/

.main_sidebar{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width:100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.main_sidebar .main_part {
  width:80%;
  padding:0 5px 0 0;
}
.main_sidebar .sidebar_part {
  width:20%;
  padding:0 0 0 10px;
}
.main_sidebar .sidebar_part ul, ul.sidebar-post-archive{
    width:100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}

.main_sidebar .sidebar_part li{
  width:100%;
  margin-bottom:20px;
}

ul.sidebar-post-archive li{
    width:100%;
    background-color: #fff;
    margin-bottom: 20px;
}
ul.sidebar-post-archive li img{
    width:100%;
    height:auto;
}

ul.single-sidebar{
    width:30%;
padding:0 10px;
}


.p-entry{background-color: #fff;}
.p-entry__inner{width:100%;padding: 10px;}
/* Inner ----------------------------------------------------------------- */
.l-inner { position: relative; width: 100%; max-width: 980px; margin-right: auto; margin-left: auto; }

/* Primary ----------------------------------------------------------------- */
.l-primary { width: 70%; }

@media screen and (max-width: 991px) { .l-primary { width: 100%; margin-bottom: 50px; } }
@media screen and (max-width: 767px) { .l-primary { margin-bottom: 40px; } }

/* Secondary ----------------------------------------------------------------- */
.l-secondary { -webkit-box-sizing: border-box; box-sizing: border-box; width: 300px; }

@media screen and (max-width: 991px) { .l-secondary { width: 600px; margin: 0 auto 40px; } }

@media screen and (max-width: 767px) { .l-secondary { width: 100%; margin: 0 auto 30px; } }



a h4.sidebar-post-title {
    font-size: 1.0em;
    font-weight: bold;
    padding:3px 5px;
    margin:0 0 3px 0;
    color:#666;

    transition: color .3s;
    padding-bottom:1px;
}

a h4.sidebar-post-title:hover {
  color:#00CED1;
  text-decoration: none;
  padding-bottom:1px;
}

p.sidebar-post-excerpt{
    font-size: 0.8em;
    padding:5px 3px 0px 5px;
    margin:0 0 8px 0;
}

@media only screen and (max-width: 767px) {
  .main_sidebar .main_part {
    width:100%;
    padding:0;
  }
  .main_sidebar .sidebar_part {
    width:100%;
    padding:0;
  }
  .main_sidebar .sidebar_part li{
  width:23.5%;
}

@media only screen and (max-width: 739px) {
    ul.sidebar-post-archive { width:48%; }
}

@media only screen and (max-width: 639px) {

    .main_sidebar .sidebar_part li{
    width:33%;
  }
    .main_sidebar .sidebar_part li:nth-child(1){
  display: none;
  }
}
}

/* ページネーション */

ul.page-nav {
    text-align:center;
    font-weight:bold;
    margin:30px 0;}
ul.page-nav li {display:inline;}
ul.page-nav li a {
    border: 2px solid rgba(255,255,255,0.8);
    border-radius:10px;}
ul.page-nav li a:hover {
    text-decoration:none;
    border: 2px solid #fff;
    box-shadow: 0 0 20px #fff inset;}
ul.page-nav li a:active {top:1px;}/*push image*/
ul.page-nav li.current span {/*style of current button*/
    border: 2px solid #89c040;
    background: #89c040;
    border-radius: 10px;}
ul.page-nav li.first span,
ul.page-nav li.previous span,
ul.page-nav li.next span,
ul.page-nav li.last span,
ul.page-nav li.page_nums span {/*no link buttons*/
    border: 2px solid rgba(255,255,255,0.5);
    color: rgba(255,255,255,0.5);
    border-radius: 10px;}
ul.page-nav li a,
ul.page-nav li.current span,
ul.page-nav li.first span,
ul.page-nav li.previous span,
ul.page-nav li.after span,
ul.page-nav li.next span,
ul.page-nav li.last span,
ul.page-nav li.page_nums span {
    padding: 0.5em 0.8em;
    position:relative;}

/* sangoボタン */

    .btn-flat-logo {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #00bcd4;
  transition: .4s;
}

.btn-flat-logo:hover {
  background: #1ec7bb;
}


/* sango見出し */

.hh35 {
 display: inline-block;
 box-sizing: border-box;
 position: relative;
 height: 50px;/*リボンの高さ*/
 padding: 0 30px;/*横の大きさ*/
 background: #f57a78;/*塗りつぶし色*/
 color: #fff;/*文字色*/
 font-size: 18px;/*文字の大きさ*/
 text-align: center;
 vertical-align: middle;
 line-height: 50px;/*リボンの高さ*/
}
.hh35:before,
.hh35:after {
 position: absolute;
 z-index: 1;
 width: 0;
 height: 0;
 content: "";
}
.hh35:before {
 top: 0;
 left: 0;
 border-width: 25px 0 25px 15px;
 border-style: solid;
 border-color: transparent transparent transparent #fff;
}
.hh35:after {
 top: 0;
 right: 0;
 border-width: 25px 15px 25px 0;
 border-style: solid;
 border-color: transparent #fff transparent transparent;
}

/* 料金表 */

.table_price {
    border:1;
    border: solid 1px #ccc;
    border-collapse: collapse;
    vertical-align: middle;
}

.table_price tr th{
     color:#fff;
    background-color: #58B2DC;
    text-align: center;
    font-weight: bold;
    vertical-align: middle;
    border: solid 1px #ccc;
}

.table_price tr th p{
    color:#fff;
    margin-bottom:0;
    font-size:  1.0em;
}

.table_price tr td{
    text-align: center;
    vertical-align: middle;
    border: solid 1px #ccc;
}

.table_price tr td p{
    color:#222;
    margin-bottom:0;
    font-size:  1.2em;
}

/* ロボットLP */

.nobreak { word-break: keep-all }
.nobreak wbr::before { content: "\200B" }

.robot-content h1{

}
.robot-content h4{
    margin:20px 0;
    text-align: center;
    font-weight: bold;
    color: #006284;
}

.robot-content p{
    margin:0;
    padding:10px;
    text-align:justify;
}

.robot-taiken{
    width:auto;
    height:240px;
    margin:20px 0;
    position: relative;
    background-image: url('images/robot-background-1100x300-bungu.svg');
}

.robot-taiken ul{
    width:100%;
    margin:0;
    padding:0 10px;
    position: absolute;
  top: 50%;
  -webkit-transform : translateY(-50%);
  transform : translateY(-50%);
    
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
   -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
}

.robot-taiken ul li{
    display: table;
}

.robot-taiken ul li p{
    display: table-cell;
    text-align: center;
	vertical-align: middle;
}

.robot-taiken li:nth-child(1),.robot-taiken li:nth-child(3){
  width:15%;
  height:auto;
}

.robot-taiken li:nth-child(1) img,.robot-taiken li:nth-child(3) img{
  -webkit-filter: drop-shadow(3px 3px 2px #777);
}


.robot-taiken li:nth-child(2){
    width:70%;
    -webkit-flex: 1;
  flex: 1;
}
.robot-taiken img{
width:100%;
}

.robot-taiken .robot-taiken-button{
    transition: all 0.6s ease 0s;
}

.robot-taiken .robot-taiken-button:hover{
    cursor: pointer;
    transform: scale(1.1, 1.1);
}

.robot-no1-hyoki .left-p25-right-p75{
    display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}

.robot-no1-hyoki .left-p25-right-p75 .left-p25{
    width:25%;
}

.robot-no1-hyoki .left-p25-right-p75 .right-p75{
    width:75%;
}

.flex-2-box{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.robot-21seiki .flex-2-box .flex-2-box-left{ width:50%; }
.robot-21seiki .flex-2-box .flex-2-box-right{ width:50%; }
.robot-21seiki .flex-2-box img{ width:100%; }

.robot-21seiki .kyoryu .flex-2-box .flex-2-box-left{ width:70%; }
.robot-21seiki .kyoryu .flex-2-box .flex-2-box-right{ width:30%; }


/* ##### 画面の横幅1000ピクセル以上 ##### */
@media (min-width: 1000px) {
    .robot-content h1{font-size:38px;}
    .robot-content h4{font-size:30px;}
    .robot-no1-hyoki .left-p25-right-p75 p.right-p75{font-size:30px;}
    .robot-21seiki .flex-2-box .flex-2-box-left{ width:60%; }
    .robot-21seiki .flex-2-box .flex-2-box-right{ width:40%; }
}

/* ##### 画面の横幅768～999ピクセル ##### */
@media (min-width: 768px) and (max-width: 999px) {
    .robot-content h1{font-size:calc( 34px + 4 * (100vw - 768px) / 231);}
    .robot-content h4{font-size:calc( 26px + 4 * (100vw - 768px) / 231);}
    .robot-no1-hyoki .left-p25-right-p75 p.right-p75{font-size:calc( 26px + 4 * (100vw - 768px) / 231);}
    .robot-taiken li:nth-child(1),.robot-taiken li:nth-child(3){ width:100px; }
}

/* ##### 画面の横幅641～767ピクセル ##### */
@media (min-width: 641px) and (max-width: 767px) {
    .robot-content h1{font-size:calc( 30px + 4 * (100vw - 641px) / 126);}
    .robot-content h4{font-size:calc( 22px + 4 * (100vw - 641px) / 126);}
    .robot-no1-hyoki .left-p25-right-p75 p.right-p75{font-size:calc( 22px + 4 * (100vw - 641px) / 126);}
    .robot-taiken{height:160px;}
    .robot-taiken li:nth-child(1),.robot-taiken li:nth-child(3){ width:80px; }
}

/* ##### 画面の横幅480～640ピクセル ##### */
@media (min-width: 480px) and (max-width: 640px) {
    .robot-content h1{font-size:calc( 26px + 4 * (100vw - 480px) / 160);}
    .robot-content h4{font-size:calc( 18px + 4 * (100vw - 480px) / 160);}
    .robot-no1-hyoki .left-p25-right-p75 p.right-p75{font-size:calc( 18px + 4 * (100vw - 480px) / 160);}
    .robot-taiken{height:160px;}
    .robot-taiken li:nth-child(1),.robot-taiken li:nth-child(3){ width:60px; }
    .robot-21seiki .flex-2-box .flex-2-box-left{ width:100%; }
    .robot-21seiki .flex-2-box .flex-2-box-right{ width:100%; }
}

/* ##### 画面の横幅479ピクセル以下 ##### */
@media only screen and (max-width: 479px) {
    .robot-content h1{font-size:24px;}
    .robot-content h4{font-size:18px;}
    .robot-no1-hyoki .left-p25-right-p75 p.right-p75{font-size:18px;}
    .robot-taiken{height:110px;}
    .robot-taiken li:nth-child(1),.robot-taiken li:nth-child(3){ width:50px; }
    .robot-21seiki .flex-2-box .flex-2-box-left{ width:100%; }
    .robot-21seiki .flex-2-box .flex-2-box-right{ width:100%; }
}

/*------------------------------------------------------------
multiple-calendar 無料体験カレンダー
-------------------------------------------------------------*/

.multiple-calendar h3{
    font-size:1.3em;
    font-weight: bold;
    color: #65a9d1;
}


.multiple-calendar table{
    width:100%;
    border-collapse: collapse;
}
.multiple-calendar thead{}
.multiple-calendar thead tr{background-color: #afeeee;}

.multiple-calendar tbody{}
.multiple-calendar tbody tr{}

.multiple-calendar tr, .multiple-calendar td {border: solid 1px #888;}  /*実線 1px 黒*/




