@charset "utf-8";
/* @import url("add.css");
@import url("css/add.css"); */

/* @font-face {
  font-family: 'passionSans';
  src: url(wf/PassionSansPDag-Regular.ttf);
} */

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

body{
/* font-family: 'Noto Sans', sans-serif; */
/* font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; */
font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
font-size: 100%;
line-height: 1.5;
color:#333333;
}

.min {
  /* font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; */
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  transform: rotate(.03deg);
}

/* リンク設定
------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#2466aa;
}

a:hover, a:active{
-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-o-transition:opacity 1s;
outline: none;
/* color:#927a49; */
opacity: .5;
}


/**** Clearfix ****/
.nav .panel:before,nav .panel:after, nav#mainNav:before,nav#mainNav:after, .newsTitle:before,.newsTitle:after{content: ""; display: table;}
nav .panel:after,nav#mainNav:after,.newsTitle:after{clear: both;}
nav .panel,nav#mainNav,.newsTitle{zoom: 1;}


/* フォーム
------------------------------------------------------------*/
input[type="text"],input[type="email"], textarea{
vertical-align:middle;
/* max-width:90%; */
width: 100%;
font-size: 100%;
line-height:30px;
height:30px;
padding:1px 5px;
border:1px solid #d4d4d7;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
color:#555;
background:#fcfcfc;
}

textarea{
height:auto;
line-height:1.5;
}

input[type="submit"],input[type="reset"],input[type="button"], button[type="submit"]{
padding:10px 50px;
background: rgba(15, 71, 139, 1.000);
border:0;
font-size: 18px;
color:#fff;
}

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover, button[type="submit"]:hover{
/* background: #808080; */
opacity: .8;
cursor:pointer;
}

input[type="submit"] {
-webkit-appearance: none;
border-radius: 0;
}


*:first-child+html input[type="submit"]{padding:3px;}


/* レイアウト
------------------------------------------------------------*/
.inner{
margin:0 auto;
width:80%;
}
.inners {
  margin:0 auto;
  width:90%;
  max-width: 1000px;
}

body.page .inner {
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
}
body.page .f_middle .inner {
  margin: 0 auto;
  width: 90%;
}
body.page .f_bot .inner,
body.page .f_bottom .inner {
  margin: 0 auto;
  width: 82.6%;
}

article#post-8,
article#post-15,
article#post-11,
article#post-6 {
  width: 80%;
  margin: auto;
}


#header{
  background: #fff;
  text-align: right;
  margin: auto;
  padding: 7.5px 0;
  z-index: 9999;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 100%;
}

body.page #header {
  border-bottom: 2px solid #2466aa;
}

#wrapper {
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
}

body.page #wrapper {
  margin-top: 65px;
}

#content{
float:left;
width:680px;
padding:15px;
background: #efefef;
box-sizing:border-box;
}

#sidebar{
float:right;
width:250px;
padding-bottom: 15px;
}

#footer{
clear:both;
border-top: 6px solid rgba(35, 101, 169, 1.000);
}

body.page #footer {
    background: #fff;
    width: 100%;
}
body #footer .f_top {
  background: none;
}


/* ヘッダー
*****************************************************/


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h1{
clear:both;
display: inline-block;
/*margin-left: 3%;*/
margin-top: 0.5em;
float: left;
width: 198px;
}

/* トップページ　スライド画像
----------------------------------*/
#mainImg{
width: 100%;
line-height:0;
text-align:center;
margin: 0 auto;
z-index:0;
}

#mainImg img {
  width: 100%;
}

#sub_img {
  position: fixed;
  height: 100%;
  margin-top: 0;
}
#sub_img img {
  height: 100%;
  width: auto;
}


/* パンくず
*****************************************************/
.breadcrumbs {
  padding:3% 2%;
  color: #2466aa;
  margin-left: 2em;
}


/* タイポグラフィ
*****************************************************/
h2.title{
    clear: both;
    position: relative;
    margin: 0;
    padding: 0 2%;
    background: none;
    width: 33%;
    text-align: left;
    color: #2466aa;
    margin-left: 2em;
    font-size: 2.3rem;
}
h2.title:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: -10%;
    background: url(images/ttlBefore.png)no-repeat;
    width: 17%;
    height: 90px;
    background-position: center center;
    background-size: 100% 100%;
}
h2.title span:before {
  margin: 0;
  width: 10%;
}

h2.first{margin-bottom: 1em;}

