@charset "UTF-8";

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

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
@charset "UTF-8";
/* **************************************************
	余白共通　マージン
************************************************** */

.mg20 {
  margin: 20px; }

.mg0 {
  margin: 0 !important; }

.mgt0 {
  margin-top: 0px !important; ; }

.mgt5 {
  margin-top: 5px; }

.mgt10 {
  margin-top: 10px; }

.mgt15 {
  margin-top: 15px; }

.mgt20 {
  margin-top: 20px; }

.mgt30 {
  margin-top: 30px; }

.mgt40 {
  margin-top: 40px; }

.mgt50 {
  margin-top: 50px; }

.mgt60 {
  margin-top: 60px; }

.mgt70 {
  margin-top: 70px; }

.mgt80 {
  margin-top: 80px; }

.mgt90 {
  margin-top: 90px; }

.mgt100 {
  margin-top: 100px; }

.mgt-5 {
  margin-top: -5px; }

.mgt-10 {
  margin-top: -10px; }

.mgt-15 {
  margin-top: -15px; }

.mgt-20 {
  margin-top: -20px; }

.mgt-25 {
  margin-top: -25px; }

.mgt-30 {
  margin-top: -30px; }

.mgt-35 {
  margin-top: -35px; }

.mgt-40 {
  margin-top: -40px; }

.mgl0 {
  margin-left: 0px; }

.mgl5 {
  margin-left: 5px; }

.mgl10 {
  margin-left: 10px; }

.mgl15 {
  margin-left: 15px; }

.mgl20 {
  margin-left: 20px; }

.mgl30 {
  margin-left: 30px; }

.mgl40 {
  margin-left: 40px; }

.mgl50 {
  margin-left: 50px; }

.mgl60 {
  margin-left: 60px; }

.mgl70 {
  margin-left: 70px; }

.mgl80 {
  margin-left: 80px; }

.mgl90 {
  margin-left: 90px; }

.mgl100 {
  margin-left: 100px; }

.mgl-5 {
  margin-left: -5px; }

.mgl-10 {
  margin-left: -10px; }

.mgl-15 {
  margin-left: -15px; }

.mgl-20 {
  margin-left: -20px; }

.mgl-25 {
  margin-left: -25px; }

.mgl-30 {
  margin-left: -30px; }

.mgl-35 {
  margin-left: -35px; }

.mgl-40 {
  margin-left: -40px; }

.mgr0 {
  margin-right: 0px; }

.mgr5 {
  margin-right: 5px; }

.mgr10 {
  margin-right: 10px; }

.mgr15 {
  margin-right: 15px; }

.mgr20 {
  margin-right: 20px; }

.mgr30 {
  margin-right: 30px; }

.mgr40 {
  margin-right: 40px; }

.mgr50 {
  margin-right: 50px; }

.mgr60 {
  margin-right: 60px; }

.mgr70 {
  margin-right: 70px; }

.mgr80 {
  margin-right: 80px; }

.mgr90 {
  margin-right: 90px; }

.mgr100 {
  margin-right: 100px; }

.mgr-5 {
  margin-right: -5px; }

.mgr-10 {
  margin-right: -10px; }

.mgr-15 {
  margin-right: -15px; }

.mgr-20 {
  margin-right: -20px; }

.mgr-25 {
  margin-right: -25px; }

.mgr-30 {
  margin-right: -30px; }

.mgr-35 {
  margin-right: -35px; }

.mgr-40 {
  margin-right: -40px; }

.mgb0 {
  margin-bottom: 0px; }

.mgb5 {
  margin-bottom: 5px; }

.mgb10 {
  margin-bottom: 10px; }

.mgb15 {
  margin-bottom: 10px; }

.mgb20 {
  margin-bottom: 20px; }

.mgb30 {
  margin-bottom: 30px; }

.mgb40 {
  margin-bottom: 40px; }

.mgb50 {
  margin-bottom: 50px; }

.mgb60 {
  margin-bottom: 60px; }

.mgb70 {
  margin-bottom: 70px; }

.mgb80 {
  margin-bottom: 80px; }

.mgb90 {
  margin-bottom: 90px; }

.mgb100 {
  margin-bottom: 100px; }

.mgb-5 {
  margin-bottom: -5px; }

.mgb-10 {
  margin-bottom: -10px; }

.mgb-15 {
  margin-bottom: -15px; }

.mgb-20 {
  margin-bottom: -20px; }

