@charset "utf-8";
/*
Theme Name:GENSEN
Theme URI:
Description:WordPressテーマ「GENSEN」
Author:Design Plus
Author URI:http://design-plus1.com/tcd-w/
Version:1.0
Text Domain:tcd-w
*/


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

@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;
}

/* アイコンフォント */
.icon-arrow-right:before {
  content: "\e910";
}

.icon-file-text:before {
  content: "\f15c";
}

.icon-share-alt:before {
  content: "\f1e0";
}

.icon-phone:before {
  content: "\f095";
}

.icon-envelope:before {
  content: "\f0e0";
}

.icon-tag:before {
  content: "\f02b";
}

.icon-pencil:before {
  content: "\f040";
}

.icon-close:before {
  content: "\e91a";
}




/* ------------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
------------------------------------------------------------------------------------ */


/* ----------------------------------------------------------------------
 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; }

/* 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 */


/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { font-family:Arial,sans-serif; font-size:14px; color:#000; line-height:1; width:100%; min-width:1180px; 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:#b69e84; text-decoration:none; }
.clear { clear:both; }
.hide { display:none; }

/* レイアウト */


.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; }




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

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

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



.l-inner_02 { position: relative; width: 92.1875%; max-width: 1080px; margin-right: auto; margin-left: auto; }

@media only screen and (max-width: 991px) { .l-inner_02 { width: 88.88889%; } }

@media only screen and (max-width: 767px) { .l-inner_02 { width: 100%; padding: 0 20px; } }





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





/* ----------------------------------------------------------------------
ローディングアイコン
---------------------------------------------------------------------- */


#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:12px; 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); }


/* ----------------------------------------------------------------------
ページ上部へ戻るボタンここまで
---------------------------------------------------------------------- */


/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
#footer_top {
	background: #eee;
	min-width: 1200px;
	border-top-width: 4px;
	border-top-style: solid;
	border-top-color: #65afba;
	
}
#footer_top_inner {
	width: 1200px;
	text-align: center;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding-top: 24px;
	background-color: #eee;
	padding-bottom: 36px;
}

.footer_logo_02 {
	width: 82%;
	display: block;
    margin-left: auto;
    margin-right: auto ;
}	

/* menu list */
#footer_menu { margin:0; }
.footer_menu { display:inline-block; margin:0 10px; width:170px; vertical-align:top; }
.footer_menu li { text-align:left; margin:0 0 10px 0; font-size:12px; line-height:180%; }
.footer_menu li:first-child { margin:0 0 20px 0; }
.footer_menu a { display:block; transition:.3s ease-in-out; }
.footer_menu a:hover { text-decoration:underline !important; }
.footer_menu li:first-child a, .footer_menu li:only-child a { font-size:14px; }
.footer_menu li { pointer-events:none; text-decoration:none; color:#222; }
.no_link a {

	font-weight: bold;
}


/* フッター最下部 */
#footer_bottom {
	position: relative;

	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 0px;
	padding-right: 0;
	padding-bottom: 30px;
	padding-left: 0;
	background-color: #eee;
}




/* メニュー */
#footer_menu_bottom {
	text-align: center;
	background-color: #eee;
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
}
#footer_menu_bottom li { display:inline-block; font-size:12px; }
#footer_menu_bottom li a { display:block; border-right:1px solid #ccc; padding:0 15px 0 0; margin:0 15px 0 0; }
#footer_menu_bottom li:last-child a { border:none; padding:0; margin:0; }

/* コピーライト */
#copyright { text-align:center; margin:0; padding:0; font-size:12px; background:#65afba; min-width:1200px; height:60px; line-height:60px; color:#fff; }
#copyright a { color:#fff; }

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

body { min-width:0; }


#footer_top { min-width:0; }
#footer_top_inner {
	width: 100%;
	text-align: center;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 20;
	padding-left: 0;
}