h2 {
  font-size: 3em;
  font-weight: bold;
  letter-spacing: 6px;
  color: #fff;
  text-align: center;
  padding: 0.3em 0 0.5em;
  background: linear-gradient(-45deg, rgba(35, 123, 165, .8), rgb(35, 101, 169)) fixed;
  background: -moz-linear-gradient(-45deg, rgba(35, 123, 165, .8), rgb(35, 101, 169)) fixed;
  background: -webkit-linear-linear-gradient(-45deg, rgba(35, 123, 165, .8), rgb(35, 101, 169)) fixed;
}
h2 span:before {
    content: "";
    display: block;
    border-top: 4px solid rgba(35, 169, 155, 1.000);
    width: 5%;
    margin: 0 auto;
    padding-bottom: 0.5em;
}
h2 span {
  display: block;
  font-size: 1rem;
  font-weight: normal;
}

ul.thumb {
  width: 56%;
  margin-left: 10em;
  position: relative;
  padding-top: 3em;
}

ul.t_n_a {
  overflow-y: scroll;
  height: 250px;
  margin-top: 3em;
  padding-top: 0;
}

ul.thumb li {
  margin-bottom: 2%;
  background: rgba(255, 255, 255, 0.8);
  box-sizing: border-box;
}

.post {
  text-align: left;
  margin-bottom: 4em;
}

.post p{
  padding-bottom:10px;
  line-height: 1.75;
  letter-spacing: 1px;
}

.post ol li{list-style:decimal;}

.post h1{
margin:20px 0;
padding:5px 0;
font-size:150%;
color: #252525;
border-bottom:3px solid #3c2f13;
}

.post h2 {
margin:20px 0;
padding-bottom:2px;
font-size:130%;
font-weight:bold;
color: #fff;
}

.post h3{
/* margin:0 0 1em 2em; */
font-size:1.5rem;
font-weight:normal;
color:#333;
text-align: left;
}

.post table{
border: 1px #2e2c2c solid;
border-collapse: collapse;
border-spacing: 0;
margin: 20px auto;
width: 100%;
}

.post table th{
padding: 1rem 1.5rem;
border: #2e2c2c solid;
border-width: 0 0 1px 1px;
font-weight:bold;
color:#fff;
background:#4f4d4d;
width: 20%;
}

.post table td{
padding: 1rem 1.5rem;
border: 1px #2e2c2c solid;
border-width: 0 0 1px 1px;
background:#fff;
}

.post dt{font-weight:bold; text-align: left;}

.post dd{padding-bottom:10px; text-align: left;}

.post img{max-width:100%;height:auto;}

img.aligncenter {
display: block;
margin:5px auto;
}

img.alignright, img.alignleft{
padding:4px;
margin:0 0 2px 7px;
display:inline;
}

img.alignleft{margin: 0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float: left;}



/* サイドバー　ウィジェット
*****************************************************/
#sidebar h3{
clear:both;
margin:0 0 10px;
padding:5px 0;
font-size:100%;
font-weight:normal;
color: #252525;
border-bottom:3px solid #3c2f13;
}

#sidebar a{
display:block;
}

/* 更新情報
-------------*/

.news p{
clear:both;
padding-bottom:2px;
border-bottom: 1px solid #bab48d;
}

.news p a{
display:block;
padding:5px 0;
color:#252525;
}

.news span{padding-left:10px;}

.news a:hover span{color:#927a49;}



/* フッター
*****************************************************/
#footerLogo{
    width: 20%;
    height: auto;
}

#footerLogo img{
width: 100%;
}

#footer .f_top {
  position: relative;
  background: #fff;
}

#footer .f_bottom {
  font-size: 120%;
  color: #fff;
  line-height: 1.5em;
  background: #2464a9;
}

#footer ul{
font-size:95%;
}

#footer ul ul{padding-bottom:0;width:auto;}

#footer ul li{
display:inline-block;
vertical-align:text-top;
text-align:left;
margin: 0 1em;
}

#footer ul li a{
color: #222;
display:block;
overflow:hidden;
}

#footer ul li a:hover {
  text-decoration: underline;
}

*:first-child+html #footer ul li{display:inline;}
*:first-child+html #footer ul ul,*:first-child+html #footer ul li li a,*:first-child+html #footer ul li li{display:none;}

#copyright{
/* font-family: 'passionSans'; */
/* font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; */
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  clear:both;
  text-align:center;
  font-style:normal;
  font-size:65%;
  zoom:1;
}


/* page navigation
------------------------------------------------------------*/
.pagenav{
clear:both;
width: 100%;
height: 30px;
margin: 5px 0 20px;
}

.prev{float:left}

.next{float:right;}

