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


/* =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-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, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

body{font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; font-size: 87.5%; line-height: 1.5; color:#333333; text-align: justify; text-justify: inter-ideograph;}

body.page, body.single, body.arhive {margin-top: -30px;}
body.page footer#footer, body.single footer#footer, body.arhive footer#footer {margin-top: 4em;}


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

a:hover, a:active{-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-o-transition:opacity 1s; outline: none; color:#6c8ba2;}


/**** 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%; 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"]{padding:10px 50px; background: #4f4d4d; border:0; color:#fff;}

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

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

dd.ttl_opus input[type="text"][readonly] {background: #fff; border: 0; box-shadow: none;}


/* レイアウト
------------------------------------------------------------*/
.inner{margin:0 auto; width:960px;}

#header{height: 100vh; width: auto; position: relative;}

#wrapper {background: #fff;}

#content{padding:0 10%; box-sizing:border-box; background: #fff; width: 90%; margin: 0 auto;}

/* mainimg
*****************************************************/
.bg_mainimg {/*position: fixed;*/position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: #000000; z-index: -1; overflow: hidden;}
.bg_mainimg li {position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-size: cover; background-position: 50% 50%; background-repeat: none; opacity: 1; -webkit-animation: anime 30s linear 0s; animation: anime 30s linear 0s;}
.bg_mainimg li:nth-child(1) {background-image: url(images/mainimg.png)}
@-webkit-keyframes anime { 
    0% {
        -webkit-animation-timing-function: ease-in;
        opacity: 1;
    }
    10% {
        -webkit-transform: scale(1.1);
        opacity: 1;
    }
    50% {
        -webkit-transform: scale(1.2);
        opacity: 1;
    }
    100% {
        -webkit-transform: scale(1.3);
        opacity: 1;
    }
}
@keyframes anime { 
    0% {
        animation-timing-function: ease-in;
        opacity: 1;
    }
    10% {
        transform: scale(1.1);
        opacity: 1;
    }
    50% {
        -webkit-transform: scale(1.2);
        opacity: 1;
    }
    100% {
        transform: scale(1.3);
        opacity: 1;
    }
}

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

/* サイト説明文
----------------------------------*/
#header h1{padding: 1% 5%;}


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{margin: 0 auto; padding: 0; position: relative;}
#header h2 img {max-width: 100%; width: 20vw; height: auto; margin-bottom: 0.25em;}
#header h2 span {color: #fff; display: block; padding: 0; margin: 0 30px; font-size: 2.8rem; font-weight: bold;}
#header h2 span:before {content: ""; display: block; width: 15%; padding-bottom: 30px; border-top: 4px solid #fff;}
#header h2 span:after {content: ""; display: block; width: 304px; height: 115px; background: url(images/story-garage.png)no-repeat; background-position: center center; background-size: contain; position: absolute; bottom: 15%; right: 0;}
#header h1  img{max-width: 100%; width: 6%; height: auto;}

/* タイポグラフィ
*****************************************************/
#content h2 {color: #636363; font-family: 'carbonBL'; letter-spacing: .1em; font-size: 2rem; margin-bottom: 40px; padding-top: 50px;}
.page #content h2, .single #content h2, .archive #content h2, .search #content h2 {padding-top: 100px;}
h2.title{clear:both; margin:2px 0 20px; padding:0 0 10px 0; color: #232323;}
h2.first{position: relative; margin-top: 0.95em; font-family: 'carbonBL'; font-size: 4.3125rem; color: #0c559c; text-align: center; letter-spacing: .1em;}
h2.first:before, h2.first:after {content: ""; display: block; height: 2px; position: absolute; left: 50%;}
h2.first:before {background-color: #7090a8;}
h2.first:after {background-color: #eeeeee;}
h2.first:before, h2.first:after {width: 170px; bottom: 10px;}
h2.first:before {margin-left: -170px;}
.post p{padding-bottom:10px;}
.post ol li{list-style:decimal;}
.post h1{margin:20px 0; padding:5px 0; color: #252525; border-bottom:3px solid #3c2f13;}
.post h2{margin:10px 0; padding-bottom:2px; font-weight:bold; color: #252525; border-bottom:2px solid #3c2f13;}
.post h3{position: relative; margin: 60px 0 40px; font-weight: 600; color: #121f45; text-align: center; font-family: "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;}
.post h3::before{position: absolute; content: ""; top: -15px; left: 0; right:0; width: 30px; height: 2px; -ms-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg); border-bottom: 2px solid #0c559c; margin: auto;}
.post table{border: 1px #2e2c2c solid; border-collapse: collapse; border-spacing: 0; margin:10px 0 20px;}
.post table th{padding:7px 10px 7px 5px; border: #2e2c2c solid; border-width: 0 0 1px 1px; font-weight:bold; color:#fff; background:#4f4d4d;}
.post table td{padding:7px 5px; border: 1px #2e2c2c solid; border-width: 0 0 1px 1px; background:#fff;}
.post dt{font-weight:bold;}
.post dd{padding-bottom:10px;}
.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;}

/* 更新情報
-------------*/
.news {margin: 1em auto;}
.news:last-child {margin-bottom: 3em;}
.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;}

/* ページネーション
*****************************************************/
.pagination {clear: both; padding: 20px 0; position: relative; font-size: 14px; line-height: 14px; text-align: center;}
.pagination-box {display: inline-block;}
.pagination span, .pagination a {display: block; float: left; margin: 2px 2px 2px 0; padding: 10px 15px 10px 15px; text-decoration: none; width: auto; color: #fff; background: #7090a8;}
.pagination a:hover{color: #fff; background: #636363;}
.pagination .current{padding: 10px 15px 10px 15px; color: #fff; background: #636363;}
@media only screen and (max-width: 413px) {
.pagination {font-size: 12px; line-height: 12px;}
.pagination span, .pagination a {padding: 8px 10px 8px 10px;}
.pagination .current{padding: 8px 10px 8px 10px;}
}

/* フッター
*****************************************************/
#footerLogo{width:250px; margin: 0 auto; padding-top: 15px;}
#footerLogo img{display: block; max-width:250px; height:auto; margin: 0 auto;}
#footer .f_top {padding:10px 0; background: #ccc;}
#footer .f_bottom {padding: 10px 0; background:#8c8c8c;}
#footer ul{font-size:95%; max-width: 650px; margin: 0 auto;}
#footer ul ul{padding-bottom:0;width:auto;}
#footer ul li{display:inline-block; vertical-align:text-top; text-align:left; padding:3px 20px; border-left: 1px solid #333333;}
#footer ul li:last-child {border-right: 1px solid #333333;}
#footer ul li a{display:block; overflow:hidden; text-decoration: underline;}
#footer ul li a:hover {text-decoration: none;}
*: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{text-align: left; color: #fff;}

/* 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 {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, .flex_box .thcal {width: 33%;}
div.flex_box div.focal, .flex_box div.focal {width: 25%;}
div.flex_box > div.thumbnail_box {width: 62.5%;}
div.flex_box > div.thumbnail_box iframe {width: 100%; height: 100%; min-height: 300px;}
div.flex_box > div.txt_box {width: 35%;}

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

/*!追加*/
.popup, .popupModal1 {
  display: none;
}

/*common*/
.center {text-align: center;}
.posi_rel {position: relative;}
.posi_ab {position: absolute;}
.bold {font-weight: bold;}
.input_page .input_txt,
.conf_page .conf_txt {
  display: block;
}
.input_page .conf_txt,
.conf_page .input_txt {
  display: none;
}

/* add.20200212 */
div.topics {
  margin-bottom: 50px;
  padding-bottom: 50px;
  border-bottom: 1px solid #636363;
}
div.topics.flex_box div.thumbnail_box {
  width: 30%;
}
div.topics.flex_box div.txt_box {
  width: 67.5%;
}
div.topics .txt_box .topics_ttl {
  font-size: 1.2rem;
  font-weight: bold;
  width: 100%;
  -webkit-transition: .5s;
  transition: .5s;
  color: #666766;
}
div.topics .txt_box .topics_txt {
  margin: 1em auto 2em;
  color: #666766;
}
div.topics .txt_box .topics_contact {
  display: inline-block;
}
div.topics .txt_box .topics_contact .topics_link i {
  margin-left: 0.5em;
  color: #00549c;
}
div.topics .txt_box .topics_contact .topics_link {
  padding: 0.5em 1em;
  font-size: 0.9rem;
  border: 1px solid #00549c;
}
div.topics .txt_box .topics_contact .topics_link:hover {
  background: #00549c;
  color: #fff;
}

@media only screen and (max-height: 600px) {
  .header-title {
    margin: 5% auto auto;
    width: 38%;
  }
  #header h2 span {
    font-size: 2rem;
  }
  div.header-title .catchphrase {
    padding: 20px 10px;
  }
  .header-content {
    width: 58%;
  }
  .header-content .point {
    left: 40%;
  }
}

/* first view 調整用
------------------------------------------------------------*/
@media only screen and (max-width: 1200px){
  .header-content p {line-height: 1.5;}
}

/* メインメニュー PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
  nav#mainNav{clear:both; position:relative; z-index:200; background: #fff; position: fixed; width: 100%; z-index: 9999;}
  .panel h1.menu-logo {font-size: 1rem;}
  .panel .menu-logo {display: inline-block;}
  .panel .menu-logo img {width: 60%; padding: 5%;}
  .panel ul{display: inline-block;}
  .panel ul li{position: relative; width: 125px; height: 25px; line-height: 25px; margin: 7px; display: inline-block; padding-left: 1em; border-left: 1px solid #ccc;}
  .panel ul li a {color: #636363; margin-top: 2px; display: block; text-align:center;}
  .panel ul li a:hover {color: #7090a8;}
  .panel > ul > li > a{display: block; color: #757575; white-space: nowrap; font-size: 0.8rem; text-align: center;}
  nav div.panel{display:block !important; background: #fff; width: 90%; height: 52px; margin: 0 auto;}
  a#menu{display:none;}
  .panel ul ul{width:100%;}
  .panel ul li ul{display: none; margin: 5px 0;}
  .panel ul li li{float: none; height:40px; line-height:40px; width:100%; padding:0;}
  .panel ul li:hover ul{display: block; top:50px;}
  .panel ul li li a{width:100%; height:50px; padding:0; line-height:50px; font-size:95%; text-align:left; display: block;}
  .panel ul li li a span{padding:0 10px;}
  .panel ul li li a:hover,.panel ul li li.current-menu-item a{}
  .panel ul li:hover ul li{margin:0; border-bottom:1px dotted #4f4d4d; padding-bottom: 50px;}
  .panel ul li:hover ul li:last-child{border:0; border-radius:0 0 6px 6px;}
}

/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	#mainNav a.menu > span { display: none;}
  #header h2 span:after {right: 100px;}
  div.flex_box > div.thumbnail_box {text-align: center;}
  nav#mainNav {clear: both; position: relative; z-index: 200; background: #fff; position: fixed; width: 100%; z-index: 9999;}
  nav div.panel{display:block !important; background: #fff; width: 90%; height: 52px; margin: 0 auto;}
  .panel h1.menu-logo {font-size: 1rem; display: inline-block;}
  .panel .menu-logo img {width: 60%; padding: 5%;}
  .panel ul {display: inline-block;}
  .panel ul li {position: relative; width: 125px; height: 25px; line-height: 25px; margin: 7px; display: inline-block; padding-left: 1em; border-left: 1px solid #ccc;}
  .panel ul li a {color: #636363; margin-top: 2px; display: block; text-align: center;}
  #content {padding: 0;}
  .header-content h3, .header-content p span {font-size: 1.2rem;}
  .header-title {width: 100%; z-index: 998;}
  #header h2 img {width: 28%;}
  #header h2 span img {width: 80%;}
  #header h2 span:after {right: 100px;}
  .header-content p {font-size: 1.5vw; text-align: left; line-height: 2; color: #666766; text-shadow: none;}
  .header-content .info p.right {-moz-transform: rotate(0deg); -webkit-transform: rotate(0deg); -o-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); position: absolute; top: auto; bottom: 20%; right: 0; left: 0;}
  .header-content .info p {font-size: 1.2rem;}
  #header h2 {text-align: center;}
  #header h2 span {font-size: 2rem;}
  #header h2 span:before {margin: 0 auto;}
  div.header-title .catchphrase {margin: 30px auto; width: 80%; text-align: center;}
  div.header-title .catchphrase p {font-size: 1.2rem;}
  .header-content .point {display: none;}
  .header-content .info {left: 0; right: 0; width: 80%; text-align: center;}
  .popupModal1 {display: block; text-align: center;}
  .popupModal1 > input {display: none;}
  .popupModal1 > input:nth-child(1) + label {cursor: pointer; background: #175aa0; color: #fff; padding: 0.6em 4em; margin: 0 auto; font-weight: bold; font-size: 1.3rem; border-radius: 10px; letter-spacing: 2px;}
  .popupModal1 > input:nth-child(1) + label i {color: #fff; margin-left: 1rem;}
  .modalPopup2 {display: none;}
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 {display: block; z-index: 998; position: fixed; width: 90%; height: 80%; border-radius: 20px; left: 50%; top: 50%; -webkit-transform: translate(-50%,-50%); -ms-transform: translate(-50%,-50%); transform: translate(-50%,-50%); background: #fff; padding: 10px 20px; overflow: hidden;}
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div {overflow:auto; -webkit-overflow-scrolling:touch; display: inline-block; width: 100%; height: 100%;}
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > iframe {width: 100%; height:100%; border:none; display:block;}
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > img {max-width: 100%;}
  .popupModal1 > input:nth-child(1) + label ~ label {display: none;}
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label {width: 100%; height: 100%; background: rgba(0, 0, 0, 0.70); display: block; position: fixed; left: 0; top: 0; z-index: 997; text-indent: -999999px; overflow: hidden; margin: 0;}
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {background: rgba(255, 255, 255, 0.5); display: inline-block; position: fixed; top: 0; right: 0; z-index: 999; width: 44pt; height: 44pt; font-size: 40px; border-radius: 50%; line-height: 44pt; text-align: center; box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.2);}
  .popupModal1 > input:nth-child(1) + label + input:nth-child(3):checked + label + input:nth-child(5) + label + .modalPopup2,
  .popupModal1 > input:nth-child(1) + label + input:nth-child(3) + label + input:nth-child(5):checked + label + .modalPopup2 {display: none;}
  .modalPopup2 {animation: fadeIn 1s ease 0s 1 normal; -webkit-animation: fadeIn 1s ease 0s 1 normal;}
  @keyframes fadeIn {
      0% {opacity: 0}
      100% {opacity: 1}
  }
  @-webkit-keyframes fadeIn {
      0% {opacity: 0}
      100% {opacity: 1}
  }
  .popupModal1 .modalTitle {padding-bottom: .5em; margin: .5em 0; border-bottom: 1px solid #ccc; font-weight: bold;}
  .popupModal1 .modalMain p {color:#636363; text-align: left; font-size: 18px; line-height: 2em; margin-bottom: 1.5em;}
  .popupModal1 .modalMain p:first-child {margin-top: 1em;}
}

@media (min-width: 768px) {
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {left: 50% !important; top: 50% !important; margin-left: 270px !important; margin-top: -310px !important;}
  .popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2{width: 600px; height: 600px; padding: 50px;}
}

/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, #header, .inner{width:100%;}
  #header h1, #header h2{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:98%;height:auto;}
  #content, #sidebar{width: 100%; 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; padding-bottom:20px; text-align:center;}
  #footer ul{padding-top:20px; border-top:1px solid #ccc;}
  #footer ul ul{padding-top:0;border:0;}
  img {max-width: 100%;}
  #header {padding: 10px; box-sizing:border-box;}
  .contactInfo {float: none;}
  #content {padding: 0 10%;}
  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;}
  #header h1 img {width: 10%;}
  footer#footer {width: 100%;}
  div.serch:hover form {width: 50%;}
  .bg_mainimg li:nth-child(1) {background-position: center center;}
  .header-title {margin: auto auto 0;}
  #header h2 img {width: 60%;}
  #header h2 {text-align: center;}
  #header h2 span {font-size: 3rem;}
  #header h2 span:after {right: -15px;}
  #header h2 span:before {margin: 0 auto;}
  .header-content {margin: 5% auto auto;}
  .header-content p {font-size: 3vw; text-align: center;}
  .header-content .info {width: 100%; text-align: center; left: 0;}
  div.flex_box > div.thumbnail_box, div.flex_box > div.txt_box { width: 100%;}
  div.flex_box > div.thumbnail_box {min-height: 300px;}
  footer#footer .f_right {float: none; margin-top: 20px;}
  footer#footer p {display: inline-block; margin: 0 1em;}
  div.header-title .catchphrase {width: 95%;}
  div.header-title .catchphrase p {font-size: 1rem;}
  div.topics.flex_box div.thumbnail_box, div.topics.flex_box div.txt_box {width: 100%;}
}

@media only screen and (max-width: 736px){
  #header h1, #header h2 {padding: 0 10px; font-size: 1rem;}
  #header h1 img {width: 7%;}
  #header h2 img {width: 30%; margin-bottom: 0;}
  #header h2 span {font-size: 2rem;}
  #header h2 span:before {padding-bottom: 12px;}
  #header h2 span img {width: 50%;}
  #header h2 span:after {bottom: 5%; right: 70px; width: 25%;}
  .header-title {margin: 0 auto;}
  .header-content {margin: 0 auto auto;}
  .header-content p {font-size: 14px; line-height: 1.8;}
  .header-content .info p,
  .header-content .info p a {font-size: 14px; line-height: 2.2;}
  .header-content .info p a {font-size: 0.5rem;}
  .header-content .info p img {width: 3%;}
  .header-content .info p.right {bottom: 10%;}
  .header-content .info p.right:before {top: 27px; height: 15px;}
  footer#footer .f_right {float: none; margin-top: 0.5em;}
  footer#footer .f_right p {display: inline-block; margin: 0 1em;}
  footer#footer .f_right a {text-align: right;}
  div.flex_box > div.thumbnail_box {margin-bottom: 1em;}
  nav#mainNav {display: none;}
  div.mw_wp_form p {font-size: 12px;}
  button#responsive-menu-button .responsive-menu-box {background: url(images/menu_logo.png)no-repeat; background-size: contain; background-position: center center;}
  .responsive-menu-inner, .responsive-menu-inner::before, .responsive-menu-inner::after {height: 0 !important;}
  .responsive-menu-box {height: 35px !important;}
  button#responsive-menu-button {background: rgba(0, 0, 0, .7); top: 50% !important;}
  .form_flow img {width: 100%;}
  .page #content h2, .single #content h2, .archive #content h2, .search #content h2 {padding-top: 20px;}
  #sitemap_list li {width: 100%;}
  div.flex_box > div.thumbnail_box iframe {min-height: 200px;}
  div.header-title .catchphrase {margin: 0 auto; width: 70%; padding: 15px;}
  div.header-title .catchphrase p {font-size: 0.6rem;}
  .popupModal1 > input:nth-child(1) + label {padding: 0.5em 4em; margin: 1em auto 0; font-size: 0.6rem;}
  .popupModal1 .modalMain p {font-size: 13px;}
}

/* 幅667px以下から  トップページの３画像調節
------------------------------------------------------------*/
@media only screen and (max-width: 667px){
  .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;}
  #content {padding: 0 5%;}
  div.flex_box > div.thumbnail_box iframe {min-height: 150px;}
}

/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
  #header{text-align:center;}
  #header h2,#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{text-align:left;padding:15px;}
  #footer ul ul{padding:0;}
}

@media only screen and (max-width: 414px){
  #header h1 img {width: 10%;}
  #header h2 {margin: 2em auto;}
  #header h2 img {width: 60%;}
  #header h2 span img {width: 100%;}
  #header h2 span:before {padding-bottom: 15px;}
  #header h2 span:after {bottom: 5%; right: -8px; width: 33%;}
  .header-content p, .header-content .info p a {font-size: 3vw;}
  #content {padding: 0 10%;}
  div.flex_box > div.thumbnail_box {min-height: 200px;}
  .header-title {width: 100%;}
  .page-id-6 .table dl dt, .page-id-2442 .table dl dt, .page-id-6 .table dl dd, .page-id-2442 .table dl dd {width: 100%; display: block; text-align: left;}
  footer#footer .f_right p {margin: 0 0.5em;}
  .header-content {margin: -200px auto auto; width: 100%;}
  .header-content p {font-size: 3.5vw;}
  .header-content .info {bottom: 15%;}
  .frame {max-height: 230px; margin: 0 auto auto;}
  div.header-title .catchphrase {width: 95%;}
  div.header-title .catchphrase p {font-size: 0.7rem;}
  footer#footer .f_inner {width: 100%;}
}