/* new footer menu (flex box) */
@media only screen and (max-width: 767px) {
  #footer_menu{
    margin: 0 20px;
    box-sizing: border-box;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .footer_menu{ display: block; border: none; background: none; width: calc(50% - 5px); margin: 0 0 30px; }
  .footer_menu:nth-of-type(even){ margin-left: 10px; }
  .footer_menu li { text-align:left; margin:0; font-size:12px; line-height:160%; }
  .footer_menu a { padding:5px 20px; text-decoration:none; }
  .footer_menu a:hover { background:#333; text-decoration:none !important; color:#fff; }
  .footer_menu li:first-child{margin: 0;}
  
}


/* フッター最下部 */
#footer_bottom { width:auto; margin:0 auto; background: #f5f7f6; }
#footer_bottom_inner{ text-align: center; }
#footer_bottom_inner #footer_logo{margin: 0; }

/* メニュー */
#footer_menu_bottom {
	text-align: left;
}
#footer_menu_bottom li { display:block; font-size:12px; float:left; width:50%; line-height:160%; }
#footer_menu_bottom li a, #footer_menu_bottom li:last-child a  { display:block; border:none; padding:15px 20px; margin:0; border-top:1px dotted #ccc; }
#footer_menu_bottom li a:hover { text-decoration:none; color:#fff; }
@media screen and (max-width:500px) {
  #footer_menu_bottom li { width:100%; float:none; }
}


/* コピーライト */
#copyright { text-align:center; margin:0; padding:0; font-size:12px; background:#000; min-width:0; height:60px; line-height:60px; color:#fff; }
#copyright a { color:#fff; }


}

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


/* スライダー */
#video_wrap {
	width: 100%;
	max-width:1490px;
	position: relative;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 90px;
	margin-left: auto;
}
@media screen and (max-width:991px) {

#video_wrap {

	width: 100%;
	margin-bottom: 40px;

}
}

.rich_font { font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; font-weight:400; }



/* コンテンツビルダー */
.cb_content { margin:0 0 10px 0; }
.cb_content:last-child { margin-bottom:0 !important; }
.cb_content .cb_headline {
	padding: 0;
	font-size: 42px;
	line-height: 1.4;
	text-align: center;
	margin-top: 0em;
	margin-right: 0;
	margin-bottom: 24px;
	margin-left: 0;
}

.cb_content .cb_desc {
	padding: 0;
	font-weight: 300;
	line-height: 2.2;
	text-align: center;
}

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

@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; }

}

  








.p-index-content08__btn { position: absolute; top: -20px; right: 0; }

@media screen and (max-width: 767px) { .p-index-content08__btn { position: static; text-align: center; } }



.p-cb__item { position: relative; margin-bottom:　0px; }

@media screen and (max-width: 767px) { .p-cb { padding-top: 0; }
  .p-cb__item, .p-cb__item:last-child { margin-bottom: 40px; } }
  
  
  .p-blog-list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; margin-bottom: 10px; margin-left: 1px; }

.p-blog-list:last-child { margin-bottom: 0px; }

.p-blog-list__item { width: 25%; margin-bottom: 0px; margin-left: -1px; }

@media screen and (max-width: 991px) { .p-blog-list__item { width: 33.33%; } }

@media screen and (max-width: 767px) { .p-blog-list { margin-bottom: 0; }
  .p-blog-list:last-child { margin-bottom: 15px; }
  .p-blog-list__item { width: 50%; margin-bottom: 24px; } }

@media screen and (max-width: 320px) { .p-blog-list__item { width: 100%; } }





.p-article01 {
	position: relative;
	border: 1px solid #aaa;
	border-top: 0;
	background-color: #FFF;
}

.p-date__month {
	font-weight: normal;
	color: #D04A17;
}
.p-date__day {
	font-weight: normal;	
}
.p-article01__date { left: -1px; }

.p-article01__img { margin: 0 -1px; }

.p-article01__img img { margin: -1px 0; }

.p-article01__content { padding: 16.6px 23px 18px; line-height: 1.8; }

.p-article01__title {
	margin-bottom: 4px;
	font-size: 18px;
	font-weight: 500;
	color: #278283;
}

.p-article01__p {
	margin-bottom: 4px;
	font-size: 14px;
}


.p-article01__title:only-child { margin-bottom: 0; }