#pageLinks{
clear:both;
color:#4f4d4d;
text-align:center;
}


/* トップページ 最新記事3件 + お勧め商品
------------------------------------------------------------*/
.thumbWrap{
width:645px;
margin-right:-20px;
}

.thumbWrap li{
float:left;
width: 195px;
margin:0 20px 0 0;
padding:2px 0 40px;
background:none;
}


/* 最新記事リンク */
ul.thumb h3{
margin-top:10px;
padding:1px;
font-weight:normal;
font-size:100%;
text-align:center;
background:#fff;
border:1px solid #bcbcbc;
}

ul.thumb h3 span{
display:block;
padding:2px 3px;
background:#dedabc;
}

ul.thumb h3:hover{background:#f1efe4;}

ul.thumb h3:hover span{background:#e3dfc4;}

/*flex_box*/
div.flex_box, .flex_box {
	overflow: hidden;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack:justify;
	-webkit-justify-content: space-between;
    justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
div.flex_box > div, .flex_box > div {width: 48%;}
div.flex_box div.thcal, .flex_box div.thcal {width: 33%;}
div.flex_box div.focal, .flex_box div.focal {width: 25%;}


/* 調整 */
img { vertical-align: middle;}
strong { font-weight: bold;}
a:hover img { opacity: 0.8;}

.contactInfo {
  display: inline-block;
  margin-top: 0.5em;
  vertical-align: super;
}

ul.c_banner {overflow: hidden;}
ul.c_banner li {float: left;}
ul.c_banner li:first-child {margin-right: 20px;}
ul.s_banner li {margin-bottom: 20px;}

/*!追加*/
.flex_box.sp_only {display: none;}
.main_view {display: table;}

div.t_cell { display: table; width: 100%; font-size:0; background: #000;}
div.t_cell img {width: 100%;}
div.t_cell div {display: table-cell;}
div.t_cell div p {position: relative; overflow: hidden;}
div.t_cell div img:nth-of-type(2) {position: absolute;}
div.t_cell div:nth-of-type(1){width: 47.66%; vertical-align: top;}
div.t_cell div:nth-of-type(1) p:nth-of-type(2),
div.t_cell div:nth-of-type(1) p:nth-of-type(3),
div.t_cell div:nth-of-type(3) p:nth-of-type(1),
div.t_cell div:nth-of-type(3) p:nth-of-type(2) {display: inline-block; vertical-align: top}
div.t_cell div:nth-of-type(1) p:nth-of-type(2) {width: 100%;}
div.t_cell div:nth-of-type(1) p:nth-of-type(3) {width: 100%;}
div.t_cell div:nth-of-type(2){width: 15.94%; vertical-align: top;}
div.t_cell div:nth-of-type(3){width: 36.5%; vertical-align: top;}
div.t_cell div:nth-of-type(3) p:nth-of-type(1) {width: 100%}
div.t_cell div:nth-of-type(3) p:nth-of-type(2) {width: 100%;}
div.t_cell div:nth-of-type(1) p:nth-of-type(1) img:nth-child(2) {
    bottom: 10%;
    right: 5%;
    width: 80%;
}
div.t_cell div:nth-of-type(1) p:nth-of-type(2) img:nth-child(2) {
    bottom: 5%;
    right: 5%;
    width: 80%;
}
div.t_cell div:nth-of-type(1) p:nth-of-type(3) img:nth-child(2) { bottom: 23%; right: 1%; width: 45%;}
div.t_cell div:nth-of-type(2) p:nth-of-type(1) img:nth-child(2) {
    bottom: 10%;
    left: 0;
    right: 0;
    width: 90%;
    margin: auto;
}
div.t_cell div:nth-of-type(3) p:nth-of-type(1) img:nth-child(2) {
    bottom: 10%;
    left: 5%;
    margin: auto;
    width: 65%;
}
div.t_cell div:nth-of-type(3) p:nth-of-type(2) img:nth-child(2) {
    bottom: 5%;
    left: 5%;
    width: 90%;
}
div.t_cell div:nth-of-type(3) p:nth-of-type(3) img:nth-child(2) { bottom: 12%; left: 2%; width: 80%;}

/* add2_27 */
#section_01 .post-password-form p {font-size: 1rem; font-weight: normal; text-align: left; width: 100%;}
#section_01 .post-password-form input[type="submit"] {padding: 5px 30px;}


#footer ul li span.sp_tel a {display: inline;}

/*common*/
.center {text-align: center;}
.posi_rel {position: relative;}
.posi_ab {position: absolute;}
.bold {font-weight: bold;}
.sp_flex {display: none !important;}
.sp_only {display: none !important;}

#movie video {
  width: 100%;
}

div.ch_img div.half_box:nth-of-type(4) {
    padding: 2em;
    width: 40%;
}

/* メインメニュー 1200px以下から
------------------------------------------------------------*/
@media only screen and (max-width:1200px) {
  #header h2 {
    margin-left: 3%;
  }
}


/* メインメニュー PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
  nav#mainNav{
  width: 60%;
  width: 70%;
  clear:both;
  z-index:200;
  display: inline-block;
  vertical-align: middle;
  }

  .panel ul{
  }

  .panel ul li{
  display: inline-block;
  margin: 0;
  margin-left: 1em;
  text-align: center;
  float: left;
  position: relative;
  /*width: 25%;*/
  height:50px;
  line-height:50px;
  }
  .panel ul li:before {
      content: '';
      display: block;
      position: absolute;
      bottom: -1px;
      left: 0;
      width: 100%;
      transform: scaleX(0);
  }
  .panel ul li:hover:before {
    left: 50%;
    width: 20px;
    height: 2px;
    margin-left: -10px;
    transform: scaleX(1);
    background: #16589d;
    transition: all 0.7s ease;
  }
  .panel ul li a{
  text-align: center;
  color: #222;
  }

  nav div.panel{
  display:block !important;
  width: 100%;
  }

  a#menu{display:none;}

  /* 親メニュー */
  .panel ul li.current-menu-item a, .panel ul li a:hover, .panel ul li a:active, .panel ul li.current-menu-parent a{
  padding-top: 5%;
  }

  .panel ul ul{width: 28em;}

  .panel ul li ul{display: none;}

  .panel ul li li{
  text-align: left;
  width:185px;
  height: 40px;
  line-height: 40px;
  padding:0;
  display: inline-block;
  }

  .panel ul li:hover ul{
  display: block;
  position: absolute;
  top:100%;
  left:0;
  z-index:500;
  }

  .panel ul li:hover ul::before {
    content: "";
    top: -18px;
    left: 35px;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border: 10px solid transparent;
    border-bottom: 10px solid #dadee0;
    position: absolute;
  }

  .panel ul li li a{
    color: #848788;
  width:105%;
  height:40px;
  padding:0;
  line-height:40px;
  font-size:95%;
  text-align:left;
  }

  .panel ul li li a span{padding:0 10px;}

  .panel ul li li a:hover,.panel ul li li.current-menu-item a{color:#000; border: none;}

  .panel ul li:hover ul li{
  margin:0;
  background: #dadee0;
  }

  ul.thumb li {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transition-property: all;
    -webkit-transition-duration: 1s;
    -moz-transition-property: all;
    -moz-transition-duration: 1s;
    -ms-transition-property: all;
    -ms-transition-duration: 1s;
    transition-property: all;
    transition-duration: 1s;
  }

  ul.thumb li:hover {
    background: url(images/green.png) no-repeat 100% 100%;
    background-size: cover;
    color: #000;
    left: -50px;
  }
div.t_cell div p a:hover img:nth-of-type(1) {-webkit-transform: scale(1.1); -moz-transform: scale(1.1); -ms-transform: scale(1.1); transform: scale(1.1); opacity: 1;}
div.t_cell div p a:hover img:nth-of-type(2) {opacity: 1;}
div.t_cell div p a img:nth-of-type(1) {-moz-transition: scale(1); -webkit-transition: scale(1); -ms-transition: scale(1); transition: scale(1); -moz-transition: .5s ease-in-out; -webkit-transition: .5s ease-in-out; -ms-transition: .5s ease-in-out; transition: .5s ease-in-out;}
}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
  /*nav#mainNav{
  clear:both;
  width:100%;
  margin:0 auto;
  padding:20px 0;
  background:#242223;
  }*/

  nav#mainNav {
    display: none;
  }

  nav#mainNav .inner{width:95%;}

  nav#mainNav a.menu{
  width:100%;
  display:block;
  height:40px;
  line-height:40px;
  font-weight: bold;
  text-align:left;
  color:#fff;
  background: #473a1c;
  border:1px solid #726749;
  }

  nav#mainNav a#menu span{padding-left:2.5em;}

  nav#mainNav a.menuOpen{
  border-bottom:0;
  color:#fff;
  background: #473a1c;
  }

  nav#mainNav a#menu:hover{cursor:pointer;}

  nav .panel{
  display: none;
  width:100%;
  position: relative;
  right: 0;
  top:0;
  z-index: 1;
  border:1px solid #726749;
  }

  .panel ul{margin:0;padding:0;}

  .panel ul li{
  float: none;
  clear:both;
  width:100%;
  height:auto;
  line-height:1.2;
  }

  .panel ul li a,.panel ul li.current-menu-item li a{
  display: block;
  width:100%;
  padding:1em 0;
  text-align:left;
  color:#b6a68a;
  background:#2d2c2d;
  }

 .panel ul li a span{padding-left:1em;}

  .panel ul li.current-menu-item a,.panel ul li a:hover,.panel ul li.current-menu-item a,.panel ul li a:active, .panel ul li li.current-menu-item a, .panel ul li.current-menu-item li a:hover, .panel ul li.current-menu-item li a:active{
  color:#fff;
  background:#181616;
  }

  .panel ul li li{
  float:left;
  border:0;
  }

  .panel ul li li a, .panel ul li.current-menu-item li a, .panel ul li li.current-menu-item a{background:#2d2c2d url(images/sub1.png) no-repeat 20px 50%;}

  .panel ul li li a:hover, .panel ul li.current-menu-item li a:hover{background:#181616 url(images/sub1.png) no-repeat 20px 50%;}

  .panel ul li li:last-child a{background:#2d2c2d url(images/subLast.png) no-repeat 20px 50%;}
  .panel ul li li:last-child a:hover,.panel ul li.current-menu-item li:last-child a:hover{background:#181616 url(images/subLast.png) no-repeat 20px 50%;}

  .panel ul li li a span{padding-left:35px;}

  nav div.panel{float:none;}

  /* 追加 */

  #header h2 {
    margin-left: 10%;
  }

  .contactInfo {
    text-align: center;
    width: 50%;
  }

  button#responsive-menu-button {
    top: 3%;
    right: 2%;
  }

  ul.thumb {
    width: 80%;
    margin: 0 auto;
    padding-top: 0;
  }

  ul.thumb li a:hover {
    color: #000;
    text-decoration: underline;
  }

  #section_03 .slide_box iframe {
    height: 100%;
    max-height: 240px;
  }

  #section_05 {
    padding: 3em 0;
  }

  #section_05 > div {
    float: none;
    padding-right: 0;
    margin: 0 auto;
  }

  #footerLogo {
    display: none;
  }
  #responsive-menu-container {background: rgba(63, 133, 179, .200)}
  #responsive-menu-container #responsive-menu li.responsive-menu-item a {border-bottom: 1px solid #fff;}
  #responsive-menu-container #responsive-menu li.responsive-menu-current-item > .responsive-menu-item-link,
  #responsive-menu-container #responsive-menu li.responsive-menu-item a:hover,
  #responsive-menu-container #responsive-menu li.responsive-menu-current-item > .responsive-menu-item-link:hover {border-color: #fff; }
  #sub_img {width: 18%; height: auto;}
  button#responsive-menu-button {top: 1%;}
  .banner_area div a.moreBtn { left: inherit; right: 5%; bottom: 1em;}
  #section_05 ul {margin-top: 10px;}
  #footer .inner {width: 90%;}
  div.under_wrapper div.tabs_content dl dl.hum_list dd {width: 50%;}
  div.under_wrapper div.tabs_content dl ul.bank_list {width: 90%;}
  div.under_wrapper div.tabs_content dl ul.bank_list li {width: 48%;}
  div.under_wrapper div.tabs_content div.access_box div.flex_box div:first-child, div.under_wrapper div.tabs_content div.access_box div.flex_box div:last-child {width: 100%;}
	div.per_list div.thcal img.hover,
	#slider a img.hover {display: block !important;}
	.galleries_inner, .post > div {width: 95%; margin: 0 auto;}
	.post div.recs div:nth-of-type(2) ul,
	div.tabs_content dl dd {width: 80%;}
	ul.thumb div {right: -10%;}
}

