@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Template:   cocoon-master
Version:    1.0.7
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/

/************************************
** 共通スタイル
************************************/

/* レイアウト */
#main {
    border-style : none;
}
#header {
  margin-bottom: 0;
  padding-top : 24px;
}
/* タイトル */
#site-title {
  font-size: 16px;
}

#site-description {
  color : #fafafa;
}
/* 目次 */
#page-index{
  background-color : #fcfcfc;border-width : 1px;border-style : solid;border-color : #cccccc;
  font-size : 18px;
  padding-top : 8px;
  padding-left : 8px;
  padding-right : 8px;
  padding-bottom : 8px;
}

/* 見出しデザイン */
.article h1 {
    font-size: 18px;
    font-weight : bold;
}

.article h2 {
    color : #000097;/*文字色*/ 
    font-size : 16px;
    font-weight : bold;
    letter-spacing : 1px;
    text-align : center;
    padding-top : 16px;
    padding-bottom : 16px;
    line-height : 20px;
    margin-top : 48px;
    margin-bottom : 12px;
    border-bottom : 5px double #2e5ade;
    border-top : 5px double #2e5ade;
    background: linear-gradient(#ebf6ff, #d0e8ff);
    
}
.article h3 {
    color: #000097;/*文字色*/
    border-top-style : none;    
    font-size: 16px;
    box-shadow: 1px 1px 2px lightgray;
    font-weight : bold;
    border-left: 6px solid #000097;
    border-bottom: 2px solid #000097;
    margin-top : 20px;
    margin-bottom : 20px;
    padding:10px 0;
    padding-left : 12px;
}
.article h4 {
  color: #000097;/*文字色*/
  font-size: 16px;
  font-weight : bold;
  border-bottom: 1px solid #000097;
  margin-bottom : 18px;
  position: relative;
  border-top-width : 0px;
}
.article h5 {
    color: #000097;/*文字色*/
    border-top-style : none;    
    font-size: 16px;
    box-shadow: 1px 1px 2px lightgray;
    font-weight : bold;
    border-left: 6px solid #000097;
    border-bottom: 2px solid #000097;
    margin-top : 20px;
    margin-bottom : 20px;
    padding:10px 0;
    padding-left : 12px;
}
.article h6 {
  color: #000097;/*文字色*/
  font-size: 16px;
  font-weight : bold;
  border-bottom: 1px solid #000097;
  margin-bottom : 18px;
  position: relative;
  border-top-width : 0px;
}
p {
   text-align: justify; /* 両端揃え */
   text-justify: inter-ideograph; /* 両端揃えの種類 */
}
/* 画像 */

a:hover img{
 opacity:0.8;
 filter:alpha(opacity=80);
-ms-filter: “alpha( opacity=80 )”;
 }

.border_radius {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

/* 表関連 */

td{
	background-color : white;
}

/* テキストのカラーとサイズ */
.color-red{
  color : red;
}

.color-blue{
  color : blue;
}

.color-royalblue{
  color : #0080ff;
}

.color-gray{
  color : #808080;
}

.color-lightgray{
  color : #d3d3d3;
}


.font-size14{
  font-size : 14px;
}

.font-size16{
  font-size : 16px;
}

.font-size18{
  font-size : 18px;
}

.font-size20{
  font-size : 20px;
}

.bold{
  font-weight : bold;
}

.color-orange{
  color : #ff7f50;
}

.underline{
  text-decoration : underline;
}

.td_bg{
   background: linear-gradient(#ffffff, #e9e9e9);;
}

.td_bg02{
  background-color : #f8f8f8;
}

.td_bg03{
  color : white;
  background-color : #6a6a6a;
}

.td_bg05{
  color : #ffffff;
  background-color : #004080;
}

.td_ave{
   background-color : #fafafa;
}

.td_yellow{
  background-color : #ffffe6;
}
.td-century{
  background-color : #fff7f2;
}

.td_lightgray{
  color : #c0c0c0;
}

.blod{
  font-weight : bold;
}

.no_underline{
  text-decoration : none;
}

.date_weather{
  font-weight : 600;
  font-size : 15px;
  color : white;
  background-color : #000040;
  padding-top : 3px;
  width : 160px;
  padding-left : 6px;
  padding-right : 6px;
  padding-bottom : 3px;
  text-align : center;
  letter-spacing : 1px;
}
.text-right{
  text-align : right;
}
.right-link{
  text-align : right;
  padding-top : 4px;
  padding-left : 4px;
  padding-right : 6px;
  padding-bottom : 4px;
  margin-top : 4px;
  margin-left : 4px;
  margin-right : 4px;
  margin-bottom : 4px;
}
.text-left{
  text-align : left;
}
.text-center{
  text-align : center;
  padding-top : 6px;
  padding-bottom : 6px;
  margin-top : 6px;
  margin-bottom : 6px;
}
/* タブ背景 */
.bg_tab{
   background: linear-gradient(#ffffff,  #e9e9e9);
   text-align : center;
   font-weight : bold;
   border-left-width : 1px;
   border-right-width : 1px;
   border-left-style : solid;
   border-right-style : solid;
   border-left-color : silver;
   border-right-color : silver;
}

/* テキストボタン（青） */

.btn-flat-border {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #4169e1;
  margin-top : 8px;
  margin-bottom : 8px;
  border: solid 1px #4169e1;
  border-radius: 3px;
  transition: .4s;
  text-align : center;
  width : 100%;

}
.btn-flat-border:hover {
  background: #4169e1;
  color: white;
}
/* テキストボタン（お知らせタイトル） */
.oshirase{
  color : #373737;
  background-color : #fafafa;
  text-align : center;
  padding-top : 10px;
  padding-bottom : 10px;
  margin-top : 10px;
  margin-bottom : 24px;
}
/* テキストボタン（お知らせボタン） */
section {
  max-width: auto;
  margin-bottom : 16px;
}
a.btn_10 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  box-sizing: border-box;
  background: #fff;
  position: relative;
}
a.btn_10 span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 50px;
  background: #fff;
  box-sizing: border-box;
  color: #333;
  font-size: 14px;
  letter-spacing: 0.1em;
  text-decoration: none;
  box-shadow: 0px 5px 12px #CAD4E2, -4px -4px 4px #FFF;
  border-radius: 10px;
  position: absolute;
  top: -5px;
  left: 0;
  transition-duration: 0.2s;
}
a.btn_10:hover span {
  left: 0;
  top: 0;
  box-shadow: 0 0 4px #CAD4E2, -2px -2px 2px #FFF;
}

/************************************
** リストデザイン
************************************/

.list-1{
    list-style: none;
    padding:0 !important;
    margin:0;
}
.list-1 li { 
    position: relative;
    margin:0.5em 0 !important;
    padding-left: 25px;
}
.list-1 li:before {
   background-color:  #ffa952; /* 点の色 */
   position: absolute;
   content: '';
   top:0.9em;
   left: 0.5em;
   width: 7px;
   height: 7px;
   border-radius: 4px;
}

.list-2{
   list-style: none;
   padding:0 !important;
   margin:0;
}
.list-2 li { 
   border-bottom:2px dashed;
   border-color:#cdcdcd; /* 線の色 */
   position: relative;
   margin:0.5em 0 !important;
   max-width:auto; /* 横幅 */
   padding: 0 0 0.5em 1.4em;
}
.list-2 li:last-child{ 
   border:none;
}
.list-2 li:before {
   background-color:  #ffa952; /* 点の色 */
   position: absolute;
   content: '';
   top:0.9em;
   left: 0.5em;
   width: 7px;
   height: 7px;
   border-radius: 4px;
}

.list-3{
   list-style: none;
   padding:0 !important;
   margin:0;
}
.list-3 li { 
   border-bottom:2px dashed;
   border-color:#cdcdcd; /* 線の色 */
   position: relative;
   margin:0.5em 0 !important;
   max-width:auto; /* 横幅 */
   padding: 0 0 0.5em 1.4em;
}
.list-3 li:before {
   font-family: FontAwesome;
   content: "\f058"; /*アイコン*/
   color:  #ffa952; /* 色 */
   position: absolute;
   left:0;

}

.list-4{
  list-style: none;
  padding:0 !important;
  margin:0;
}
.list-4{
  list-style: none;
  padding:0;
  margin:0;
}
.list-4 li { 
  border-bottom:2px dashed;
  border-color:#cdcdcd; /* 線の色 */
  position: relative;
  margin:0.5em 0 !important;
  max-width:500px; /* 横幅 */
  padding: 0 0 0.5em 1.4em;
}
.list-4 li:last-child{ 
  border:none;
}
.list-4 li:before {
  font-family: FontAwesome;
  content: "\f27a"; /*アイコン*/
  color:  #ffa952; /* 点の色 */
  position: absolute;
  left:0;
}

.list-5{
   counter-reset:number; 
   list-style-type: none; 
   padding:0 !important;
   margin:0;
}
.list-5 li { 
   position: relative;
   margin:0.5em 0 !important;
   padding-left: 1.8em;
}
.list-5 li:before {
   counter-increment: number;
   content: counter(number);
   background-color: #ffa952; /* 文字背景色 */
   color: #fff; /* 文字色 */
   position: absolute;
   font-weight:bold;
   font-size: 14px;
   border-radius: 50%;
   left: 0;
   top:0.5em;
   width: 22px;
   height: 22px;
   line-height: 22px;
   text-align: center;
}

.list-6{
   counter-reset:number;
   list-style-type: none;
   padding:0 !important;
   margin:0;
}
.list-6 li { 
   border-bottom:2px dashed;
   border-color:#cdcdcd; /* 線の色 */
   position: relative;
   margin:0.5em 0 !important;
   max-width:500px; /* 横幅 */
   padding: 0 0 0.5em 1.8em;
}
.list-6 li:last-child { 
   border:none;
}
.list-6 li:before {
   counter-increment: number;
   content: counter(number);
   background-color: #ffa952; /* 文字背景色 */
   color: #fff; /* 文字色 */
   position: absolute;
   font-weight:bold;
   font-size: 14px;
   border-radius: 50%;
   left: 0;
   top:0.5em;
   width: 22px;
   height: 22px;
   line-height: 22px;
   text-align: center;
}

.list-7{
   counter-reset:number; 
   list-style-type: none; 
   padding:0 !important;
   margin:0;
}
.list-7 li { 
   position: relative;
   margin:0.5em 0 !important;
   padding-left: 1.8em;
}
.list-7 li:before {
   counter-increment: number;
   content: counter(number);
   background-color: #ffa952; /* 文字背景色 */
   color: #fff; /* 文字色 */
   position: absolute;
   font-weight:bold;
   font-size: 14px;
   left: 0;
   top:0.5em;
   width: 22px;
   height: 22px;
   line-height: 22px;
   text-align: center;
}

.list-8{
   counter-reset:number;
   list-style-type: none;
   padding:0 !important;
   margin:0;
}
.list-8 li { 
   border-bottom:2px dashed;
   border-color:#cdcdcd; /* 線の色 */
   position: relative;
   margin:0.5em 0 !important;
   max-width:auto; /* 横幅 */
   padding: 0 0 0.5em 1.8em;
}
.list-8 li:last-child { 
   border:none;
}
.list-8 li:before {
   counter-increment: number;
   content: counter(number);
   background-color: #ffa952; /* 文字背景色 */
   color: #fff; /* 文字色 */
   position: absolute;
   font-weight:bold;
   font-size: 14px;
   left: 0;
   top:0.5em;
   width: 22px;
   height: 22px;
   line-height: 22px;
   text-align: center;
}






/************************************
** BOX関連ノート関連
************************************/
/* ボックス27 */

.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 2px #5eaddb;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #5eaddb;
    color: #ffffff;
 
}
.box27 p {
    margin: 0; 
    padding: 0;
}

/* ボックス29 */


.box29 {
    margin: 2em 0;
    background: #dcefff;
}
.box29 .box-title {
    font-size: 1.2em;
    background: #5fb3f5;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box29 p {
    padding: 15px 20px;
    margin: 0;
}

/* ボックス4 */

.box4-blue {
	position: relative;	/* 配置に関するもの(ここを基準に) */
	max-width:600px; /* ボックスの横幅 */
	margin: 2em auto;	/* ボックスの外側余白(上下:2em　左右:auto) */
	padding: 1.7em 2em;	/* ボックスの内側余白(上下:1.7em　左右:2em) */
	border: 2px dotted #0e7ac4;	/* ボックスの線 (太さ　線の種類　線の色)*/
	border-radius: 4px;	/* ボックスの角丸 */
}
.box4-blue .box-title {
	position: absolute; /* 配置に関するもの(ここを動かす) */
	top: -10px; /* 上から（-10px）移動*/
	left: 30px; /* 左から(30px)移動 */
	background: #fff; /* タイトル背景色 */
	color: #0e7ac4; /* タイトル文字色 */
	padding: 0 10px;/* タイトルの余白 */
	line-height: 1;/* タイトルの行の高さ */
	font-size: 20px;/* タイトル文字の大きさ */
	font-weight: bold;/* タイトル文字の太さ */
}
.box4-blue p {
	margin: 0; /* 文字の外側余白リセット*/
	padding: 0; /* 文字の内側余白リセット*/
}

.note{
 
  border-top-left-radius: 5px 5px; border-top-right-radius: 5px 5px;
  border-bottom-right-radius: 5px 5px; border-bottom-left-radius: 5px 5px;
  padding : 12px 8px;
  margin-top : 12px;
  letter-spacing : 1px;
  background-color : #fafafa;
}

.note_yellow{
  background-color : #fffff2;
  padding-top : 6px;
  padding-left : 6px;
  padding-right : 6px;
  padding-bottom : 6px;
}




/************************************
** メールフォームボタン
************************************/
.submit {
  font-size: 20px; /* ピクセルで指定 */
}
  button[type="submit"] {
      width: 100%;
      background: #4a90e2;
      color: white;
      padding: 12px;
      border: none;
      border-radius: 8px;
      font-size: 16px;
      cursor: pointer;
      transition: background 0.3s;
    }

    button[type="submit"]:hover {
      background: #357ABD;}

.check{
  font-weight : bold;
  color : white;
  background-color : orange;
  padding-top : 2px;
  padding-left : 2px;
  padding-right : 4px;
  padding-bottom : 2px;
  margin-top : 2px;
  margin-left : 4px;
  margin-right : 4px;
  margin-bottom : 2px;
  width : 40px;
  text-align : center;
  font-size : 14px;
}

/************************************
** 光る画像
************************************/
.reflection{
display:inline-block;
position:relative;
overflow:hidden;
}
 
.reflection:after {
content:"";
height:100%;
width:30px;
position:absolute;
top:-180px;
left:0;
background-color: #fff;
opacity:0;
-webkit-transform: rotate(45deg);
-webkit-animation: reflection 5s ease-in-out infinite;
}
 
@keyframes reflection {
0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
/* 光るテキストボタン */

a.btn_29 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: auto;
	margin: auto;
	padding: 1rem 4rem;
	position: relative;
	border-radius: 5px;
	border: 2px solid #27acd9;
	font-weight: bold;
	letter-spacing: 2px;
	background: transparent;
	color: #27acd9;
	overflow: hidden;
	-webkit-transition: all 0.2s ease-in;
	-moz-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
}
a.btn_29:hover {
	color: #fff;
	background: #27acd9;
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
a.btn_29:hover::before {
	-webkit-animation: sh02 0.5s 0s linear;
	-moz-animation: sh02 0.5s 0s linear;
	animation: light 0.5s 0s linear;
}
a.btn_29::before {
	content: '';
	display: block;
	width: 0px;
	height: 86%;
	position: absolute;
	top: 7%;
	left: 0%;
	opacity: 0;
	background: #fff;
	box-shadow: 0 0 50px 30px #fff;
	-webkit-transform: skewX(-20deg);
	-moz-transform: skewX(-20deg);
	-ms-transform: skewX(-20deg);
	-o-transform: skewX(-20deg);
	transform: skewX(-20deg);
}
@keyframes light {
	from {opacity: 0; left: 0%;}
	50% {opacity: 1;}
	to {opacity: 0;left: 100%;}
}

/************************************
** サイドバナー
************************************/

/* サイドメニューボタン */

.btn-menu-border {
  display: inline-block;
  padding: 1em 1em;
  text-decoration: none;
  font-size : 17px;
  color: #000000;
  background: -moz-linear-gradient(top, #ffffff, #f5f5f5);
  background: -webkit-linear-gradient(top, #ffffff, #f5f5f5);
  background: linear-gradient(to bottom, #ffffff, #f5f5f5);
  margin-top : 2px;
  margin-bottom : 8px;
  border: solid 1px #808080;
  border-radius: 3px;
  transition: .4s;
  text-align : center;
  width : 100%;
  height : 70px;

}
.btn-menu-border:hover {
  background: -moz-linear-gradient(top, #ffffff, #fffff0);
  background: -webkit-linear-gradient(top, #ffffff, #fffff0);
  background: linear-gradient(to bottom, #ffffff, #fffff0);
  color: #000000;
}


/* ノート */
.note{
  border-top-left-radius: 5px 5px; border-top-right-radius: 5px 5px;
  border-bottom-right-radius: 5px 5px; border-bottom-left-radius: 5px 5px;
  padding : 12px 8px;
  margin-top : 12px;
  letter-spacing : 1px;
  background-color : #fafafa;
}
.note_yellow{
  background-color : #fffff2;
  padding-top : 6px;
  padding-left : 6px;
  padding-right : 6px;
  padding-bottom : 6px;
}
.note_01{
 border-top-left-radius: 5px 5px; border-top-right-radius: 5px 5px;
 border-bottom-right-radius: 5px 5px; border-bottom-left-radius: 5px 5px;
 padding: 8px; border: 1px solid silver;
 margin-top : 12px;
 letter-spacing : 1px;
}
.note_04{
  background-color : #fffbff;
  padding-top : 12px;
  padding-left : 12px;
  padding-right : 12px;
  padding-bottom : 12px;
  margin-top : 12px;
  margin-bottom : 12px;
}

/* ブログカード */

.blogcard-snippet,
.blogcard-footer {
  display: none;
}
.blogcard-wrap {
  transition: all .3s;
  max-width: 600px;
  margin: 2em auto;
}
.blogcard {
  border:1px solid #eaeaea !important;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .15);
  padding: 10px;
}
.blogcard-wrap:hover {
  background: none;
  transform: translateY(-3px);
  box-shadow: 0px 10px 20px rgba(0, 0, 0, .1);
}
.blogcard-thumbnail {
  margin: 0;
}
.blogcard-thumbnail img {
  display: block;
}
.blogcard-title {
  color: #555;
  letter-spacing: 0.5px;
  font-size: 15px;
  line-height: 1.5;
  margin: 10px 0 0 0;
  height: 45px;
  overflow: hidden;
}
.blogcard-content {
  min-height: auto;
  margin-left: 185px;
  padding-right: 6px;
}
.blogcard-label {
  top: -11px;
  left: 9px;
  padding: 3px 0.6em;
  background:#aaa;
  padding: 1px 10px;
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 1px;
}
.blogcard-content:after {
  content: "クリックして読む";
  background: #1e90ff; /* 背景色 */
  display: block;
  text-align: center;
  color: #fff;
  font-weight: 600;
  letter-spacing: 1px;
  width: 180px;
  border-radius: 20px;
  font-size: 13px;
  padding: 1px 0;
  margin-top: 6px;
}
@media screen and (max-width: 834px) {
  .blogcard-content {
    margin-left: 130px;
  }
  .blogcard-title {
    font-size:12px;
    line-height: 1.5;
    height: 35px;
    margin:0;
  }
  .blogcard-content:after {
    content: "タップして読む";
  }
  .blogcard-thumbnail{
    width:120px;
  }
}
@media screen and (max-width: 560px) {
  .blogcard-content:after {
    width: 120px;
    font-size: 12px;
  }
  .blogcard-title {
    margin:0;
  }
}
@media screen and (max-width: 320px) {
  .blogcard-thumbnail {
    width: 100px;
  }
  .blogcard-content {
    margin-left: 110px;
  }
  .blogcard-title {
    height: 35px;
  }
}

/* テキストボタン */
.sp_menu a{
display: inline-block;
width: 17em;
border: 1px solid skyblue;
border-radius: 0.75em;
padding: 1.0em;
margin: 0px 0.15em 0.5em 0px;
background-color: #eeffff;
text-decoration: none;
line-height: 1.4;
text-align : center;
}
.sp_menu02 a{
display: inline-block;
width: 14em;
border: 1px solid gray;
border-radius: 0.2em;
padding: 1.0em;
margin: 0px 0.15em 0.5em 0px;
background-color: #f5f5f5;
text-decoration: none;
line-height: 1.4;
text-align : center;
}
/* テキストボタン */
.data_name{
	text-align: center;
background-color: #f2f2f2;
font-size : 14px;
}
table{
	background-color: gray;
border-width : 0px;
margin-top : 0px;
margin-left : 0px;
margin-right : 0px;
margin-bottom : 0px;
padding-top : 0px;
padding-left : 0px;
padding-right : 0px;
padding-bottom : 0px;
}
.month{
	background-color: #f6f6f6;
text-align: center;
}
.ave{
	font-size : 14px;
}
.day{
	font-size : 14px;
}
.center{
	text-align : center;
}
.event{
	background-color : #f2ffff;
padding-top : 2px;
padding-left : 2px;
padding-right : 2px;
padding-bottom : 2px;border-width : 1px;border-style : solid;border-color : silver;
}.event{
	font-size : 14px;
background-color : #f2ffff;
padding-top : 2px;
padding-left : 2px;
padding-right : 2px;
padding-bottom : 2px;border-width : 1px;border-style : solid;border-color : silver;
}

/* テキストボタン（メイン） */
a.cp_btn {
	display: block;
	width: auto;
	padding: 1.8em;
	text-align: center;
        font-weight : bold;
	text-decoration: none;
	color: #191970;
	border: 2px solid #191970;
	border-radius: 3px;
	transition: .4s;
}
a.cp_btn:hover {
	background: #191970;
	color: #fff;
}
/* アコーディオンポインター */

summary {
  cursor: pointer;
  margin-bottom : 12px;
  font-weight : bold;
}
/* 装飾 */
.relation{
	background-color : #f2f9ff;border-width : 1px;border-style : solid;border-color : #004080;
padding-top : 6px;
padding-left : 6px;
padding-right : 6px;
padding-bottom : 6px;
}

.frame01{
	border-width : 1px;border-style : solid;border-color : gray;
}

.comments{
font-size : 14px;
line-height : 24px;
background-color : #fafafa;
letter-spacing : 1px;
padding-top : 8px;
padding-left : 8px;
padding-right : 8px;
padding-bottom : 8px;
border-width : 1px;
border-style : solid;
border-color : silver;border-top-left-radius : 5px 5px;border-top-right-radius : 5px 5px;border-bottom-right-radius : 5px 5px;border-bottom-left-radius : 5px 5px;
}
.contact-form{
  text-align : center;
  padding-top : 12px;
  padding-bottom : 12px;
  border-top-width : 1px;
  border-bottom-width : 1px;
  border-top-style : solid;
  border-bottom-style : solid;
  border-top-color : silver;
  border-bottom-color : silver;
  background-color : #fcfcfc;
  font-size : 18px;
  font-weight : bold;
}

/************************************
** 東洋フォーム独自
************************************/

.toyo {
  position: relative;
  display: inline-block;
  padding: 0 65px;
  text-align: center;
}

.toyo:before,
.toyo:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 6px;
  content: '';
  border-top: solid 2px #000;
  border-bottom: solid 2px #000;
}

.toyo:before {
  left: 0;
}

.toyo:after {
  right: 0;
}

/* 印刷工房サイドボタン */

.btn-flat-vertical-border {
  position: relative;
  margin-bottom : 8px;
  text-align : center;
  width:100%;
  height:100%;
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  border-left: solid 4px #da70d6;
  border-right: solid 4px #da70d6;
  color: #da70d6;
  background: #fffbff;
  transition: .4s;
}

.btn-flat-vertical-border:hover {
  background: #ffccff;
  color: #FFF;
}

/* sns下サイドボタン */

.btn-sns-under{
    height:80px;
    line-height:80px;
}
.btn-sns-under a{
    display:block;
    width:100%;
    height:100%;
    text-decoration: none;
    background:#e0ffff;
    text-align:center;
    color:#000000;
    font-size:20px;
    font-weight:bold;
    border-radius:10px;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
}
.btn-sns-under a:hover{
    background:#4169e1;
    color:#F0FCFF;
    margin-left:0px;
    margin-top:0px;
    box-shadow:none;
}



/* 横並び */

.flex-02{
    display: flex;/*2列*/
    padding: 5px;
}
.flex-02 div{
    width: 50%;
    margin: 5px;
    padding: 5px;
}


.flex-03{
    display: flex;/*3列*/
    padding: 5px;
}
.flex-03 div{
    width: 33.3333%;
    margin: 5px;
    padding: 5px;
}



/* メールフォーム */

.mail-title01{
  font-size : 18px;
  font-weight : bold;
  padding-left : 10px;
  padding-bottom : 6px;
  margin-top : 10px;
  margin-bottom : 12px;
  border-left-width : 6px;
  border-bottom-width : 1px;
  border-left-style : solid;
  border-bottom-style : solid;
  border-left-color : silver;
  border-bottom-color : silver;
  background-color : #fafafa;
  padding-top : 6px;
}

.form-range{
  background-color : #fbfdff;
  padding-top : 8px;
  padding-left : 6px;
  padding-right : 6px;
  padding-bottom : 8px;
  border-top-width : 1px;
  border-bottom-width : 1px;
  border-top-style : solid;
  border-bottom-style : solid;
  border-top-color : #aad5ff;
  border-bottom-color : #aad5ff;
}


.date-time::after{
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #000040;
  width: 0;
  height: 0;
}

/************************************
** reCAPTCHAの保護マーク非表示
************************************/

.grecaptcha-badge { visibility: hidden; }

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1240px以下*/
@media screen and (max-width: 1240px){
  /*必要ならばここにコードを書く*/
}

/*1030px以下*/
@media screen and (max-width: 1030px){
  /*必要ならばここにコードを書く*/
}

/*768px以下*/
@media screen and (max-width: 768px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