.p-article01__cat { color: #333; font-size: 13px; }

.p-article01__cat a { color: inherit; }

@media screen and (max-width: 767px) { .p-article01__content { padding: 10px 15px 12px; }
  .p-article01__title { font-size: 14px; }
  .p-article01__cat { font-size: 10px; } }
  
  
  
  
  
  .p-triangle { z-index: 1; position: absolute; width: 160px; height: 160px; padding-left: 20px; overflow: hidden; }

.p-triangle::before { z-index: -1; position: absolute; top: -1px; left: 0; border-width: 75px; border-style: solid; border-color: #fff transparent transparent #fff; content: ""; -webkit-filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5)); filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5)); }

.p-triangle--no-padding { padding-left: 2px; }

.p-triangle--grey::before { border-color: #f5f5f5 transparent transparent #f5f5f5; }

.p-triangle__inner { display: block; margin-top: -4px; font-size: 14px; font-weight: 700; line-height: 1.8; }

@media screen and (max-width: 767px) { .p-triangle__inner { margin-top: -2.8px; line-height: 1.4; } }

@media screen and (max-width: 550px) { .p-triangle { width: 100px; height: 100px; padding-left: 10px; }
  .p-triangle::before { border-width: 47.5px; }
  .p-triangle--no-padding { width: 145px; height: 145px; padding-left: 3px; }
  .p-triangle--no-padding::before { border-width: 70px; } }






.p-date { display: inline-block; font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-size: 14px; text-align: center; }

.p-date__day {
	display: block;
	font-size: 18px;
	margin-top: 4px;
	margin-right: 0;
	margin-bottom: 1px;
	margin-left: 0;
}

@media screen and (max-width: 550px) { .p-date { font-size: 10px; }
  .p-date__day { margin-top: 0; font-size: 13px; } }
  
  
  
  
  /* Hover effect */
.p-hover-effect--type1 { display: block; overflow: hidden; }

.p-hover-effect--type1 img { width: 100%; height: auto; -webkit-transform: scale(1); transform: scale(1); vertical-align: middle; -webkit-transition-duration: 0.5s; transition-duration: 0.5s; }

.p-hover-effect--type2 { display: block; overflow: hidden; }

.p-hover-effect--type2:hover img { -webkit-transform: scale(1.3) translate3d(0, 0, 0) !important; transform: scale(1.3) translate3d(0, 0, 0) !important; }

.p-hover-effect--type2 img { width: 100%; height: auto; -webkit-transition: 0.5s; transition: 0.5s; -webkit-transition-property: opacity, -webkit-transform; transition-property: opacity, -webkit-transform; transition-property: opacity, transform; transition-property: opacity, transform, -webkit-transform; }

.p-hover-effect--type3 { display: block; overflow: hidden; }

.p-hover-effect--type3 img { width: 100%; height: auto; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transition: 0.5s; transition: 0.5s; -webkit-transition-property: opacity; transition-property: opacity; }

@media screen and (max-width: 767px) { .p-hover-effect--type1:hover img, .p-hover-effect--type2:hover img, .p-hover-effect--type3:hover img { -webkit-transform: none !important; transform: none !important; opacity: 1 !important; }
  .p-hover-effect--type1 img, .p-hover-effect--type2 img, .p-hover-effect--type3 img { margin-right: 0 !important; margin-left: 0 !important; -webkit-transform: none !important; transform: none !important; -webkit-transition: none !important; transition: none !important; } }
  
  
  




 /* ----------------------------------------------------------------------
midashi
---------------------------------------------------------------------- */
#index_midashi {
	width: 1200px;
	-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: 20px;
	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: 42px;
	line-height: 200%;
	margin: 0 30px 0 0;
	display: inline-block;
	vertical-align: middle;
	font-weight: normal;
}
#index_midashi .catchphrase .desc { font-size:14px; line-height:200%; margin:0; display:inline-block; vertical-align:middle; }



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

/* midashi　コンテンツ */
#index_midashi { width:100%; margin:0; padding:30px 20px 0; }
#index_midashi .catchphrase { margin:0 0 22px 0; }
#index_midashi .catchphrase .headline { font-size:26px !important; margin-right:0; margin-bottom:14px; display:block; vertical-align:top; text-align:center; line-height:1.5; }
#index_midashi .catchphrase .desc { font-size:14px !important; display:block; vertical-align:top; }

}

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




/* こんなことでお悩みありませんか？ */
.section01 {
	background-color: #ebe5e5;
	padding-top: 40px;
	padding-bottom: 90px;
	margin-bottom: 120px;
}

@media only screen and (max-width:991px) {
	
.section01 {
	padding-bottom: 90px;
	margin-bottom: 40px;
}	
	
	}

.section02 {
	background-color: #ebe5e5;
	padding-top: 40px;
	padding-bottom: 90px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999;
}

.section03 {
	background-color: #c4dde2;
	padding-top: 40px;
	padding-bottom: 40px;

}

.section04 {
	background-color: #ebe5e5;
	padding-top: 40px;
	padding-bottom: 90px;
	margin-bottom: 120px;
}

.section05 {
	background-color: #c4dde2;
	padding-top: 50px;
	padding-bottom: 90px;
	margin-bottom: 120px;

}

@media only screen and (max-width:991px) {
	
.section04 {
	padding-bottom: 10px;
	margin-bottom: 40px;
}	
	
	}

/* ----------------------------------------------------------------------
index_box_list
---------------------------------------------------------------------- */ 

.index_box_list {
	display: flex;
	display: -webkit-flex;
	display: -ms-flexbox;/*--- IE10 ---*/
	padding-top: 10px;
	padding-right: 0;
	padding-bottom: 0px;
	padding-left: 0;
}
.index_box_list .box {
	width: 362px;
	position: relative;
	margin-top: 0;
	margin-right: 57px;
	margin-bottom: 0;
	margin-left: 0;
	padding-top: 0;
	padding-right: 0;
	padding-bottom: 0px;
	padding-left: 0;
}
.index_box_list .box.box3 { margin:0; }
.index_box_list .image {
	width: 80%;
	height: auto;
	display: block;
	overflow: hidden;
	border-radius: 50%;
	margin-bottom: 25px;
	margin-right: auto;
	margin-left: auto;
	border: 10px solid #FFF;
	
}


.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: 18px;
	font-weight: 500;
	color: #278283;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 15px;
	margin-left: auto;
	text-align: center;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #333;
	padding-bottom: 8px;
}
.index_box_list .desc {
	font-size: 13px;
	margin: 0;
	line-height: 200%;
	color: #333;
}
.index_box_list .link {
	background: #000;
	color: #fff;
	text-decoration: none;
	display: block;
	width: 135px;
	height: 40px;
	line-height: 35px;
	text-align: center;
	font-size: 14px;
	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_r {
  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:28px; 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: 62%;
	float: none;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
}
.index_box_list .headline {
	font-size: 18px;

}
  .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ここまで
---------------------------------------------------------------------- */
  


#header { width:100%; min-width:1180px; height:80px; background:#fff; position:relative; z-index:20; }
#header_inner {
	    font-family: "Hiragino Kaku Gothic Pro",  Meiryo, sans-serif;
	width: 1180px;
	position: relative;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}

