@charset "utf-8";


/* ------------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
------------------------------------------------------------------------------------ */
@font-face {
    font-family: 'design_plus';
    src: url('../fonts/design_plus.eot');
    src: url('../fonts/design_plus.eot') format('embedded-opentype'),
         url('../fonts/design_plus.woff') format('woff'),
         url('../fonts/design_plus.ttf') format('truetype'),
         url('../fonts/design_plus.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}

.att {
padding-left: 1em;
text-indent: -1em;
margin-bottom:10px;
}

/*画像左右
---------------------------------------------------------------------------*/
img {
    max-width: 100%;
    height: auto;
}


.imgR {
	float:right;
	margin: 0 0 0.5em 0.5em;
        width: 35%;
}

.imgL {
	float:left;
	margin:0.5em 0.5em 0 0;
	width: 35%;

}

.imgL2 {
	float:left;
	margin:0.5em 0.5em 0 0;
	width: 35%;

}

/*================================================
 * g01
 ================================================*/
.g01  { margin-bottom:50px; }
 
 
.g01 th  { width: 30%; text-align: left; }

.g01 td  {padding: 1em; }
 
@media only screen and (max-width:480px){
    .g01 { margin: 0 -10px; }
    .g01 th,
    .g01 td{
    width: 100%;
    display: block;
    border-top: none;
    }
    
  .g01 tr:first-child th { border-top: 1px solid #ddd; }
}


.readon a{
float:right;
display:block;
padding-left:22px;
padding-right:5px;
background:url(../images/bullet.png) no-repeat 0 50%;
text-decoration:none;
}

.readon a:hover{
background-position:5px 50%;
color:#ff8000;
}


/*================================================
 * ひとつ前に戻る
 ================================================*/
.prev{
  text-align: right;
  margin-top: 20px;
  margin-bottom: 20px;
}

.prev a:hover{
  color: #ff8000;
  text-decoration: underline;
}


/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video
 { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
audio, canvas, video { display:inline-block; max-width:100%; }
html { overflow-y:scroll; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; }
ul, ol { list-style:none; }
blockquote , q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content:none; }
a:focus { outline:none; }
ins { text-decoration:none; }
mark { font-style:italic; font-weight:bold; }
del { text-decoration:line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
button, input, select, textarea { outline:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box; font-size:100%; }
input, textarea { background-image:-webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); -webkit-appearance:none; border-radius:0; /* Removing the inner shadow, rounded corners on iOS inputs */ }
input[type="checkbox"]{ -webkit-appearance:checkbox; }
input[type="radio"]{ -webkit-appearance:radio; }
button::-moz-focus-inner, input::-moz-focus-inner { border:0; padding:0; }
img { -ms-interpolation-mode:bicubic; }


blockquote {
  margin-bottom: 1em;
  padding: 1em;
  border: 1px dotted #ddd;
  font-size: 25px;
  background: #f5f5f5;
  text-align: center;
  color: #fff!important;
}

video{
  background: #000000;
}



/* clearfix */
.clearfix:after { content:"."; display:block; clear:both; height:0; font-size:0.1em; line-height:0; visibility:hidden; overflow:hidden; }
.clearfix { display:inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height:1% }
.clearfix { display:block; }
/* end MacIE5 */


.rich_font { font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: normal; font-weight:400; }




  .index_box_list .link:hover,  .link a:hover,.pc #global_menu ul ul a:hover, .news_list .category a:hover, .work_list .category a:hover, .blog_list .category a:hover, #related_post .headline, #comment_headline, .side_headline,
  .mobile a.menu_button:hover, .mobile #global_menu li a:hover, .index_archive_link:hover, .mobile #footer_social_link
    { background-color:#ccc !important; }




.font_type1 { font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: normal; }
.font_type2 { font-family: "Segoe UI", Arial, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; font-weight: 400; }
.font_type3 { font-weight:500; font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }



a { color:#333; text-decoration:none; }
a, a:before, a:after, input {
  -webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color, color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
strong {
	font-weight: normal;
  }


#related_post li a.image img, .styled_post_list1 .image img, .work_list_widget .image img, .work_list .box .image img, .blog_list .box .image img {
  -webkit-transition: all 0.75s ease; -moz-transition: all 0.75s ease; transition: all 0.75s ease;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
}
#related_post li a.image:hover img, .styled_post_list1 .image:hover img, .work_list_widget .image:hover img, .work_list .box .image:hover img, .blog_list .box .image:hover img {
  -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}

.br-sm{display:none;font-size: 100%;}

/* Opening
-----------------------------------------*/
.Opening {
position:relative;
background-color: #FFF;
  width: 100%;
}
.Opening ul li{
  position: relative;
  overflow: hidden;
  width: 100%;
  text-align: center;
}
.Opening ul li img.Opening__text{
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform:translate(-50%, -50%);
  z-index: 9;
}


.Opening ul li span img.Opening__img{
  max-width: inherit;
  width: 100%;
  height: auto;
}



/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { font-family:Arial,sans-serif; font-size:14px; color:#000; line-height:1; width:100%; min-width:1330px; background:#fff; }
a { color:#000; text-decoration:none; }
a, a .caption, input {
  -webkit-transition-property:background-color, color, border-color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, color, border-color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -ms-transition-property:background-color, color, border-color; -ms-transition-duration:0.2s; -ms-transition-timing-function:ease;
  -o-transition-property:background-color, color, border-color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, color, border-color; transition-duration:0.2s; transition-timing-function:ease;
}
a:hover { color:#ff8000; text-decoration:none; }
.clear { clear:both; }
.hide { display:none; }

/* レイアウト */

#main_contents { width:100%; position:relative; }
#main_col {
  max-width:1200px; margin:50px auto 150px; padding:0;
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}




.l-inner { position: relative; width: 90.71875%; max-width: 1200px; margin-right: auto; margin-left: auto; }

.l-inner a { color:#000; text-decoration:underline; }

.l-inner a:hover { color:#000; text-decoration:none; }


@media only screen and (max-width: 991px) { .l-inner { -webkit-box-sizing: border-box; box-sizing: border-box; width: 88.88889%; } }

@media only screen and (max-width: 767px) { .l-inner { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; padding: 0 20px; } }





.l-inner--narrow { width: 79.64602%; max-width: 900px; }

@media only screen and (max-width:1329px) {
  body { min-width:300px; }

  #main_col, .inner { width:90.22556%; /* 1200/1330 */ }
}

@media only screen and (max-width:991px) {
  body { font-size:12px; }

  #main_col, .inner { width:initial; padding:0 20px; }
  #main_col { /*margin:30px 0 33px;*/ margin:16px 0 33px; }

}

.logo_image {
	margin-bottom: 16px;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
}


.pcdis {
	display: block !important;
}
.spdis { display: none !important; }
@media only screen and (max-width:1015px) {
  .pcdis { display: none !important; }
  
  .spdis { display: block !important; }
	
	}

/* -------------------------------------------------------------------------------- web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
-------------------------------------------------------------------------------- */
@font-face { font-family: "design_plus"; src: url("assets/fonts/design_plus.eot?v=1.0"); src: url("assets/fonts/design_plus.eot?v=1.0#iefix") format("embedded-opentype"), url("assets/fonts/design_plus.woff?v=1.0") format("woff"), url("assets/fonts/design_plus.ttf?v=1.0") format("truetype"), url("assets/fonts/design_plus.svg?v=1.0#design_plus") format("svg"); font-weight: normal; font-style: normal; }
/* keyframes */
@-webkit-keyframes fadeIn { from { opacity: 0; }
  to { opacity: 1; } }
@keyframes fadeIn { from { opacity: 0; }
  to { opacity: 1; } }
@-webkit-keyframes fadeOut { from { visibility: visible; opacity: 1; }
  to { visibility: hidden; opacity: 0; } }
@keyframes fadeOut { from { visibility: visible; opacity: 1; }
  to { visibility: hidden; opacity: 0; } }
@-webkit-keyframes slideDown { 0% { top: -100%; }
  100% { top: 0; } }
@keyframes slideDown { 0% { top: -100%; }
  100% { top: 0; } }
@-webkit-keyframes slideD { 0% { top: -100%; }
  100% { top: 0; } }
@keyframes slideD { 0% { top: -100%; }
  100% { top: 0; } }
@-webkit-keyframes slideUp { 0% { bottom: -100%; }
  100% { bottom: 0; } }
@keyframes slideUp { 0% { bottom: -100%; }
  100% { bottom: 0; } }
@-webkit-keyframes fadeInUp { from { opacity: 0; -webkit-transform: translateY(50%); }
  to { opacity: 1; -webkit-transform: translateY(0); } }
@keyframes fadeInUp { from { opacity: 0; transform: translateY(50%); }
  to { opacity: 1; transform: translateY(0); } }
/* ========================================================================== Layout ========================================================================== */


/* ----------------------------------------------------------------------
アニメーション
---------------------------------------------------------------------- */


/* アーカイブページのアニメーション */
.pc.animation_element {
  opacity:0;
}
.pc.animation_element.active {
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-animation: moveUp 0.65s ease forwards 0.5s;
  animation: moveUp 0.65s ease forwards 0.5s;
}
@-webkit-keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); opacity: 1; }
}
@keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }
}

/* トップページのアニメーション */
.pc .home .animation_element {
  opacity:0;
}
.pc .home .animation_element.active {
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-animation: moveUp 0.65s ease forwards 0.5s;
  animation: moveUp 0.65s ease forwards 0.5s;
}
.pc .home .animation_element.first {
  opacity:1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* ローディングアイコン */
#site_wrap { display:none; }
#site_loader_overlay {
  position: fixed; background:#fff; background:rgba(255,255,255,1);
	top:0px; left:0px; bottom:0px; right:0px;
	z-index: 99999; opacity:1;
	-webkit-transition: opacity 0.3s; transition: opacity 0.3s;
}
#site_loader_spinner {
  width:60px; height:60px; border-radius:100%; margin-top:-30px; margin-left:-30px;
  border:4px solid #ccc; border-top-color:#666; box-sizing:border-box;
  position:absolute; top:50%; left:50%;
  animation:loading 1.2s linear infinite;
  -webkit-animation:loading 1.2s linear infinite;
}
@keyframes loading{
  0% { transform:rotate(0deg); }
  100% { transform:rotate(360deg); }
}
@-webkit-keyframes loading{
  0% {-webkit-transform:rotate(0deg); }
  100% {-webkit-transform:rotate(360deg); }
}



/* ----------------------------------------------------------------------
アニメーションここまで
---------------------------------------------------------------------- */


/* ----------------------------------------------------------------------
ページ上部へ戻るボタン
---------------------------------------------------------------------- */
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
   z-index: 999; /* これでどうですか？ */

}
 
#pageTop i {
  padding-top: 6px
}
 