/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, #header {width:100%;}

  #header h1{padding:10px;}
  #headerInfo{padding-right:10px;}

  .panel ul, .thumbWrap{margin:0 auto;}
  .panel ul ul{padding:0;}

  nav div.panel{float:none;}

  #mainImg img{width:100%;height:auto;}

  #content, #sidebar{
  width: 95%;
  clear:both;
  float:none;
  margin:0 auto;
  padding: 10px 0;
  }

  #banners{width:100%;margin:0 auto;text-align:center;}
  #banners p{width:30%; float:left;margin:0 1% 0 2%;}
  #banners p img{width:100%;height:auto;}

  section.widget_search{text-align:center;}
  #contactBanner{margin:0 auto;}

  #footer{margin:0;border:0;text-align:center;}

  #footerLogo, #footer ul{
  float:none;
  width:auto;
  text-align:center;
  padding: 1em 0;
  }

  #footer ul{
/*   border-top:1px solid #ccc; */
  }

  #footer ul ul{padding-top:0;border:0;}

  /* 調整 */
  img {
    max-width: 100%;
  }

  #header {
    text-align: center;
  }

  #header h1,.contactInfo {
    margin-bottom: 10px;
  }

  #header h1 {
    text-align: center;
    padding: 0;
  }
  .contactInfo {
    display: none;
    float: none;
  }

  #header h2 {
    float: none;
    width: 30%;
    margin: 0 auto;
  }

  #header > div {
    padding-top: 0;
  }

  #content {
    background: none;
  }

  button#responsive-menu-button {
    top: 2%;
    width: 40px;
    height: 40px;
  }

  ul.c_banner li{
    float: none;
    margin-bottom: 20px;
  }

  ul.c_banner li:first-child {
    margin-right: 0;
  }

  ul.c_banner li img,#sidebar img {
    display: block;
    margin: 0 auto;
  }

  #section_02 > div:nth-child(1) > div:nth-child(2) {
    width: 15%;
    top: 20%;
  }

  #section_04 {
    width: 95%;
    margin: 0 auto;
  }

  #section_04 span {
    font-size: 100%;
  }

  #section_05 > div {
    width: 45%;
    margin: 0 auto;
  }

  ul.thumb div {
    right: -18em;
    bottom: -20px;
  }

  ul.thumb div img {
    width: 50%;
  }

  #footer #f_middle {
    height: auto;
    overflow: hidden;
    padding: 1em 0;
  }

  #footer #banner_box {
    width: 100%;
    float: none;
  }

  #footer #f_middle #f_media ul {
    margin-left: 0;
    text-align: center;
  }

  #footer #f_middle > div > ul > li {
    width: 10em;
    padding-bottom: 0;
  }

  #footer #f_middle > div:nth-child(2) {
    width: 100%;
    float: none;
    margin-left: 0;
  }

  #footer #f_middle > div:nth-child(2) > ul:nth-child(2) {
    border-top: none;
  }

  #footer #f_middle ul {
    text-align: left;
  }

  #f_media ul li {
    margin: 0 0.8em;
  }
  div.flex_box > div, .flex_box > div {width: 90%;}
  #post-229 div#tabch_box div.flex_box div:nth-of-type(1),
  #post-229 div#tabch_box div.flex_box div:nth-of-type(2) {
    width:100%;
    margin: 1em auto;
  }
  .post .company dt,
  .post .company dd {
    width: 100%;
  }
  .post .company dt {
    padding-bottom: 0;
  }
  ul.thumb li a {
    padding: 1em 5%;
  }
	#footer #banner_box div {width: 48%;}
	#footer #banner_box {margin-left: 0; text-align: center; width: 95%; margin: 20px auto 0;}
	#footer ul,
	div.tabs_content dl dd,
	body.page .inner,
	body.page #footer,
	div.under_wrapper div.tabs_content div.access_box div.flex_box div:first-child,
	div.under_wrapper div.tabs_content div.access_box div.flex_box div:last-child,
	body.archive #footer
	{width: 100%;}
	#footer .f_bot .group_com ul {display: inline-block; width: 49%; vertical-align: top;}
	#sub_img {display: none;}
	h2.title {width: 80%;}
	h2.title:before {background-size: 50% 100%;}
	.post > div.per_list {margin: 0 auto;}
	body.archive .inner, body.archive .f_bot .inner, body.archive .f_bottom .inner {width: 95%; margin: 0 auto;}