@media screen and (max-width:991px) {
#header_inner{
	width: 100%;
}	
	
	        }

.logo{
    display: flex;
}

.main_image {
	margin-left: 0px;
}

.logo_image{
	width: 38%;
}

@media screen and (max-width:770px) {
.logo_image{
	width: 38%;
	margin-left: 20px;
}	
	
	        }
			
.flogo_image{
	width: 22%;
}

@media screen and (max-width:770px) {
.flogo_image{
	width: 42%;
	margin-left: 20px;
}	
	
	        }			

.main_right{
    display: flex;
    margin-left: auto;
    align-items: center;
}




.main_nav{
    font-size: 12px;
    display: none;
    text-align: center;
    margin-right: 30px;
}

.main_nav img{
    width: 20px;
    height: 20px;
    border-radius: 5px;
}

.main_nav .tel{
	font-family: 'Oswald', sans-serif;
	font-weight: bold;
	font-size: 28px;
	margin-bottom: 2px;
	color: #65afba;
}

.size{
	font-size: 1.3em; /*1.5倍にする*/

}


.main_nav .time{
	font-size: 11px;
	font-weight: normal;
	color: #333;
}

.main_contact p{
	color: #000;
	background-color: #c4dde2;
	border-radius: 30px;
	font-size: 13px;
	display: none;
	margin-left: auto;
	margin-right: 20px;
	transition: 0.3s;
	font-weight: normal;
	padding-top: 15px;
	padding-right: 30px;
	padding-bottom: 15px;
	padding-left: 30px;

}