/* **************************************************
	余白共通　パッディング
************************************************** */
.pd0 {
  padding: 0 !important; }

.pdt0 {
  padding-top: 0px; }

.pdt5 {
  padding-top: 5px; }

.pdt10 {
  padding-top: 10px; }

.pdt15 {
  padding-top: 15px; }

.pdt20 {
  padding-top: 20px; }

.pdt30 {
  padding-top: 30px; }

.pdt40 {
  padding-top: 40px; }

.pdt50 {
  padding-top: 50px; }

.pdt60 {
  padding-top: 60px; }

.pdt70 {
  padding-top: 70px; }

.pdt80 {
  padding-top: 80px; }

.pdt90 {
  padding-top: 90px; }

.pdt100 {
  padding-top: 100px; }

.pdl0 {
  padding-left: 0px; }

.pdl5 {
  padding-left: 5px; }

.pdl10 {
  padding-left: 10px; }

.pdl15 {
  padding-left: 15px; }

.pdl20 {
  padding-left: 20px; }

.pdl30 {
  padding-left: 30px; }

.pdl40 {
  padding-left: 40px; }

.pdl50 {
  padding-left: 50px; }

.pdl60 {
  padding-left: 60px; }

.pdl70 {
  padding-left: 70px; }

.pdl80 {
  padding-left: 80px; }

.pdl90 {
  padding-left: 90px; }

.pdl100 {
  padding-left: 100px; }

.pdr0 {
  padding-right: 0px; }

.pdr5 {
  padding-right: 5px; }

.pdr10 {
  padding-right: 10px; }

.pdr15 {
  padding-right: 15px; }

.pdr20 {
  padding-right: 20px; }

.pdr30 {
  padding-right: 30px; }

.pdr40 {
  padding-right: 40px; }

.pdr50 {
  padding-right: 50px; }

.pdr60 {
  padding-right: 60px; }

.pdr70 {
  padding-right: 70px; }

.pdr80 {
  padding-right: 80px; }

.pdr90 {
  padding-right: 90px; }

.pdr100 {
  padding-right: 100px; }

.pdb0 {
  padding-bottom: 0px; }

.pdb5 {
  padding-bottom: 5px; }

.pdb10 {
  padding-bottom: 10px; }

.pdb15 {
  padding-bottom: 15px; }

.pdb20 {
  padding-bottom: 20px; }

.pdb30 {
  padding-bottom: 30px; }

.pdb40 {
  padding-bottom: 40px; }

.pdb50 {
  padding-bottom: 50px; }

.pdb60 {
  padding-bottom: 60px; }

.pdb70 {
  padding-bottom: 70px; }

.pdb80 {
  padding-bottom: 80px; }

.pdb90 {
  padding-bottom: 90px; }

.pdb100 {
  padding-bottom: 100px; }

/* **************************************************
	改行余白
************************************************** */
.br15em {
  line-height: 1.5em; }

.br2em {
  line-height: 2em; }

.br3em {
  line-height: 3em; }

.br30px {
  line-height: 30px; }

.br40px {
  line-height: 40px; }

.br-pc {
  display: block; }

@media (max-width: 768px) {
  .br-pc {
    display: inline; } }
.br-sp {
  display: inline; }

@media (max-width: 768px) {
  .br-sp {
    display: block; } }
/* **************************************************
	テキスト段組 文字間
************************************************** */
.t-left {
  text-align: left; }

.t-right {
  text-align: right; }

.t-center {
  text-align: center; }

.ls0 {
  letter-spacing: 0px; }

.ls1 {
  letter-spacing: -1px; }

.ls2 {
  letter-spacing: -2px; }

.ls3 {
  letter-spacing: -3px; }

.ls4 {
  letter-spacing: -4px; }

.ls5 {
  letter-spacing: -5px; }

.lh {
  line-height: 1.1em; }

.nakaten {
  display: inline-block;
  margin: 0 -0.2em; }

/* **************************************************
	テキスト
************************************************** */
.fw-normal {
  font-weight: normal !important; }

.fw-bold {
  font-weight: bold !important; }

.fs70 {
  font-size: 70% !important; }

.fs80 {
  font-size: 80% !important; }

.fs90 {
  font-size: 90% !important; }

.fs110 {
  font-size: 110% !important; }

.fs120 {
  font-size: 120% !important; }

.fs130 {
  font-size: 130% !important; }

.fs140 {
  font-size: 140% !important; }

.fs150 {
  font-size: 150% !important; }