#pageTop a { display:block; height:60px; width:60px; line-height:60px; text-decoration:none; background:rgba(0,0,0,0.2); z-index:100; position:relative; }
#pageTop span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; } 
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}
#pageTop a:before {
  font-family:'design_plus'; color:#fff; font-size:14px; display:block; position:absolute; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#pageTop a:before { content:'\e911'; left:24px; top:2px; }
#pageTop.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
/* ----------------------------------------------------------------------
ページ上部へ戻るボタンここまで
---------------------------------------------------------------------- */



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

.l-header { background: rgba(0, 67, 83, 0.8); height: 70px; line-height: 70px; width: 100%; position: absolute; top: -70px; z-index: 999; -webkit-animation: slideDown 1.5s ease-in-out 0s forwards; animation: slideDown 1.5s ease-in-out 0s forwards; }

.l-header--fixed { position: fixed; left: 0; }

.l-header__inner { box-sizing: border-box; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-left: auto; margin-right: auto; position: relative; width: 89.84375%; max-width: 1150px; height: 100%; }

.l-header__logo { margin-bottom: 0; }
.l-header__logo a { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; -ms-grid-row-align: center; align-items: center; line-height: 1; overflow: hidden; word-wrap: break-word; }

.l-header__logo--text a { width: 200px; }

@media only screen and (max-width: 1024px) { .l-header { height: 60px; line-height: 60px; }
  .l-header__inner { display: block; margin: 0; width: 100%; height: 100%; max-width: none; }
  .l-header__logo { padding-left: 5.55556%; } }
@media only screen and (max-width: 767px) { .l-header { top: 0; -webkit-animation: none; animation: none; }
  .l-header__inner { width: 100%; }
  .l-header__logo { padding-left: 20px; } }

.c-logo { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; height: 100%; }
.c-logo a { text-align: center; }
.c-logo img { vertical-align: middle; }

.c-logo--retina img { width: 82%; }

@media only screen and (max-width: 767px) { .c-meta-box { background: none; margin-bottom: 10px; padding: 0; }
  .c-meta-box__item { border-right: 0; float: none; margin-bottom: 20px; } }