.main_contact p:hover{
    color: #fff;
    background-color: #ddd;
}

.main_container{
    height: 500px;
    background-color: red;
}

nav.sp{
    position: fixed;
	z-index: 100;
    top: 60px;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(119, 119, 119, 0.6);
    margin-bottom: 20px;
    transform: translateX(100%);
    transition: 0.3s;
}

nav li{
    line-height: 50px;
    text-align: center;
    background-color: rgba(63, 62, 62, 0.5);
}

nav a{
    display: block;
    color: #eee;
    letter-spacing: 0.1em;
}

nav.drawer{
    transform: translateX(0);
}

nav.pc{
    display: none;
}



/*------------------------
    burger menu setting
------------------------*/
#burger {
    width: 40px;
    height: 40px;
    position: fixed;
    top: 15px;
    right: 20px;
    cursor: pointer;

}


#burger span {
    display: block;
    position: absolute;
    width: 100%;
    transition: .4s;
    top: 0;
    left: 0;
    border-top: 1px solid #333;
}

#burger span:nth-child(2) {
    top: 25%;
}

#burger span:nth-child(3) {
    top: 50%;
}

#burger span:nth-child(4) {
    text-align: center;
    top: 75%;
    font-size: 10px;
    border: none;
}

#burger.active > span:nth-child(1) {
    top: 25%;
    transform: rotate(-45deg);
}

#burger.active > span:nth-child(2) {
    opacity: 0;
}

#burger.active > span:nth-child(3) {
    top: 25%;
    transform: rotate(45deg);
}


.container{
	margin: 0 auto;
	font-weight: bold;	
}

.main{
    padding: 0 10px;

}



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



    nav.sp{
        display: none;
		  
    }

    
    nav.pc{
  
        top:0;
        left:0;
        height: auto;
        background-color: #c4dde2;
        display: block;
    }

    nav ul{
        display: flex ;
        justify-content: center;
    }

    nav li{
        width: 13%;
        line-height: 45px;
        background-color: transparent;

    }
    
    nav a{
        color: #333;
        transition: 0.4s;
    }

    nav a:hover{
        background-color: #777;
        color: #fff;
    }

    #burger{
        display: none;
    }

    .main{
        padding: 0 5px;
    }

    .main_nav{
        display: block;
    }

    .main_contact p{
        display: block;
    }

}

.flow-box{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
}

.flow-item{
    width: 26%;
    margin-bottom: 90px;
	  position: relative;
}

.flow-item h3{
	display: block;
	font-size: 18px;
	margin: 10px auto 12px;
	padding: 0 0 5px;
	font-weight: 600;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	color: #333333;

}

.flow-item p{
 	font-size: 13px;
	line-height: 200%;
	color: #333;
}

.flow-box img{
    height: auto;
    max-width: 100%;
    vertical-align: middle;
}

.arrow{
    display: flex;
	justify-content: center;
	align-items: center;
    margin: 0 20px;
}

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

    .flow-box{
        width: 90%;
        justify-content: space-between;
    }

    .arrow{
        display: none;
    }
	.flow-item h3{
	font-size: 14px;
}

}

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

    .flow-item{
    width: calc(50% - 22px);
}


}

.span_no {
	position: absolute;
	top: 0;
	left: 0;
	color: white;
	background-color: #65afba;
	font-size: 13px;
	text-align: center;
	padding-top: 6px;
	padding-right: 10px;
	padding-bottom: 6px;
	padding-left: 10px;
}