.fs12px {
  font-size: 12px !important; }

.fs13px {
  font-size: 13px !important; }

.fs14px {
  font-size: 14px !important; }

.fs15px {
  font-size: 15px !important; }

.fs16px {
  font-size: 16px !important; }

.fs17px {
  font-size: 17px !important; }

.fs18px {
  font-size: 18px !important; }

.fs19px {
  font-size: 19px !important; }

.fs20px {
  font-size: 20px !important; }

.fs21px {
  font-size: 21px !important; }

.fs22px {
  font-size: 22px !important; }

.fs23px {
  font-size: 23px !important; }

.fs24px {
  font-size: 24px !important; }

.fs25px {
  font-size: 25px !important; }

.fs26px {
  font-size: 26px !important; }

.fs27px {
  font-size: 27px !important; }

.fs28px {
  font-size: 28px !important; }

.fs29px {
  font-size: 29px !important; }

.fs30px {
  font-size: 30px !important; }

.fs31px {
  font-size: 31px !important; }

.fs32px {
  font-size: 32px !important; }

.fs33px {
  font-size: 33px !important; }

.fs34px {
  font-size: 34px !important; }

.fs35px {
  font-size: 35px !important; }

.fs36px {
  font-size: 36px !important; }

.fs37px {
  font-size: 37px !important; }

.fs38px {
  font-size: 38px !important; }

.fs39px {
  font-size: 39px !important; }

.fs40px {
  font-size: 40px !important; }