/* 	.post > div {margin-left: 0;} */
	#footer #banner_box {width: 90%;}
	#section_03 #slider li dl dt img { width: 100%; height: auto;}
	#section_03 #slider li dl dt {height: auto;}
}

/* 幅800px以下から
------------------------------------------------------------*/
@media only screen and (max-width: 800px){
	ul.side_tabs {width: 25%;}
}

/* 幅648px以下から  トップページの３画像調節
------------------------------------------------------------*/
@media only screen and (max-width: 648px){
  .thumbWrap{width:100%;margin:0 auto;text-align:center;}
  .thumbWrap ul.thumb li{width:30%; float:left;margin:0 1% 0 2%;}
  .thumbWrap img{width:100%;height:auto;}
  #header h2 {
    width: 50%;
  }
  .contactInfo {
    display: none;
  }
  button#responsive-menu-button {
    top: 12px;
  }
  #section_01 p:nth-child(3) {
    margin: 0 auto;
  }
  #section_03 > div:nth-child(2) > div {
    border: none;
  }
  .bx-wrapper .bx-controls-direction a.bx-next {
    right: -11%;
  }
  .bx-wrapper .bx-controls-direction a.bx-prev {
    left: -11%;
  }
  #section_05 > div img {
    width: 90%;
  }
  ul.thumb li a {
    line-height: 4em;
  }
  #footer ul {
    text-align: left;
  }
  #footer #page_top {
    display: none;
  }
  #f_media > ul {
    text-align: center;
  }
  #footer #f_middle .flex_box > div {
    width: 100%;
  }
  #copyright {
    font-size: 70%;
    padding: 1em;
    line-height: 2;
  }
  h2.title {
    font-size: 1.2rem;
  }
  ul.thumb li a {line-height: 2em;}
  ul.thumb div {bottom: -20px;}
  
   h2 {font-size: 1.5em;}
  .top_wap {top:0;}
  .banner_area div a.moreBtn {left: inherit; right: 5%; width: 200px; height: 25px; line-height: 25px; bottom: 1em; }
  .f_bot .group_com ul {border-left: none;}
  #footer ul {width: 100%;}
  body.page .inner,
  div.tabs div.rec_tabs_content dl dd,
  div.tabs_content dl dd,
  body.page #footer,
  body.page #footer,
  div.under_wrapper div.tabs_content dl ul.bank_list,
  div.under_wrapper div.tabs_content div.access_box div.flex_box div:first-child,
  div.under_wrapper div.tabs_content div.access_box div.flex_box div:last-child,
  body.archive #footer{width: 100%;font-size: 0.85rem;}
  body.page .f_middle .inner,body.page .f_bot .inner, body.page .f_bottom .inner, h2.title {width: 80%;}
  h2.title:before {background-position: top center; background-size: 50% 50%;}
  #post-300 section:nth-of-type(1) div.flex_box div, #post-578 section:nth-of-type(1) div.flex_box div {width: 100%; margin-bottom: 10px;}
  div.tabs div.rec_tabs_content dl dt {width: 30%;}
  div.tabs div.rec_tabs_content, div.tabs_content {padding: 20px 10px;}
  #post-300 section:nth-of-type(4) div.flex_box div.long_box, #post-578 section:nth-of-type(4) div.flex_box div.long_box {padding: 0 10px; box-sizing: border-box;}
  #post-300 section:nth-of-type(4) div.flex_box div.long_box h5, #post-578 section:nth-of-type(4) div.flex_box div.long_box h5 {font-size: 20px; position: static; width: 100%;}
  .post {margin-bottom: 0;}
  .post > div,
  body.archive .galleries_inner
    {width: 95%; margin: 0 auto;}
    div.tax_per {margin-left: 0;}
    body.tax-galleries_list div.tax_per {
      margin: 0 auto;
    }
  .post > div.per_list > div {width: 50%;}
  div.tax_per > div.thcal {width: 48%;}
  body.tax-galleries_list div.tax_per > div.thcal {width: 100%;}
  div.flex_box div.half_box {width: 80%; margin: 0 auto 20px;}
  .banner_area {margin-bottom: 1em;}
  #section_01 div.sp_only {margin-bottom: 10px;}
  
  div.form_box {width: 100%;}
  div.form_box dl, div.form_box dl dt, div.form_box dl dd {width: 100%;}
  div.form_box dl dd {margin-top: 10px;}
  div.form_box p.center span:after {top: -9px;}
  .min_img {width: 50px;}
  
  ul.side_tabs, div.tabs_content {float: none; width: 100%; margin-left: 0; box-sizing: border-box;}
  ul.side_tabs li {box-sizing: border-box; float: none; right: 0;}
  ul.side_tabs li:after {transform: rotate(90deg);}
  div.under_wrapper div.tabs_content dl dl.hum_list dd {width: 40%;}
  #footer .f_bot .group_com ul {width: 100%;}
  
  div.flex_box.add_sp_flex > div,
  div#tabch_box div.tabs_content:nth-of-type(2) img:last-child, div#tabch_box div.tabs_content:nth-of-type(3) img:last-child {width: 100%; margin-bottom: 20px;}
  
  .pc_only {display: none !important;}
  .sp_only {display: block !important;}
  .sp_flex {display: flex !important;}
  .sp_none {display: none !important;}
  div.galleries_inner div section div.tax_per div.thcal p {
    height: auto;
  }
  div.galleries_inner div section div.tax_per div.thcal p img {
      height: auto;
      width: 100%;
  }
}