/* コンテンツ１ */
.index_box_list_02 {
	display: flex;
	display: -webkit-flex;
	display: -ms-flexbox;/*--- IE10 ---*/
	padding-top: 10px;
	padding-right: 0;
	padding-bottom: 0px;
	padding-left: 0;
	margin-bottom: 120px;
}
.index_box_list_02 .box { width:362px; margin:0 57px 0 0; padding:0 0 0px 0; position:relative; }
.index_box_list_02 .box.box3 { margin:0; }
.index_box_list_02 .image_r {
	width: 100%;
	height: auto;
	display: block;
	margin: 0 0 25px 0;
	overflow: hidden;

	
}
.index_box_list_02 .image_r 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_02 .image_r 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_02 .headline {
	font-size: 18px;
	font-weight: 400;
	color: #278283;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 20px;
	margin-left: 0;
}
.index_box_list_02 .desc {
	font-size: 13px;
	color: #333;
	margin: 0;
	line-height: 200%;
}
.index_box_list_02 .link {
	background: #aaa;
	color: #fff;
	text-decoration: none;
	display: block;
	width: 135px;
	height: 40px;
	line-height: 35px;
	text-align: center;
	font-size: 14px;
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	margin-top: 0;
	margin-bottom: 0;
}
.index_box_list_02 .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;
}


@media screen and (max-width: 767px) { 
/* コンテンツ１ */
.index_box_list_02 { padding:40px 0 0; display:block; }
.index_box_list_02 .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_02 .image_r {
  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_02 .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_02 .headline { font-size:28px; margin:0 0 20px; text-align: center; }
.index_box_list_02 .desc { margin:0 0 20px; font-size:14px; line-height: 200%;}
.index_box_list_02 .link { position:relative; margin:0; right:0; left:0; bottom:auto; width:140px; height:40px; line-height:40px; font-size:14px; }
.index_box_list_02 .link:after { font-size:13px; }

@media screen and (max-width:550px) {
  .index_box_list_02 .box { margin-bottom:20; }
  .index_box_list_02 .image_r {
	width: 65%;
	float: none;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
}
.index_box_list_02 .headline {
	font-size: 18px;

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

}




/* ----------------------------------------------------------------------
 大きな画像　トップページの中央画像、フッター画像、アーカイブページ上部など
---------------------------------------------------------------------- */
.wide_image {
	width: 100%;
	height: 440px;
	position: relative;

}
.wide_image a.link { display:block; width:100%; height:100%; text-decoration:none; }
.wide_image .caption {
  width:calc(100% * 1150 / 1280); max-width:1150px; margin:auto; text-align:center; padding:0 50px; 
  position:absolute; top:50%; left:0; right: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;
  -webkit-transform: translate3d(0,-50%,0); transform: translate3d(0,-50%,0);
}
.wide_image .caption .title { font-size:42px; line-height:1.4; margin:0 0 15px 0; }
.wide_image .caption .telno {
	
	font-family: 'Oswald', sans-serif;
	font-size: 42px;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0px;
	margin-left: 0;
	font-weight: 400;
}
.wide_image .caption .desc { font-size:16px; line-height:2.2; }
.wide_image .button {
  font-size:16px; text-decoration:none; padding:0 45px; height:50px; line-height:50px; display:inline-block; margin:25px 0 0 0; border-radius:50px; min-width:230px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}

/* トップページのみフッターの画像をアニメーションさせる */
.home.use_animation #footer_image .title { opacity:0; }
.home.use_animation #footer_image .desc { opacity:0; }
.home.use_animation #footer_image .button { opacity:0; }
.home.use_animation #footer_image.animated .title {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.0s;
  animation: opacityAnimation 1.0s ease forwards 1.0s;
}
.home.use_animation #footer_image.animated .desc {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.5s;
  animation: opacityAnimation 1.0s ease forwards 1.5s;
}
.home.use_animation #footer_image.animated .button {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.0s;
  animation: opacityAnimation 1.0s ease forwards 2.0s;
}



#footer_image .button {
	background-color: #c4dde2;
	color: #111;
	font-weight: bold;
}
#footer_image .button:hover { background-color:#eee; color:#333; }