/* **************************************************
	テキスト色
************************************************** */
.color-black {
  color: #000; }

.color-red {
  color: #ee0000; }

.color-green {
  color: #00993b; }

.color-white {
  color: #fff; }

.color-gray {
  color: #555; }

.color-blue {
  color: #1D90CA; }

.color-pink{
	color:#FF6699;}

.color-base_color {
  color: #60ac45; }

.color-opposite_color {
  color: #40ae3c; }

/* **************************************************
	オリジナル
************************************************** */
.html, .body, .layout {
	font-family: 'Sawarabi Mincho', sans-serif!important;

}

a{
  text-decoration: none;
}

a .button{
	text-decoration: none;
}

a:hover > button{
  text-decoration: none;
}

a .btn:hover{
	opacity: 0.8 ;
	background-color: #330000;
  text-decoration: none;
}


.clear{
	clear:both;
}

.goods {
  font-weight: bold;
}
.base {
  width: 480px;
  margin: 15px auto;
  padding: 10px;
  background-color: #eee;
}
.error {
  font-weight: bold;
  color: #c44;
}




/*===============================================
オリジナルメニュー
===============================================*/


main {
  margin-top: 0px;
  transition: transform 0.4s;
  font-family: font-family: 'Noto Sans JP', sans-serif;
}
main.scale-down {
  transform: scale(0.9);
}


/*===============================================
画面の横幅が769px以上（パソコン用）
===============================================*/
@media screen and (min-width: 769px){
.thumb-box{ height:300px;}
.thumb-box-today{ height:330px; }
.thumbnail > img, .thumbnail a > img { height:220px;}
}


/*===============================================
画面の横幅が768pxまで（タブレット用）
===============================================*/
@media screen and (max-width: 768px){
.container{ width:100%; margin:0px auto 10px auto ; }
.thumb-box{ height:200px; }
.thumb-box-today{ height:230px; }
.thumbnail > img, .thumbnail a > img { height:190px;}
}

/*===============================================
画面の横幅が700pxまで（タブレット用）
===============================================*/
@media screen and (max-width: 700px){
.container{ width:100%; margin:0px auto 10px auto ; }
.thumb-box{ height:200px; }
.thumb-box-today{ height:230px; }
.thumbnail > img, .thumbnail a > img { height:220px;}
}


/*===============================================
画面の横幅が688pxまで（タブレット用）
===============================================*/
@media screen and (max-width: 868px){
.container{ width:100%; margin:0px auto 10px auto ; }
.thumb-box{ height:250px; }
.thumb-box-today{ height:280px; }
.thumbnail > img, .thumbnail a > img { height:150px;}
}

/*===============================================
画面の横幅が640pxまで（スマホ用）
===============================================*/
@media screen and (max-width:640px){
.container{ width:100%; margin:0px auto 10px auto ; }
.thumb-box{ height:200px; }
.thumb-box-today{ height:230px; }
.thumbnail > img, .thumbnail a > img { height:140px;}
}

#page-topto {
	position:fixed;
	z-index:2;
	bottom: 80px;
	right: 20px;
	font-size: 0.7em;
}
#page-topto a {
	background: #910b6f;
	text-decoration: none;
	color: #fff;
	width: 50px;
	padding: 15px 0;
	text-align: center;
	display: block;
	border-radius: 5px;

}
#page-topto a:hover {
	text-decoration: none;
	background: #770909;
}

/*スマホ下のメニュー*/

@media screen and (max-width: 600px) {
  .col1, .col2, .col3, .col4, .col5, .col6,
  .col7, .col8, .col9, .col10, .col11, .col12 {
    float: none;
    width: 100%;
    margin-left: 0;
  }

  .row .col6:nth-child(odd), .row .col4:nth-child(3n+1),
  .row .col3:nth-child(4n+1), .row .col2:nth-child(6n+1),
  .row .col1:nth-child(12n+1) {
    margin-left: 0;
  }
}
.twoEqualParts,
.threeEqualParts,
.fourEqualParts,
.fiveEqualParts {
  width: 100%;
  zoom: 1;
}
.twoEqualParts:before, .twoEqualParts:after,
.threeEqualParts:before,
.threeEqualParts:after,
.fourEqualParts:before,
.fourEqualParts:after,
.fiveEqualParts:before,
.fiveEqualParts:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden;
}
.twoEqualParts:after,
.threeEqualParts:after,
.fourEqualParts:after,
.fiveEqualParts:after {
  clear: both;
}
.twoEqualParts .col,
.threeEqualParts .col,
.fourEqualParts .col,
.fiveEqualParts .col {
  float: left;
}

.twoEqualParts .col {
  width: 50%;
}

.threeEqualParts .col {
  width: 33.3333%;
}

.fourEqualParts .col {
  width: 25%;
}

.fiveEqualParts .col {
  width: 20%;
}

/*
a:hover {

  border-bottom: none;
}
*/
.tab .col a {
  display: block;
  box-sizing: border-box;
  padding: 5px auto 5px auto;
  text-align: center;
  border-right: 1px solid #000;
}
.tab .col:last-child a {
  border-right: none;
}


/*
.list01 li:last-child {
  border-bottom: none;

}
  */
.list01 li a {
  display: block;
  padding: 10px;
}


.container_bg{
	margin:10px auto 0px auto;
  position: relative;
  width:100%;
  height: 100%;
  padding-bottom:20%;
	background:url('../images/ripped.png') no-repeat center top;
  position: relative;
  background-size:100% 100%;
  display:block;
}

.container_bg_sp{
  margin:10px auto 0px auto;
  position: relative;
  width:100%;
  height: 100%;
  padding-bottom:20%;
  background:url('../images/ripped2.png') no-repeat center top;
  position: relative;
  background-size:100% 100%;
  display:block;
}


/*.container_bg::before{
  background-color: rgba(0,0,0,0.5);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ' ';
}
*/
.container_bg2{
  margin:0px auto 0px auto;
  position: relative;
  width:100%;
  height: 100%;
  padding-bottom:30%;
  background: #000000 url('../images/notebook.jpg') no-repeat center top;
  background-size:100% 100%;
  display:block;
}

.logo{
  position:fixed;
  left:10px;
  top:0px;
}

.mail{
  position:fixed;
  right:30px;
  bottom:30px;
  z-index:100;
}

p{
  line-height: 1.4em;
}

.bluecatch{
position: relative;
padding: 0.5em;
background: #a6d3c8;
color: white;
}

.bluecatch::before {
position: absolute;
content: '';
top: 100%;
left: 0;
border: none;
border-bottom: solid 15px transparent;
border-right: solid 20px rgb(149, 158, 155);
}

.point{
position: relative;
border-top: solid 2px #80c8d1;
border-bottom: solid 2px #80c8d1;
background: #f4f4f4;
line-height: 1.4;
padding: 0.4em 0.5em;
margin: 2em 0 0.5em;
}

.point:after {/*タブ*/
position: absolute;
font-family: "FontAwesome",'Quicksand','Avenir','Arial',sans-serif;
content: '\f0a7\ POINT';
background: #80c8d1;
color: #fff;
left: 0px;
bottom: 100%;
border-radius: 5px 5px 0 0;
padding: 5px 7px 3px;
font-size: 0.7em;
line-height: 1;
letter-spacing: 0.05em;
  }

.flatgreen{
  position: relative;
  color: white;
  background: #81d0cb;
  line-height: 1.4;
  padding: 0.5em 0.5em 0.5em 1.8em;
}

.flatgreen:before {/*疑似要素*/
  font-family: "FontAwesome";
  content: "\f14a";
  position: absolute;
  left : 0.5em; /*左端からのアイコンまでの距離*/
}


.bluestrong{
position: relative;
}

.bluestrong:after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 7px;
background: -webkit-repeating-linear-gradient(-45deg, #6ad1c8, #6ad1c8 2px, #fff 2px, #fff 4px);
background: repeating-linear-gradient(-45deg, #6ad1c8, #6ad1c8 2px, #fff 2px, #fff 4px);
}


.box {
position: relative;
line-height: 1.4;
padding:0.25em 1em;
display: inline-block;
top:0;
}

.box:before,h5.box:after{ 
  position: absolute;
  top: 0;
  content:'';
width: 8px;
height: 100%;
display: inline-block;
}

.box:before{
  border-top: dotted 1px #535aaa;
border-left: dotted 1px #535aaa;
border-bottom: dotted 1px #535aaa;
  left: 0;
}

.box:after{
  content: '';
  border-top: dotted 1px #535aaa;
  border-right: dotted 1px #535aaa;
  border-bottom: dotted 1px #535aaa;
  right: 0;
}

.dbox{
position: relative;
padding: 0.35em 0.5em;
background: #b6e9ff;
color: #393939;
}

.dbox:before{
content: " ";
position: absolute;
top: -16px;
left: 0;
width: -webkit-calc(100% - 16px);
width: calc(100% - 16px);
height: 0;
border: solid 8px transparent;
border-bottom-color: #b2ddf0;
}

.naname {
position: relative;
padding: 0.6em;
background: -webkit-repeating-linear-gradient(-45deg, #fff5df, #fff5df 4px,#ffe4b1 3px, #ffe4b1 8px);
background: repeating-linear-gradient(-45deg, #fff5df, #fff5df 4px,#ffe4b1 3px, #ffe4b1 8px);
border-radius: 7px;
}

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


.icon-stats {
position: relative;
background: #f4f4f4;
padding: 10px 5px 0px 20px;
font-size: 20px;
color: #474747;
border-radius: 0 10px 10px 0;
padding-left: 30px;
line-height: 10px;
background: url(../images/analytics/041-stats.png) no-repeat;
background-size: 20px 20px;
}


.marukakomi {
background: #b0dcfa; /*背景色*/
padding: 0.5em;/*文字周りの余白*/
color: white;/*文字を白に*/
border-radius: 0.5em;/*角の丸み*/
}

.kakomi{
position: relative;
padding: 0.25em 1em;
border-top: solid 2px black;
border-bottom: solid 2px black;
}
.kakomi:before, .kakomi:after{
content: '';
position: absolute;
top: -7px;
width: 2px;
  height: -webkit-calc(100% + 14px);
height: calc(100% + 14px);
background-color: black;
}
.kakomi:before {left: 7px;}
.kakomi:after {right: 7px;}

/*fadein->js*/
.fade-in{
    opacity:0.0;
    transform:translate(0, 50px);
    transition:all 500ms;
}

.scroll-in{
    opacity:1;
    transform:translate(0, 0);
}

/*box-shadow*/
.box-shadow{
  position: relative;
}
.box-shadow::after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 15px;
  right: 15px;
  z-index: -1;
  content: '';
  box-shadow: 0 10px 10px rgba(0,0,0,.3);
  border-radius: 100px / 15px;
}

.menu-icon{ color:#410000; }

.header-in .site-name-text{display:none;}




h1.entry-title {
position: relative;
padding: 0.6em;
background: -webkit-repeating-linear-gradient(-45deg, #ffece7, #ffece7 4px,#fffdfd 3px, #fffdfd 8px);
background: repeating-linear-gradient(-45deg, #ffece7, #ffece7 4px,#fffdfd 3px, #fffdfd 8px);
border-radius: 7px;
}

h1.entry-title:after {
position: absolute;
content: '';
top: 100%;
left: 30px;
border: 15px solid transparent;
border-top: 15px solid #ffece7;
width: 0;
height: 0;
}



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

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

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

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

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
   .header-in{
    margin-top: 50px;
    height: 225px;
  }
}

.site-logo-image{display:none;}

.fdt-logo {
  margin-bottom:10px;
}