/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
  #header{text-align:center;}
  #footerLogo,#headerInfo{float:none;padding:0;}
  #headerInfo{width:250px;margin:0 auto;}
  img.alignright, img.alignleft{display: block; margin:5px auto;}
  .alignright,.alignleft{float:none;}
/*   #footer ul{padding:15px;} */
  #footer ul ul{padding:0;}

  #section_03 .bx-wrapper li a {
    font-size: 70%;
  }
}

/* 幅520px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 520px) {
  #section_04 span br {
    display: none;
  }
  button#responsive-menu-button {
/*     top: 0; */
  }
  #footer #f_middle > div > ul > li {
    width: 48%;
  }
}

/* 幅420px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 420px) {
	.div.flex_box, .flex_box.sp_only {display: block;}
	div.t_cell {display: none;}
  #section_02 .flex_box > div:nth-of-type(1) {
    width: 100%;
  }
  #section_02 .flex_box > div:nth-of-type(2) {
    width: 100%;
  }
  #section_02 .flex_box > div:nth-of-type(2) div {
    display: none;
  }
  #section_02 .flex_box > div:nth-of-type(2) p#dis_none {
    display: block;
  }
  #section_02 .flex_box > div:nth-of-type(2) p img {
    width: 100%;
  }
  #section_02 .flex_box > div:nth-of-type(3) {
    width: 100%;
  }
}

/* 幅360px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 360px) {
  #section_02 > div:nth-child(1) > div:nth-child(2) {
    top: 16%;
  }
  #footer #f_middle > div > ul > li {
    width: 48%;
  }
}

.justify-around {
  justify-content: space-around !important;
}


/* 汎用追加 */
.sp-none {
  display: block !important;
}
.sp-only {
  display: none !important;
}
.res-show {
  display: none;
}
@media screen and (max-width:1180px) {
  .res-show {
      display: block !important;
  }
}
@media screen and (max-width:767px) {
  .sp-only {
      display: block !important;
  }
  .sp-none {
      display: none !important;
  }
}
.eles:not(:last-of-type) {
  margin-bottom: 20px;
}
.ele:not(:last-of-type) {
  margin-bottom: 10px;
}