.c-menu-button { color: #fff; display: none; position: absolute; top: 0; right: 0; text-align: center; }
.c-menu-button::before { content: "\f0c9"; font-family: "design_plus"; font-size: 18px; }

@media only screen and (max-width: 1024px) { .c-menu-button { display: block; } }



/* global-nav ----------------------------------------------------------------- */
.p-global-nav { font-size: 16px; margin: 0; padding: 0; }
.p-global-nav li { list-style: none; }
.p-global-nav a { color: #fff; display: block; }
.p-global-nav > li { float: left; }
.p-global-nav > li.menu-item-has-children:hover > .sub-menu { top: 100%; }
.p-global-nav > li > a { padding-left: 18px; padding-right: 18px; }
.p-global-nav > li > .sub-menu { top: 125%; left: 0; }
.p-global-nav .menu-item-has-children { position: relative; }
.p-global-nav .menu-item-has-children:hover > .sub-menu { opacity: 1; top: 0; visibility: visible; }
.p-global-nav .sub-menu { line-height: 1.2; opacity: 0; padding: 0; position: absolute; top: 25%; left: 100%; transition: 0.3s; visibility: hidden; z-index: 99; }
.p-global-nav .sub-menu .menu-item-has-children > a { position: relative; }
.p-global-nav .sub-menu .menu-item-has-children > a::after { content: "\e910"; font-family: "design_plus"; position: absolute; right: 16px; }/* サブメニューの矢印アイコン＞ ---------------- */
.p-global-nav .sub-menu a { background: #222; box-sizing: border-box; padding: 16px 22px; width: 210px; }/* サブメニューのバックカラー ---------------- */
.p-global-nav .sub-menu a:hover { background: #ccc; }/* サブメニューのオーバーカラー ---------------- */

@media only screen and (max-width: 1024px) { 
.p-global-nav { background: #222; display: none; position: absolute; top: 60px; left: 0; z-index: 99; width: 100%; }
  .l-header--fixed .p-global-nav { position: static; max-height: -webkit-calc(100vh - 60px); max-height: calc(100vh - 60px); overflow: auto; }
  .p-global-nav > li { float: none; }
  .p-global-nav > li > a { padding: 0 5.55556%; }
  .p-global-nav > li > a:hover { color: #fff; }
  .p-global-nav li { width: 100%; }
  .p-global-nav li.current-menu-item a { color: #fff; }
  .p-global-nav .menu-item-has-children > a > span.is-active::before { content: "-"; }
  .p-global-nav .menu-item-has-children > a > span::before { border: 1px solid #555; border-radius: 100%; color: #aaa; content: "+"; line-height: 24px; display: block; margin: auto; position: absolute; top: 0; right: 17px; bottom: 0; text-align: center; width: 24px; height: 24px; }
  .p-global-nav .sub-menu { display: none; opacity: 1; position: static; visibility: visible; width: 100%; transition-property: none; }
  .p-global-nav .sub-menu li { box-sizing: border-box; }
  .p-global-nav .sub-menu .menu-item-has-children > a::after { content: ""; }
  .p-global-nav .sub-menu a { background: #666; height: 50px; line-height: 50px; padding: 0 5.55556%; width: 100%; }/* スマホ2階層目のサブメニューのバックカラー ---------------- */
  .p-global-nav .sub-menu a:hover { background: #666; }/* スマホ2階層目のサブメニューのオーバーカラー ---------------- */
  .p-global-nav .sub-menu ul a { background: #999; }/* スマホ3階層目のサブメニューのバックカラー ---------------- */
  .p-global-nav .sub-menu ul a:hover { background: #999; }/* スマホ3階層目のサブメニューのバックカラー ---------------- */
  .p-global-nav a { color: #fff !important; box-sizing: border-box; font-size: 13px; height: 50px; line-height: 50px; position: relative; } }
@media only screen and (max-width: 767px) { 
.p-global-nav > li > a { padding: 0 20px; }
  .p-global-nav .sub-menu a { padding: 0 20px; } }
  
  
.p-headline { background: #222; box-sizing: border-box; color: #fff; font-size: 16px; height: 50px; line-height: 50px; margin-bottom: 4.79452%; padding-left: 24px; padding-right: 24px; }


@media only screen and (max-width: 767px) { .p-headline { margin-bottom: 6.25%; } }

.p-hero-header { position: relative; width: 100%; height: 100vh; overflow: hidden; }
.p-hero-header .slick-arrow { width: 40px; height: 40px; bottom: 0; top: 0; margin: auto; -webkit-transform: none; -ms-transform: none; transform: none; z-index: 9; }
.p-hero-header .slick-arrow::before { font-size: 14px; font-family: "design_plus"; }
.p-hero-header .slick-prev { left: 0; }
.p-hero-header .slick-prev::before { content: "\e90f"; }
.p-hero-header .slick-next { right: 0; }
.p-hero-header .slick-next::before { content: "\e910"; }

.p-hero-header__nav { background: transparent; width: 100%; height: 100%; position: relative; z-index: 9; margin-bottom: 0; }

.p-hero-header__nav-item { box-sizing: border-box; border-right: 1px solid rgba(255, 255, 255, 0.3); float: left; list-style: none; width: 25%; height: 100%; }
.p-hero-header__nav-item a { display: block; text-align: center; position: relative; width: 100%; height: 100%; }
.p-hero-header__nav-item a:hover .p-hero-header__nav-item-title { opacity: 1; }
.p-hero-header__nav-item:last-child { border-right: 0; }

.p-hero-header__nav-item-title { color: #fff; font-size: 30px; position: absolute; left: 0; bottom: 120px; width: 100%; transition: opacity 0.65s ease-out; opacity: 0; }

.p-hero-header__content { background-position: center center; background-size: cover; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; }

.p-hero-header__content-video { background: #222; width: 100%; height: 100%; overflow: hidden; position: absolute; }
.p-hero-header__content-video video { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: 100%; width: auto; }

.p-hero-header__content-youtube { width: 100%; height: 100%; overflow: hidden; position: absolute; }
.p-hero-header__content-youtube iframe { width: 100%; height: 100%; }

.p-hero-header__link { box-sizing: border-box; color: #fff; display: inline-block; padding: 0 10px; min-width: 220px; height: 50px; line-height: 50px; font-size: 14px; position: absolute; bottom: -100%; right: 0; text-align: center; z-index: 9; }
.p-hero-header__link::after { content: "\e90e"; font-family: "design_plus"; margin-left: 10px; }

.p-hero-header__slider-item { background-size: cover; background-repeat: no-repeat; background-position: center center; height: calc(100vh); }
.p-hero-header__slider-item a { display: block; width: 100%; height: 100%; position: relative; }

.p-hero-header__slider-item-title { font-size: 30px !important; color: #fff; position: absolute; bottom: 40px; width: 100%; text-align: center; }

@media only screen and (max-width: 991px) {
	 .p-hero-header__link { display: none; }
  .p-hero-header__slider-item-title { bottom: 81px; } }

@media only screen and (max-width: 767px) { 
.p-hero-header { height: calc(100vh - 60px); }
  .p-hero-header__slider-item { height: calc(100vh - 60px); } }

.p-menu-button { line-height: 60px; width: 60px; height: 60px; }
.p-menu-button.is-active { background: #222; }


.p-page-header { background-attachment: fixed; background-color: #f6f6f6; background-repeat: no-repeat; background-position: center top; background-size: 100% auto; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; -ms-grid-row-align: center; align-items: center; width: 100%; height: 600px; position: relative; }

.p-page-header__inner { height: 200px; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; }

.p-page-header__title { background: #222; color: #fff; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; -ms-grid-row-align: center; align-items: center; justify-content: center; font-size: 28px; line-height: 1.5; width: 200px; height: 200px; margin-bottom: 0; font-weight: 700; }

@media only screen and (max-width: 1449px) { .p-page-header { height: auto; padding-bottom: 41.37931%; } }
@media only screen and (max-width: 767px) { .p-page-header { background-size: cover; background-attachment: scroll; padding-bottom: 0; height: 240px; }
  .p-page-header__inner { height: auto; position: static; }
  .p-page-header__title { font-size: 16px !important; width: 110px; height: 110px; } }



.l-header { background: rgba(21,41,61,0.5); }/* ヘッダーフレームのバックカラー ---------------- */
.l-header__logo a, .p-global-nav > li > a, .c-menu-button { color: #ffffff; }
.l-header__logo a:hover, .p-global-nav > li > a:hover { color: #ccc; }/* メニューの親オーバーカラー ---------------- */
.l-header { -webkit-animation: slideDown 1.5s ease-in-out 0s forwards; animation: slideDown 1.5s ease-in-out 0s forwards;
}
.p-hero-header__link { -webkit-animation: slideUp 1.5s ease-in-out 0s forwards; animation: slideUp 1.5s ease-in-out 0s forwards; }


/*------------------------------------------------------------------------スマホ用*/
@media only screen and (max-width: 767px) { 
/*ロゴのサイズ調整*/
 .c-logo--retina img { width:58%; }


}






/* ----------------------------------------------------------------------
 ヘッダーここまで
---------------------------------------------------------------------- */










/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
#footer {
	width: 100%;
	min-width: 1250px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #1b2b3f;
}
#footer_inner { width:1250px; margin:0 auto; padding:60px 0 25px 0; }
#footer_bottom { width:100%; min-width:1250px; background:#1b2b3f;}
#footer_bottom_inner { width:1250px; margin:0 auto; position:relative; }

/* フッターサイト名 */
#footer_logo { font-size:40px; font-weight:300; text-align:center; margin:0 0 10px 0; }
#footer_logo a { color:#333; }
#footer_logo img { width:500px; }

/* フッターウィジェット */
.footer_contents { margin:0; font-size:12px; line-height:2; text-align:center; }
.footer_contents a { color:#333; }
.footer_widget { display:inline-block; width:300px; margin:0 10px 20px 10px; vertical-align:top; text-align:left; color:#333; }
.footer_headline { font-size:16px; font-weight:700; margin:0 0 6px 0; color:#714b5c; }
.footer_headline a { color:#714b5c; }

.footer_widget.widget_nav_menu { width:150px; margin:0 5px 20px 5px; }
.footer_widget.widget_nav_menu .sub-menu { margin-left:0.66em; }

.footer_widget .collapse_category_list li a { color:#333; }
.footer_widget .collapse_category_list li a:hover { color:#714b5c; background-color:transparent; }

.footer_widget.tcdw_menu_widget .menu li a { color:#333; }
.footer_widget.tcdw_menu_widget .menu li a:hover { color:#714b5c; background-color:transparent; }

/* ソーシャルボタン */
#footer_social_link { margin:30px 0 20px 0; text-align:center; }
#footer_social_link li { display:inline-block; margin:0 4px; padding:0; position:relative; }
#footer_social_link li a { display:block; overflow:hidden; width:28px; height:28px; background:#fff; border-radius:50%; }
#footer_social_link li a span {
  font-family:'design_plus'; color:#000; font-size:14px; position:absolute; top:7px; left:7px;
  display:block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link .f_facebook:before { content:'\e902'; }
#footer_social_link .f_twitter:before { content:'\e904'; }
#footer_social_link .f_instagram:before{ content:'\ea92'; }
#footer_social_link .f_rss:before { content:'\e90b'; }


#footer_social_link li a:hover, #footer_social_link li.twitter a:hover, #footer_social_link li.facebook a:hover, #footer_social_link li.rss a:hover { background-color:#aaa; }

/* フッター会社名 */
#footer_company_name { margin:0 0 15px 0; font-size:14px; text-align:center; }
#footer_company_address { margin:0 0 15px 0; font-size:14px; text-align:center; color:#fff; }
#footer_company_name a, #footer_company_address a { color:#fff; }

/* コピーライト */
#copyright { padding:16px 0; font-size:11px; text-align:center; color:#fff; }
#copyright a { color:#fff; }





@media screen and (max-width:1249px) {

/* レイアウト */
body { width:100%; min-width:initial; }

#footer { width:100%; min-width:initial; }
#footer_inner { width:100%; max-width:1250px; }
#footer_bottom { width:100%; min-width:initial; }
#footer_bottom_inner { width:100%; max-width:1250px; }




} /* max-width:1249px */

@media screen and (max-width:768px) {


#footer_inner { width:auto; margin:0 auto; padding:30px 0 15px 0; }
#footer_bottom { width:auto; min-width:100%; }
#footer_bottom_inner { width:auto; }





/* フッターサイト名 */
#footer_logo { color:#fff; font-size:30px; text-align:center; margin:0 0 30px 0; }
#footer_logo img { display:block; margin:0 auto; padding:0 20px; max-width:100%; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }

/* フッターウィジェット */
.footer_contents { padding:0 20px; }




} /* max-width:768px */



@media screen and (max-width:480px) {


/* フッターウィジェット */
.footer_contents { text-align:left; }
.footer_widget { display:block; width:100%; margin:0 0 20px 0; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.footer_widget.widget_nav_menu { display:inline-block; width:48%; margin:0 0.5% 20px 0.5%; }

} /* max-width:480px */

/* ----------------------------------------------------------------------
 フッターここまで
---------------------------------------------------------------------- */


/* ----------------------------------------------------------------------
  videoバナー
---------------------------------------------------------------------- */
/* videoバナー */
#video_wrap {
	width: 100%;
	position: relative;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 60px;
	margin-left: auto;
}

.caption .headline { font-size:78px;  color:#fff }
.caption .catchphrase { font-size:40px; color:#fff }
.button {
	background-color: rgba(255,128,0,1);
	color: #fff;
	border: 1px solid #fff;
	
}
.button:hover { background-color:rgba(0,0,0,1.0); color:#FFFFFF; border-color:#000000; }

@media screen and (max-width:991px) {
.caption .headline { font-size:24px; }
.caption .catchphrase { font-size:14px; }
}

/* videoバナーキャプション */
.catchphrase { margin-bottom: 8px; }
/*videoバナーテキストの位置------------------- */
.caption {
	position: absolute;
	text-align: center;/*caption位置*/
	width: 100%;
	top: 55%;
	left: 0;
	right: 0;
	z-index: 3;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	margin-right: auto;
	margin-left: auto;
}
.caption h2 { line-height:1.5; }
.caption h3 { line-height:1.5; }
.caption .button {
	display: inline-block;
	margin: 15px 0 0 0;
	padding: 0 25px;
	min-width: 170px;
	height: 45px;
	line-height: 45px;
	font-size: 20px;
	text-decoration: none;
	border: 1px solid transparent;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition-property: background-color, color, border-color;
	-webkit-transition-duration: 0.2s;
	-webkit-transition-timing-function: ease;
	-moz-transition-property: background-color, color, border-color;
	-moz-transition-duration: 0.2s;
	-moz-transition-timing-function: ease;
	-ms-transition-property: background-color, color, border-color;
	-ms-transition-duration: 0.2s;
	-ms-transition-timing-function: ease;
	-o-transition-property: background-color, color, border-color;
	-o-transition-duration: 0.2s;
	-o-transition-timing-function: ease;
	transition-property: background-color, color, border-color;
	transition-duration: 0.2s;
	transition-timing-function: ease;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-align: center;
}
/* videoバナーのアニメーション */
.caption > :nth-child(-n+3) {
  opacity:0;
}
.caption > :nth-child(1) {
  -webkit-animation:opacityAnimation 1.0s ease forwards 1.0s; animation:opacityAnimation 1.0s ease forwards 1.0s;

}
.caption > :nth-child(2) {
  -webkit-animation:opacityAnimation 1.0s ease forwards 2.0s; animation:opacityAnimation 1.0s ease forwards 2.0s;
}
.caption > :nth-child(3) {
  -webkit-animation:opacityAnimation 1.0s ease forwards 3.0s; animation:opacityAnimation 1.0s ease forwards 3.0s;
}
 .caption > :nth-child(1) {
  -webkit-animation:opacityAnimation 1.0s ease forwards 2.0s !important; animation:opacityAnimation 1.0s ease forwards 2.0s !important;
}
.caption > :nth-child(2) {
  -webkit-animation:opacityAnimation 1.0s ease forwards 3.0s !important; animation:opacityAnimation 1.0s ease forwards 3.0s !important;
}
.caption > :nth-child(3) {
  -webkit-animation:opacityAnimation 1.0s ease forwards 4.0s !important; animation:opacityAnimation 1.0s ease forwards 4.0s !important;
}
@-webkit-keyframes opacityAnimation {
  0% { opacity:0; -webkit-transform:translateY(30px); transform:translateY(30px); }
  100% { opacity:1; -webkit-transform:translateY(0); transform:translateY(0); }
}
@keyframes opacityAnimation {
  0% { opacity:0; -webkit-transform:translateY(30px); transform:translateY(30px); }
  100% { opacity:1; -webkit-transform:translateY(0); transform:translateY(0); }}
  
  



@media only screen and (max-width:991px) {


.caption .button { margin-top:2px; }

.caption {
	position: absolute;
	text-align: center;
	margin-top: 0%;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
}
 
 
}
/* ----------------------------------------------------------------------
 videoバナーここまで
---------------------------------------------------------------------- */





/* ----------------------------------------------------------------------
content_slider
---------------------------------------------------------------------- */


.content_slider {
	margin-bottom: 90px;
}
.content_slider .slick-dots { bottom: 8px; }
.content_slider .slick-dots li { background: #000; }

.content_slider__catch { font-size: 40px; line-height: 1.4; margin-bottom: 15px; text-align: center; }

.content_slider__summary { font-size: 16px; line-height: 2.2; margin-bottom: 90px; text-align: center; }

.content_slider__carousel { padding-bottom: 70px; }
.content_slider__carousel.slick-slider { margin-bottom: 40px; }
.content_slider__carousel img { width: 100%; height: auto; }

.content_slider__desc { columns: 2; column-gap: 60px; font-size: 14px; line-height: 2.4; }
.content_slider__desc.content_slider__desc--full { columns: 1; }

.p-hover-effect--type3:hover img { opacity: 0.5; }
.p-hover-effect--type3 img { transition-property: opacity; transition: 0.5s; background: #fff; }

.slick-dots li:last-child { margin-right: 0; }
.slick-dots li.slick-active, .slick-dots li:hover { background: #879aa3; }

.slick-dots li button { width: 12px; height: 12px; }
.slick-dots li button::before { content: ""; }


@media only screen and (max-width:991px) {
  .content_slider__catch {
    font-size: 30px!important
  }
  .content_slider__summary {
    font-size: 14px!important
  }
}




@media only screen and (max-width:767px) {
  .content_slider {
    padding-top: 24.4px;
    padding-bottom: 24px
  }
  .content_slider .slick-dots {
    margin-top: 10px;
    position: static
  }
  .content_slider__catch {
    font-size: 25px!important;
    margin-bottom: 6.4px
  }
  .content_slider__desc, .content_slider__desc p {
    font-size: 14px!important
  }
  .content_slider__summary {
    line-height: 2;
    margin-bottom: 24px
  }
  .content_slider__carousel {
    padding-bottom: 0
  }
  .content_slider__carousel.slick-slider {
    margin-bottom: 23px
  }
  .content_slider__desc {
    columns: 1;
    line-height: 2
  }
 
}






/* ----------------------------------------------------------------------
content_sliderここまで
---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
p-showcase
---------------------------------------------------------------------- */
.p-showcase {
	color: #000;
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 580px;
  margin-bottom: 60px;
    margin-top: 60px;
}
.p-showcase::before { box-sizing: border-box; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.p-showcase--reverse .p-showcase__content { right: 0; }
.p-showcase--reverse .p-showcase__image { left: 0; }

.p-showcase__inner { height: 100%; opacity: 0; transition-property: opacity; transform: translateY(10%); }
.p-showcase__inner.is-active { opacity: 1; transform: translateY(0); transition: 0.5s; transition-delay: 0.5s; }

.p-showcase__content { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 46.0177%; }

.p-showcase__catch { font: 14px/2 "メイリオ",Verdana, "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, Meiryo, sans-serif; font-size: 40px; line-height: 1.4; margin-bottom: 15px; }

.p-showcase__desc { font-size: 20px; line-height: 2.2; margin-bottom: 15px; }

.p-showcase__image {
	position: absolute;
	right: 0;
	width: 50%;
	margin-top: 20px;
}
.p-showcase__image img { width: 100%; height: auto; }



.p-showcase-l-inner { margin-left: auto; margin-right: auto; position: relative; width: 88.28125%; max-width: 1130px; }


.p-button {
	border-radius: 4px;
	box-sizing: border-box;
	display: inline-block;
	font-size: 16px;
	line-height: 30px;
	text-align: center;
	min-width: 220px;
	height: 30px;
	padding: 0 10px;
	font-weight: bold;
	background-color: #ff8000;
	color: #fff;

}
.p-button:hover { background: #000; color: #fff; }

@media only screen and (max-width:991px) {
  .p-showcase__content {
    width: 56%;
  }
  .p-showcase__catch {
    font-size: 30px!important;
  }
  .p-showcase__desc {
    font-size: 18px!important;
  }
  .p-showcase__image {
    width: 40%;
  }
}

@media only screen and (max-width:767px) {
  .p-showcase__inner {
    box-sizing: border-box;
    padding-top: 30px;
    text-align: center;
  }
  .p-showcase__content {
    position: relative;
    position: static;
    -webkit-transform: none;
    transform: none;
    width: 100%
  }
  .p-showcase__catch {
    font-size: 20px!important;
    margin-bottom: 10px
  }
  .p-showcase__desc {
    font-size: 18px!important;
    line-height: 2;
    margin-bottom: 14px
  }
  .p-showcase__action {
    margin-bottom: 28px
  }
  .p-showcase__image {
    left: 0;
    margin: auto;
    -webkit-transform: none;
    transform: none;
    width: auto;
    height: 40%
  }
  .p-showcase__image img {
    width: auto;
    height: 100%
  }
 
}

.bg_phot00{
  background-image: url(../images/haikei-0.jpg);
} 
 
.bg_phot01{
  -webkit-clip-path: polygon(0 0, 100% 30%, 100% 70%, 0 100%);
  clip-path: polygon(0 0, 100% 32%, 100% 76%, 0 100%);
  background: url(../images/bg-red.jpg);
  padding: 50px 0;
}

.bg_phot02{
  background-image: url(../images/haikei-2.jpg);
}

.bg_phot03{
  background-image: url(../images/haikei-3.jpg);
}

.bg_phot04{
  -webkit-clip-path: polygon(0 0, 100% 30%, 100% 70%, 0 100%);
clip-path: polygon(0 23%, 100% 0, 99% 79%, 0 65%);
  background: url(../images/bg-blue.jpg);
  padding: 200px 0;

}
 
/* ----------------------------------------------------------------------
p-showcaseここまで
---------------------------------------------------------------------- */ 
 
 
/* ----------------------------------------------------------------------
index_box_list
---------------------------------------------------------------------- */ 

.index_box_list {
	display: flex;
	display: -webkit-flex;
	display: -ms-flexbox;/*--- IE10 ---*/
	padding-top: 10px;
	padding-right: 0;
	padding-bottom: 20px;
	padding-left: 0;
}
.index_box_list .box { width:362px; margin:0 57px 0 0; padding:0 0 75px 0; position:relative; }
.index_box_list .box.box3 { margin:0; }
.index_box_list .image {
	width: 90%;
	height: auto;
	display: block;
	overflow: hidden;
	border-radius: 5%;
	margin-bottom: 15px;
	margin-right: auto;
	margin-left: auto;

	
}


.index_box_list .image img {
  width:100%; height:auto; display:block;
    -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
}
.index_box_list .image a:hover img {
 -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
 

 
}
.index_box_list .headline {
	font-size: 30px;
	font-weight: 600;
	color: #000;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 15px;
	margin-left: auto;
	text-align: center;
}
.index_box_list .desc {
	font-size: 16px;
	margin: 0;
	line-height: 180%;
}
.index_box_list .link {
	background: #000;
	border-radius: 5%;
	color: #fff;
	text-decoration: none;
	display: block;
	width: 135px;
	height: 40px;
	line-height: 35px;
	text-align: center;
	font-size: 16px;
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	margin-top: 0;
	margin-bottom: 0;
	margin-right: auto;
	margin-left: auto;
}


.index_box_list .link:after {
  font-family:'design_plus'; content:'\e910'; font-size:17px; color:#fff; display:inline-block; padding-left:10px; position:relative; top:2px; 
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
index_box_list link a:hover {
		background: #fff;
 
}
@media screen and (max-width:770px) {

/* コンテンツ１ */
.index_box_list {
	display: block;
	margin-bottom: 60px;
	padding-top: 40px;
	padding-right: 0;
	padding-bottom: 0;
	padding-left: 0;
}
.index_box_list .box {
  width:100%; float:none; margin:0 0 30px 0; padding:0 20px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.index_box_list .image {
  width:40%; float:left; margin:0 15px 0 0;
  width:-webkit-calc(40% - 15px); width:-moz-calc(40% - 15px); width:calc(40% - 15px);
}


.index_box_list .info {
  width:60%; float:left; padding:0 0 0 15px; position:relative; 
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.index_box_list .headline { font-size:24px; margin:0 0 20px; text-align: center; }
.index_box_list .desc { margin:0 0 20px; font-size:14px; line-height: 200%;}
.index_box_list .link { position:relative; margin:0; right:0; left:0; bottom:auto; width:140px; height:40px; line-height:40px; font-size:14px; }
.index_box_list .link:after { font-size:13px; }

@media screen and (max-width:550px) {
  .index_box_list .box { margin:0; }
  .index_box_list .image {
	width: 95%;
	float: none;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
}


  .index_box_list .info { width:100%; float:none; padding:0; position:relative;  }
  .index_box_list .link { margin:0 auto 30px; }
  .index_box_list .box3 .link { margin-bottom:0; }
  .index_box_list .desc { font-size:14px; }
}

}
/* ----------------------------------------------------------------------
index_box_listここまで
---------------------------------------------------------------------- */

 /* ----------------------------------------------------------------------
midashi
---------------------------------------------------------------------- */
#index_midashi {
	width: 1250px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 0px;
	padding-right: 25px;
	padding-bottom: 0;
	padding-left: 25px;
}

#index_midashi .catchphrase {
	position: relative;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0px;
	margin-left: 0;
}
#index_midashi .catchphrase .headline { font-size:40px; line-height:100%; margin:0 5px 0 0; display:inline-block; vertical-align:middle; }
#index_midashi .catchphrase .desc { font-size:14px; line-height:100%; margin:5px; display:inline-block; vertical-align:middle; }

@media only screen and (max-width:1024px) {

/* midashi　コンテンツ */
#index_midashi { width:100%; margin:0; padding:0; }
#index_midashi .catchphrase { margin:0; }
#index_midashi .catchphrase .headline { font-size:26px !important; margin-right:0; margin-bottom:4px; display:block; vertical-align:top; text-align:center; line-height:1.5; }
#index_midashi .catchphrase .desc { font-size:18px !important; display:block; vertical-align:top; text-align: left;line-height: 1.4;}
.br-sm{display:inline;font-size: 100%;}
}

 /* ----------------------------------------------------------------------
midashiここまで
---------------------------------------------------------------------- */



 /* ----------------------------------------------------------------------
index_blog_list
---------------------------------------------------------------------- */
#index_blog_list { margin:0 auto; width:calc(100% * 1150 / 1280); max-width:1150px;  }
#index_blog_list .blog_list { margin-bottom:70px; }

.blog_list { margin:0 auto 120px; 
	display:-webkit-box; display:-webkit-flex; display:-ms-flexbox; display:flex; 
	-webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
}
.blog_list .box {
  width:calc(100% * 360 / 1150); margin:0 calc(100% * 35 / 1150) 30px 0; background:#fff;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.blog_list .box:nth-child(3n) { margin-right:0; }
.blog_list .box .title { font-size:16px; line-height:1.8; padding:20px 0; }
.blog_list .box .title a { padding:0 20px; display:block; overflow:hidden; }
.blog_list .box .title a:hover { text-decoration:none; }
.blog_list .box .image { width:calc(100% + 2px); display:block; overflow:hidden; position:relative; z-index:2; }
.blog_list .box .image img {
  width:100%; height:auto; 
  -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none;
}
.blog_list .box .meta { padding:0 20px; line-height:30px; }
.blog_list .box .meta li { float:left; }
.blog_list .box .category { text-align:center; margin:0; }
.blog_list .box .category a { background:#000; color:#fff; text-decoration:none; font-size:12px; text-align:center; height:30px; line-height:30px; display:inline-block; padding:0 20px; border-radius:30px; }
.blog_list .box .category a:last-child { display:none; }
.blog_list .box .category a:only-child { display:inline-block; }
.blog_list .box .date { font-size:13x; color:#888; margin:0 15px 0; }

/* ブログ一覧 */
@media only screen and (max-width:991px) {
	.blog_list {
	  display: -webkit-box;
  	display: -webkit-flex;
  	display: -ms-flexbox;
  	display: flex;
		-webkit-flex-wrap: wrap;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
		-webkit-box-pack: justify;
  	-ms-flex-pack: justify;
  	justify-content: space-between;
	}
	.blog_list .box {
		margin-right: 0;
		width: calc((100% - 20px) / 2); 
	}
}
@media only screen and (max-width:767px){
#index_blog_list { margin:0 auto 20px; width:calc(100% - 40px); }
#index_blog_list .blog_list { display:block; }
.blog_list .box {
  float:none; display:inline-block; vertical-align:top; height:auto; margin:0 0 20px 0;
	width:100%;
}
.blog_list .box .date { margin-left:10px; font-size:10px; }
.blog_list .box:nth-child(3n) { margin-right:20px; }
.blog_list .box:nth-child(2n) { margin-right:0px; }
.blog_list .box .image { height:auto; }
.blog_list .box .title a { height:auto; overflow:none; }
.use_animation #index_blog_list .mobile_archive_link .index_archive_link { opacity:0; }
.use_animation #index_blog_list.animated .mobile_archive_link .index_archive_link {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.0s;
  animation: opacityAnimation 1.0s ease forwards 1.0s;
}
}

@media screen and (max-width:550px) {
  .blog_list { margin:0; }
  .blog_list .box { float:none; display:block; width:100%; height:auto; margin:0 0 20px 0; }
  .blog_list .box:nth-child(3n) { margin-right:0px; }
  .blog_list .box:nth-child(2n) { margin-right:0px; }
}

 /* ----------------------------------------------------------------------
index_blog_listここまで
---------------------------------------------------------------------- */





 /* ----------------------------------------------------------------------
index_news_list
---------------------------------------------------------------------- */

#index_news_list { width:calc(100% * 1150 / 1280); max-width:1150px; margin:0 auto 100px; overflow:hidden; }
.news_list li { border:1px solid #fff; margin:0 0 -1px 0; padding:0 25px; box-sizing:border-box; width:100%; overflow:hidden; }
.news_list li:hover { background:#eee; }
.news_list li:last-child { margin-bottom:0; }
.news_list .date { float:left; line-height:58px; font-weight:bold; margin:0 22px 0 0; font-size:16px; }
.news_list .category { float:left; margin:0 20px 0 0; line-height:58px; }
.news_list .category a { display:inline-block; height:30px; line-height:30px; color:#fff; font-size:12px; min-width:70px; text-align:center; padding:0 20px; border-radius:30px; text-decoration:none; }
.news_list .category a:hover { }
.news_list .title { float:left; font-size:16px; font-weight:normal; width:800px; }
.news_list .title a { display:block; line-height: 58px; height:58px; }
.news_list .title a:hover { text-decoration:none; }



@media only screen and (max-width:767px){
#index_news_list { width:auto; margin:0 auto 50px; padding:0 20px; }
#index_news_list .mobile_archive_link { margin-top:20px;}
.news_list li { padding:0 18px; }
.news_list .date { display:inline-block; float:none; margin:17px 10px 0 0; line-height:30px; }
.news_list .category { display:inline-block; float:none; margin:17px 20px 0 0; line-height:30px; }
.news_list .title { float:none; clear:both; display:block; line-height:1.6; width:auto; }
.news_list .title a { display:block; padding:0; }
.use_animation #index_news_list .mobile_archive_link .index_archive_link { opacity:0; }
.use_animation #index_news_list.animated .mobile_archive_link .index_archive_link {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.0s;
  animation: opacityAnimation 1.0s ease forwards 1.0s;
}
}

 /* ----------------------------------------------------------------------
index_news_listここまで
---------------------------------------------------------------------- */


 /* ----------------------------------------------------------------------
map
---------------------------------------------------------------------- */
#map01 {
	height: 500px;
}
#map02 {
	height: 500px;
}
#map03 {
	height: 500px;
}
#map04 {
	height: 500px;
	margin: 10px 0 0;
}
#map05 {
	height: 500px;
}
#map06 {
	height: 500px;
}
.rootMap05 {
	margin: 0 0 10px;
}
.rootMap05 li {
	float: left;
	margin: 0 10px 0 0;
	font-size: 16px;
}



.radiosaizu{
	margin-left: 5px;
	margin-right: 5px;
}



/* デフォルトのスタイルを削除
*****************************************/
.formStyle input,
.formStyle button,
.formStyle textarea,
.formStyle select {
	-moz-appearance: none;
	appearance: none;
	margin-top: 1em;
	margin-bottom: 20px;
}
.formStyle_inner {
	margin-right: 15px;
	margin-left: 15px;

}

label {
	margin-top: 1em;
}
/* テキストインプットとテキストエリアの基本装飾
*****************************************/
.formStyle input[type="text"],
.formStyle input[type="password"],
.formStyle textarea {
	padding: 0.8em;
	border: 1px solid #DDD;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	width: 300px;
}
.formStyle input[type="text"],
.formStyle input[type="password"] {
}
/* フォーカスした時のスタイルを変更
*****************************************/
.formStyle input[type="text"]:focus,
.formStyle input[type="password"]:focus,
.formStyle textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}
/* ボタンのスタイルを変更
*****************************************/
.formStyle button {
	border-radius: 0;
	background: -moz-linear-gradient(top, #FFF 0%, #EEE);
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
	border: 1px solid #DDD;
	color: #111;
	padding: 10px 30px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.formStyle button:hover {
	background: -moz-linear-gradient(top, #EFEFEF 0%, #EEE);
	background: -webkit-gradient(linear, left top, left bottom, from(#EFEFEF), to(#EEE));
}
 /* ----------------------------------------------------------------------
mapここまで
---------------------------------------------------------------------- */




 /* ----------------------------------------------------------------------
p-block03
---------------------------------------------------------------------- */  
.p-block03 { display: -webkit-box; display: -ms-flexbox; display: flex; margin-bottom: 100px; border-top: 1px solid #ddd; }

.p-block03--more-margin { margin-bottom: 150px; }

.p-block03--no-border { -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 50px; border-top: 0; }

.p-block03--no-border .p-block03__item { width: 48%; margin-bottom: 90px; padding: 0; }

.p-block03--no-border .p-block03__item + .p-block03__item { padding-left: 0; border-left: 0; }

.p-block03__item { width: 33.33%; padding: 40px 4.23729% 0 0; }

.p-block03__item + .p-block03__item { padding-left: 4.23729%; border-left: 1px solid #ddd; }

.p-block03__item-title { margin-bottom: 10px; font-size: 14px; }

.p-block03__item-desc { font-size: 14px; line-height: 2.4;text-align: center; }

@media screen and (max-width: 767px) { .p-block03 {
	display: block;
	margin-top: 0;
	margin-right: 0px;
	margin-bottom: 40px;
	margin-left: 0px;
}
  .p-block03--more-margin { margin-bottom: 0; }
  .p-block03--more-margin .p-block03__item:last-child { padding-bottom: 0; }
  .p-block03__item { width: 100%; padding: 40px 0px 33px; }
  .p-block03__item + .p-block03__item { padding: 40px 0px 33px; border-top: 1px solid #ddd; border-left: 0; }
  .p-block03__item-title { margin-bottom: 7px; }
  .p-block03__item-desc { line-height: 2; } 
  }

@media screen and (max-width: 767px) { .p-block03--no-border { margin: 0; }
  .p-block03--no-border .p-block03__item { width: 100%; margin-bottom: 33px; padding: 0; border-top: 0; }
   }
 /* ----------------------------------------------------------------------
p-block03ここまで
---------------------------------------------------------------------- */   





 /* ----------------------------------------------------------------------
header_image
---------------------------------------------------------------------- */   
#header_image {
	width: 100%;
	min-width: 1150px;
	height: auto;
	position: relative;

	margin-bottom: 60px;
}
#header_image .image { width:100%; }
#header_image .image img { width:100%; height:auto; display:block; }
#header_image .caption { width:1150px; margin:0 auto; }
#header_image .caption .title {
  position:absolute; text-decoration:none; display:block; font-size:30px; 
  top:50%; top:-webkit-calc(50% + 30px); top:-moz-calc(50% + 30px); top:calc(50% + 30px);
  -webkit-transform: translate3d(0,-50%,0); transform: translate3d(0,-50%,0);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_image.no_image { height:120px; background:#eee; }

#archive_header { margin:0 0 45px; }
#archive_headline { font-size:34px; margin:0; }
#category_desc { font-size:15px; line-height:250%; margin:20px 0 0 0; }



@media screen and (max-width:770px) {
#header_image { min-width:0; /*height:200px;*/ overflow:hidden; margin-top:0px; }
/*#header_image .image img { height:200px; width:auto; }*/
#header_image .caption { width:auto; padding:0 20px; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#header_image .caption .title {
  font-size:32px !important; line-height:160%;
  top:50%; top:-webkit-calc(50%); top:-moz-calc(50%); top:calc(50%);
}
#header_image.no_image { height:200px; background:#e5e5e5; }
@media screen and (max-width:485px) {
  #header_image .caption .title { font-size:28px !important; }
}

#archive_header { margin:0 0 30px; }
#archive_headline { font-size:28px; margin:25px 0 15px; text-align: center; }
#category_desc { font-size:13px; line-height:180%; margin:10px 0 0 0; }

}
 /* ----------------------------------------------------------------------
header_imageここまで
---------------------------------------------------------------------- */  

 /* ----------------------------------------------------------------------
cb_content
---------------------------------------------------------------------- */  
.cb_content { margin:0 0 90px 0; }
.cb_content:last-child { margin-bottom:0 !important; }
.cb_content .cb_headline {
	padding: 0;
	font-size: 48px;
	line-height: 1.4;
	text-align: center;
}

.cb_content .cb_desc { margin:0; padding:0; font-weight:300; line-height:2.2; text-align:center; font-size: 16px;}
.cb_content-introduce { margin-bottom:80px; }

@media only screen and (max-width:991px) {
  /* コンテンツビルダー */
  .cb_content { margin:0 0 30px 0; }
  .cb_content br { display: none;}

  .cb_content .cb_headline { /*margin:-0.2em 0 10px 0;*/ margin:-0.2em 0 7px 0; font-size:20px; line-height:1.4; text-align:left; }

  .cb_content .cb_desc { line-height:2; text-align:left; }

  /* 紹介コンテンツ */
  .cb_content-introduce { margin-bottom:30px; }

}


 /* ----------------------------------------------------------------------
pan-inner
---------------------------------------------------------------------- */  
.pan-inner {
	position: relative;
	width: 90.7188%;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
}

@media only screen and (max-width: 991px) { .pan-inner { -webkit-box-sizing: border-box; box-sizing: border-box; width: 88.88889%; } }

@media only screen and (max-width: 767px) { .pan-inner { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; padding: 0 20px; } }


#bread_crumb { padding:0 0 20px; margin:0 auto; }
#bread_crumb li.home a {
  float:left; height:15px; width:0px; line-height:15px; display:block; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb li.home a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#bread_crumb li.home a:before {
  font-family:'design_plus'; color:#888; font-size:14px; display:block; position:absolute; top:2px; left:0px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home:after { display:none; }
#bread_crumb li.home a:before { content:'\e90c'; }
#bread_crumb li.home a:hover:before { color:#ccc; }
#bread_crumb li { color:#aaa; font-size:12px; display:inline; padding:0 15px 0 0; margin:0 0 0 15px; line-height:160%; position:relative; }
#bread_crumb li:after {
  font-family:'design_plus'; content:'\e910'; color:#aaa; font-size:9px; display:block; position:absolute; left:-20px; top:-1px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#888; }
.pc .no_side #bread_crumb, .pc .error404 #bread_crumb { width:900px; }
   
 /* ----------------------------------------------------------------------
pan-innerここまで
---------------------------------------------------------------------- */  



 /* ----------------------------------------------------------------------
center_image
---------------------------------------------------------------------- */  
#center_image {
	width: 100%;
	min-width: 1150px;
	height: auto;
	position: relative;
	margin-bottom: 50px;
}
#center_image .image { width:100%; }
#center_image .image img { width:100%; height:auto; display:block; }
#center_image .caption { width:1150px; margin:0 auto; }
#center_image .caption .title {
  position:absolute; text-decoration:none; display:block; font-size:30px; 
  top:50%; top:-webkit-calc(50% + 30px); top:-moz-calc(50% + 30px); top:calc(50% + 30px);
  -webkit-transform: translate3d(0,-50%,0); transform: translate3d(0,-50%,0);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#center_image.no_image { height:320px; background:#eee; }



@media screen and (max-width:770px) {
#center_image { min-width:0; /*height:200px;*/ overflow:hidden; margin-top:0px; margin-bottom: 0px;}

/*#center_image .image img { height:200px; width:auto; }*/

#center_image .caption { width:auto; padding:0 20px; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }

#center_image .caption .title {
  font-size:32px !important; line-height:160%;
  top:50%; top:-webkit-calc(50%); top:-moz-calc(50%); top:calc(50%);
}

#center_image.no_image { height:200px; background:#e5e5e5; }




@media screen and (max-width:485px) {
  #center_image .caption .title { font-size:28px !important; }
}
}
 /* ----------------------------------------------------------------------
center_imagerここまで
---------------------------------------------------------------------- */  




/* column-layout01 */
.column-layout01 {
	width: 100%;
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 120px;
	margin-left: 10px;
}

.column-layout01-item {
  float: left;
  width: 47.82609%;
}
.column-layout01-item:nth-of-type(odd) {
  margin-right: 2.17391%;
}
.column-layout01-item:nth-of-type(even) {
  margin-left: 2.17391%;
}

.column-layout01-title {
	font-size: 28px;
	line-height: 1.6;
	margin-bottom: 1em;

}
.column-layout01-text {
  font-size: 16px;
  line-height: 1.8;
}
.column-layout01-image {
  width: 100%;
  height: auto;
}

/* column-layout01 */
@media only screen and (max-width: 790px) {
	
  .column-layout01-title {
	font-size: 22px;
	margin: 24px 0 18px;

  }
    .column-layout01-text {
       font-size: 16px;
    line-height: 1.8;
  }

  .column-layout01 {
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 40px;
	margin-left: 10px;
  }

  .column-layout01-item {
    float: none;
    margin-bottom: 1em;
    width: 100%;
  }
  .column-layout01-item:nth-of-type(even) {
    margin-left: 0;
  }
  .column-layout01-item:nth-of-type(odd) {
    margin-right: 0;
  }
  .column-layout01-item:last-child {
    margin-bottom: 0;
  }
}





/* --------------------------------------------------------------------------------
Oブロック
-------------------------------------------------------------------------------- */


/* column-layout02 */
.column-layout02 {
	width: 100%;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 120px;
	margin-left: 0;
}

.column-layout02-item {
  float: right;
  width: 47.82609%;
}
.column-layout02-item:nth-of-type(odd) {
  margin-left: 2.17391%;
}
.column-layout02-item:nth-of-type(even) {
  margin-right: 2.17391%;
}

.column-layout02-title {
	font-size: 28px;
	line-height: 1.6;
	margin-bottom: 1em;

}
.column-layout02-text {
  font-size: 16px;
  line-height: 1.8;
}
.column-layout02-image {
  width: 100%;
  height: auto;
}

/* column-layout01 */
@media only screen and (max-width: 790px) {
	
  .column-layout02-title {
	font-size: 22px;
	margin: 24px 0 18px;

  }
    .column-layout02-text {
       font-size: 16px;
    line-height: 1.8;
  }

  .column-layout02 {
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 40px;
	margin-left: 0;
  }

  .column-layout02-item {
    float: none;
    margin-bottom: 1em;
    width: 100%;
  }
  .column-layout02-item:nth-of-type(even) {
    margin-left: 0;
  }
  .column-layout02-item:nth-of-type(odd) {
    margin-right: 0;
  }
  .column-layout02-item:last-child {
    margin-bottom: 0;
  }
}



.column-layout03 {
	width: 90%;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 120px;
	margin-left: 0;
}


	
.headline1 {
	border-bottom: 2px solid #ccc;
	padding: 0;
	font-size: 36px;
	font-weight: normal;
	width: 100%;
	margin-top: 25px;
	margin-right: 0;
	margin-bottom: 25px;
	margin-left: 0;
}
.headline1 span { border-bottom:4px solid #ccc; padding:0 0 10px 0; margin:0; display:inline-block; }


@media screen and (max-width:768px) {
.headline1 {
	font-size: 20px;
}

} 
.cont-inner {
	position: relative;
	width: 86.7188%;
	max-width: 1110px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 40px;
	margin-bottom: 120px;
}

@media only screen and (max-width: 991px) { .cont-inner { -webkit-box-sizing: border-box; box-sizing: border-box; width: 88.88889%; } }

@media only screen and (max-width: 767px) { .cont-inner { -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; padding: 0 20px; } }


/*================================================
 * テーブル
 ================================================*/

.col-head-type1 {
  border-collapse: collapse;
  width: 100%;   
  text-align: center;
  margin-bottom: 20px;	/*ボックスの下側（外側）に空けるスペース*/
  background: #fff;

}
 
.col-head-type1 th,
.col-head-type1 td {
  border: 1px solid #ccc;  
  padding: 5px;
  	font-size: 14px;
}
 
.col-head-type1 th {
  background: #ff8000;
  color: #fff;
}

/*フッター内のaddress（電話番号ブロック）タグ*/
address {
	font-style: normal;
	border-radius: 10px;	/*角丸の指定*/
	text-align: center;		/*内容をセンタリング*/
	line-height: 1.5;		/*行間*/
	padding: 5px;			/*ボックス内の余白*/
 
	
}
/*フッター内のaddress（電話番号の行）タグ*/
address .tel {
	font-size: 40px;	/*文字サイズ*/
	background: url(../images/icon_tel.png) no-repeat left center / 30px;	/*電話番号アイコンの読み込み*/
	padding-left: 45px;	/*電話番号アイコンの幅をここで調整する*/
}



.table_11 {
	margin-bottom: 80px;
	background-color: #eee;
	border: 1px solid #333;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}

.table_12 {
	font-size: 14px;
	margin-bottom: 40px;
	line-height: 36px;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.table_10 {
	border-top-width: 1px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-left-style: solid;
	border-top-color: #666;
	border-right-color: #666;
	border-left-color: #666;
	margin-bottom: 80px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.td_10 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #666;
	background-color: #ddd;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 25px;
	font-size: 16px;
	padding-right: 25px;
}
.td_11 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #666;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 25px;
	font-size: 16px;
	font-weight: normal;
	line-height: 24px;
}

.td_12 {
	font-size: 15px;
	font-weight: bold;
	line-height: 28px;
	padding-top: 36px;
	padding-right: 36px;
	padding-bottom: 24px;
	padding-left: 36px;
}

.td_13 {
	font-size: 14px;
}
.td_14 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #666;
	background-color: #ddd;
	padding-top: 8px;
	padding-bottom: 8px;
	padding-left: 12px;
	font-size: 15px;
}
.td_15 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #666;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 25px;
	font-size: 14px;
	font-weight: normal;
	padding-right: 25px;
	line-height: 24px;
}



.ol_01 {
	font-size: 14px;
	line-height: 36px;
	padding-right: 36px;
	padding-bottom: 36px;
	padding-left: 52px;
	list-style-type: decimal;
} 














#waku_inner_01 {
	float: left;
	width: 30%;
	height: 45px;
	padding-top: 35px;
	border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #999;
	padding-left: 24px;
	font-size: 16px;
}

#waku_inner_02 {
	float: left;
	width: 10%;
	height: 45px;
	text-align: right;
	padding-top: 35px;
	padding-right: 15px;
		border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #999;
}

#waku_inner_03 {
	float: left;
	width: 55%;
	height: 60px;
	padding-top: 20px;
		border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #999;
}

#waku_inner_04 {
	float: left;
	width: 30%;
	height: 150px;
	padding-top: 35px;
	border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #999;
	padding-left: 24px;
	font-size: 16px;
}

#waku_inner_05 {
	float: left;
	width: 10%;
	height: 150px;
	text-align: right;
	padding-top: 35px;
	padding-right: 15px;
		border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #999;
}

#waku_inner_06 {
	float: left;
	width: 55%;
	height: 180px;
	padding-top: 20px;
		border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #999;
}


@media screen and (max-width:768px) {

#waku_inner_01 {
	height: 25px;
	float: left;
	width: auto;
	border-top-width: 0px;
	border-top-style: dotted;
	border-top-color: #999;
	font-size: 16px;
	padding-left: 0px;
	padding-top: 0px;
}

#waku_inner_02 {
	height: 25px;
	float: left;
	width: auto;
	border-top-width: 0px;
	border-top-style: dotted;
	border-top-color: #999;
	text-align: right;
	padding-top: 0px;
	padding-right: 0px;
}

#waku_inner_03 {
	float: left;
	width: 100%;
	border-top-width: 0px;
	border-top-style: dotted;
	border-top-color: #999;
	padding-top: 0px;
	margin-bottom: 32px;
	margin-top: 8px;
}
#waku_inner_04 {
	height: 25px;
	float: left;
	width: auto;
	border-top-width: 0px;
	border-top-style: dotted;
	border-top-color: #999;
	font-size: 16px;
	padding-left: 0px;
	padding-top: 0px;
}

#waku_inner_05 {
	height: 25px;
	float: left;
	width: auto;
	border-top-width: 0px;
	border-top-style: dotted;
	border-top-color: #999;
	text-align: right;
	padding-top: 0px;
	padding-right: 0px;
}

#waku_inner_06 {
	float: left;
	width: 100%;
	border-top-width: 0px;
	border-top-style: dotted;
	border-top-color: #999;
	padding-top: 0px;
	margin-bottom: 32px;
	margin-top: 8px;
}



} 

.hisu02 {
	font-size: 13px;
	color: #1b2b3f;
	background-color: #fff;
	font-weight: bold;
	padding-top: 8px;
	padding-right: 15px;
	padding-bottom: 8px;
	padding-left: 15px;
	margin-top: 5px;

	border: 2px solid #1b2b3f;
}

.hisu {
	font-size: 13px;
	color: #FFF;
	background-color:#1b2b3f;
	font-weight: bold;
	padding-top: 8px;
	padding-right: 15px;
	padding-bottom: 8px;
	padding-left: 15px;
	margin-top: 5px;
		border-radius : 10%; /* 角丸       */

}

.post_content { line-height:2; margin:0 0 2em 0; }

.span_01 {
	font-size: 24px;
	color: #666;
	
}

.span_02 {
	font-size: 16px;
	color: #666;
	padding: 20px;
	border: 1px solid #999;
}

.table_waku {
	width: 70%;
	margin-right: auto;
	margin-left: auto;
	margin-top: 40px;
	margin-bottom: 90px;
}
@media screen and (max-width:768px) {
.table_waku {
	width: 90%;
	margin-top: 32px;
}
} 


/* エラー
*****************************************/
.errorTxt{
	display:none;
	margin:5px 0 0;
	color: #c0392b;
}

.errorTxt.error{
	display:block;
}


.errorTxt:before{
	content: "\f071";
	margin: 0 3px 0 0;
	font-family: FontAwesome;
	color: #c0392b;
}
.error[type=text],.error[type=password],.formStyle textarea.error{
	border-color:#c0392b;
}
.success[type=password]{
	border-color:#5CB85C;
}

input.error[type="text"]:focus,
input.error[type="password"]:focus,
textarea.error:focus {
	box-shadow: 0 0 7px #c0392b;
	border-color:#c0392b;
}

input.success[type="password"]:focus{
	box-shadow: 0 0 7px #5CB85C;
	border-color:#5CB85C;
}

.error input[type="radio"] + label::before,
.error input[type="checkbox"] + label::before{
	border-color:#c0392b;
}




	


/* テキストインプットとテキストエリアの基本装飾
*****************************************/
input[type="text"],
textarea {
	padding: 0.8em;
	border: 1px solid #999;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 16px;
	background-color: #eee;
}


/* フォーカスした時のスタイルを変更クリックするとワクがブルー
*****************************************/
input[type="text"]:focus,
input[type="password"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}
/* フォーカスした時の幅を変更
*****************************************/
input[type="text"].focus {
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	width: 400px;
	background-color: #eee;
}



/* フォーカスした時のスタイルを変更クリックするとワクがブルー
*****************************************/
input[type="text"]:focus_02,
input[type="password"]:focus,
textarea:focus {
	box-shadow: 0 0 7px #3498db;
	border: 1px solid #3498db;
}
/* フォーカスした時の幅を変更
*****************************************/
input[type="text"].focus_02 {
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	width: 200px;
	background-color: #eee;
}


@media screen and (max-width:768px) {	

/* フォーカスした時の幅を変更
*****************************************/
input[type="text"].focus {
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	width: 100%;
	background-color: #eee;
}
/* フォーカスした時の幅を変更
*****************************************/
input[type="text"].focus_02 {
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
	width: 60%;
	background-color: #eee;
}
	}






select {
	background-color: #eee;
	padding: 10px;
}

.inputt_01 {
	padding: 0.8em;
	border: 1px solid #999;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 16px;
	background-color: #fff;

}




input[type="radio"] , input[type="checkbox"]{
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
	margin-right: 0.5em;
 }  
   
   



.f_button {
	display       : inline-block;
	border-radius : 4%;          /* 角丸       */
	font-size     : 14pt;        /* 文字サイズ */
	text-align    : center;      /* 文字位置   */
	cursor        : pointer;     /* カーソル   */
	padding       : 15px;   /* 余白       */
	background    : #1b2b3f;     /* 背景色     */
	color         : #ffffff;     /* 文字色     */
	line-height   : 1em;         /* 1行の高さ  */
	transition    : .3s;         /* なめらか変化 */
	box-shadow    : 4px 4px 3px #999;  /* 影の設定 */
	border        : 2px solid #fff;    /* 枠の指定 */
	width: 60%;
}
.f_button:hover {
	box-shadow    : 4px 4px 3px #999;  /* 影の設定 */
  color         : #000;     /* 文字色     */
  background    : #fff;   /* 背景色     */ 
  	border        : 2px solid #3b415c;    /* 枠の指定 */ 
}

@media only screen and (max-width:767px) {
.button {

	width: 88%;
}	

	}
@media only screen and (max-width: 768px) {


	textarea {
		width:100%;
		padding:3%;
	}
	
	 	.Opening {
         display:none
}

.p-showcase {
	color: #000;
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 530px;
  margin-bottom: 30px;
}	

}	

#center {
	width: 100%;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	padding-top: 24px;
	padding-bottom: 24px;
	margin-bottom: 104px;
}
#center_02 {
	width: 100%;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 160px;
	margin-top: 160px;
}   
   
@media only screen and (max-width: 480px) {

.br-sm{display:inline;font-size: 100%;}

.p-showcase--reverse .p-showcase__image {display:none}
	

}	