@media only screen and (max-width:767px){
.wide_image { /*height:400px;*/ width:100%; min-width:0; position:relative;}
.wide_image .caption { width:auto; padding:20px; }
.wide_image .caption .title { font-size:20px!important; }
.wide_image .caption .telno { font-size:48px!important; }
.wide_image .caption .desc { text-align:center; }
.wide_image .caption .desc { font-size:14px!important;}
}






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

@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; } }



.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;
}
} 




.table_11 {
	margin-bottom: 80px;

	background-color: #efefef;
	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;
}



.ul_01 {
	font-size: 14px;
	line-height: 36px;

} 



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






.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: 90%;
	margin-right: auto;

	margin-left: auto;
}
.td_10 {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #666;
	background-color: #c4dde2;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 25px;
	font-size: 15px;
	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: 14px;
	font-weight: normal;
	line-height: 24px;
	padding-right: 25px;
}

.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: #c4dde2;
	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;
}

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


.headline1 {
	border-bottom: 2px solid #ccc;
	padding: 0;
	font-size: 36px;
	font-weight: normal;
	width: 100%;
	margin-top: 0;
	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;
}

} 


.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: #65afc9;
	background-color: #fff;
	font-weight: bold;
	padding-top: 8px;
	padding-right: 15px;
	padding-bottom: 8px;
	padding-left: 15px;
	margin-top: 5px;

	border: 2px solid #65afc9;
}

.hisu {
	font-size: 13px;
	color: #FFF;
	background-color:#65afc9;
	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    : #65afc9;     /* 背景色     */
	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%;
	}

}	

#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;
}   
   





.headline1 {
	border-bottom: 2px solid #ccc;
	padding: 0;
	font-size: 36px;
	font-weight: normal;
	width: 100%;
	margin-top: 0;
	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;
}

} 


.kojinj {
	padding: 28px;
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	border: 2px solid #999;
	background-color: #fff;
	height: 100px;
	overflow-y: scroll;
	margin-bottom: 80px;
	color: #333;
}

.kojinj h3 {
	font-size: 14px;
	margin-top: 24px;
}
.kojinj h2 {
	font-size: 16px;
	line-height: 20px;
	margin: 0px;
	padding: 0px;
}
.kojinj p {
	font-size: 12px;
	line-height: 20px;
}
.kojinj ul {
	font-size: 12px;
	line-height: 20px;

}




/* --------------------------------------------------------------------------------
Oブロック
-------------------------------------------------------------------------------- */
.inner {
  margin: 0 auto;
  width: 1130px;
}



@media only screen and (max-width: 1199px) {
  .inner {
    width: 89.84375%;
  }
}
@media only screen and (max-width: 991px) {
  .inner {
    width: 80%;
  }
  .breadcrumb-wrapper .inner, .main > .inner, .footer .inner {
    box-sizing: border-box;
    padding: 0 6.11111%;
    width: 100%;
  }
}

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

.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: 14px;
  line-height: 2.4;
}
.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: 12px;
    line-height: 2;
  }

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

  .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;
  }
}

.headline1 {
	border-bottom: 2px solid #ccc;
	padding: 0;
	font-size: 32px;
	font-weight: bold;
	width: 100%;
	margin-top: 0;
	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;
}

} 

/* --------------------------------------------------------------------------------
Oブロックここまで
-------------------------------------------------------------------------------- */



.photosection{
    background: #fff;
}

.photobox{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin-top: 5px;
	margin-right: auto;
	margin-bottom: 5px;
	margin-left: auto;
}

.photoitem{
    width: 24.5%;
}


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

    .photoitem{
    width: 49%;
    padding-bottom: 1%;
    }

	.photobox{
	margin-bottom: 0px;
	margin-top: 0px;

}

}


.photosection{
    background: #fff;
	margin-bottom: 120px;
}

.photobox{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin-top: 5px;
	margin-right: auto;
	margin-bottom: 5px;
	margin-left: auto;
}

.photoitem{
    width: 24.5%;
}


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

    .photoitem{
    width: 49%;
    padding-bottom: 1%;
    }

	.photobox{
	margin-bottom: 0px;
	margin-top: 0px;

}

}