/* インターンシップ */
.internship-wrap .media {
  display: flex;
  gap: 20px;
}
.internship-wrap .media-ele-wrap {
  width: 50%;
}
.internship-wrap .media-img-wrap {
  width: 50%;
}
.internship-wrap .media-img-wrap .box {
  background: #fff;
  border: 2px solid #2464a9;
  padding: 10px;
}
.dl-internship1 {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #2464a9;
}
.dl-internship1 dt:not(:last-of-type),
.dl-internship1 dd:not(:last-of-type) {
  border-bottom: 1px solid #2464a9;
}
.dl-internship1 dt,
.dl-internship1 dd {
  padding: 10px;
  box-sizing: border-box;
}
.dl-internship1 dt {
  width: 100px;
  background: #e7f2ff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.dl-internship1 dd {
  width: calc(100% - 100px);
}
.dl-internship2 {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #4f4d4d;
}
.dl-internship2 dt,
.dl-internship2 dd {
  padding: 10px;
  box-sizing: border-box;
}
.dl-internship2 dt {
  width: 200px;
  background: #e7e7e7;
}
.dl-internship2 dd {
  width: calc(100% - 200px);
}
.dl-internship3 {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #4f4d4d;
}
.dl-internship3 dt,
.dl-internship3 dd {
  padding: 10px;
  box-sizing: border-box;
}
.dl-internship3 dt:not(:last-of-type),
.dl-internship3 dd:not(:last-of-type) {
  border-bottom: 1px solid #4f4d4d;
}
.dl-internship3 dt {
  width: 200px;
  background: #e7e7e7;
}
.dl-internship3 dd {
  width: calc(100% - 200px);
}
.internship-wrap .ttl-jinzai {
  text-align: center;
  display: block;
}
@media screen and (max-width: 767px) {
  .internship-wrap .media {
    flex-wrap: wrap;
  }
  .internship-wrap .media-ele-wrap {
    width: 100%;
  }
  .internship-wrap .media-img-wrap {
    width: 100%;
  }
  .dl-internship2 dt {
    width: 110px;
  }
  .dl-internship2 dd {
    width: calc(100% - 110px);
  }
  .dl-internship3 dt {
    width: 110px;
  }
  .dl-internship3 dd {
    width: calc(100% - 110px);
  }
  .internship-wrap .ttl-jinzai {
    font-size: 1.4rem;
  }
}
