﻿
/*--------------------------------------------
 色 ・　文字
----------------------------------------------*/
:root{
    --color1: #014cca;
    --color2: #15abcc;
    --color3: #1F6AAD;
    --color4: #d4f4fb;
	--text: #111111;
    --base: #ffffff;
    
    --font1: 16px;
    --fontB1: 32px;
    --font-jp: 'Noto Sans JP', "游ゴシック Medium", sans-serif;
}
/* スマホ */
@media screen and (max-width: 667px){
    :root{
        --fontB1: 22px;
    }
}
/*--------------------------------------------
 
----------------------------------------------*/




/*--------------------------------------------
 
----------------------------------------------*/




/*--------------------------------------------
 プライバシーポリシー
----------------------------------------------*/



/*--------------------------------------------
 お問い合わせ
----------------------------------------------*/


/* --------------------------------------------
 メインイメージ 
---------------------------------------------*/

/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){}

/* --------------------------------------------
 リンクボタン 
---------------------------------------------*/
.linkStyle,a{
	color: var(--color1);
	text-decoration: underline;
	transition: all 0.5s;
}
a{
    text-decoration: none;
}
.linkStyle:hover,a:hover{
	opacity: 0.7;
	text-decoration: none;
}

.cate_list li a,#page10 ul li a,.more a{
    background-color: var(--color1);
    /*background: linear-gradient(90deg, var(--color3)5%, var(--color1)95%);*/
    color: var(--base);
    font-weight: bold;
    padding: 10px 20px;
    transition: all 0.8s;
}
#page10 ul li a{
    padding-top: 15px;
    padding-bottom: 15px;
}
.cate_list li a:hover,#page10 ul li a:hover,.more a:hover{
    background-color:var(--color3);
    opacity: 0.7;
}

/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){}
/*--------------------------------------------
 色 ・　文字
----------------------------------------------*/
html,body,.font_10,.font_11,.font_12,.font_13,.font_14,.font_15{font-size: var(--font1);}
.font_2up{font-size: max(calc(var(--font1) + 2px), calc(1rem  + 2px));}
.font_4up{font-size: max(calc(var(--font1) + 4px), calc(1rem  + 4px));}
.font_2dw{font-size: max(calc(var(--font1) - 2px), calc(1rem  - 2px));}
.font_4dw{font-size: max(calc(var(--font1) - 4px), calc(1rem  - 4px));}
.font_6dw{font-size: max(calc(var(--font1) - 6px), calc(1rem  - 6px));}






/* タブレット */
@media screen and (max-width: 768px){}
/* スマホ */
@media screen and (max-width: 667px){}


/* color */
body, .txt_color_nomal, .hvr_txt_color_nomal:hover{color: var(--text);}
.linkStyle{transition: 0.5s;color: var(--text)}
.linkStyle:hover{opacity: 0.7}

.txt_white, .hvr_txt_white:hover{color: white;}
.txt_red, .hvr_txt_red:hover{color: var(--red);}
.txt_color1, .hvr_txt_color1:hover{color: var(--color1)} /* メインカラー */
.txt_color2, .hvr_txt_color2:hover{color: var(--color2)} /* サブカラー */
.txt_color3, .hvr_txt_color3:hover{color: var(--color3)} /* アクセントカラー1 */
.txt_color4, .hvr_txt_color4:hover{color: var(--color4)} /* アクセントカラー2 */

/* background-color */
.bg_white, .hvr_bg_white:hover{background-color: white} /* 白背景 */
.bg_black, .hvr_bg_black:hover{background-color: var(--black)} /* 黒背景 */
.bg_color1, .hvr_bg_color1:hover{background-color: var(--color1)} /* メインカラー */
.bg_color2, .hvr_bg_color2:hover{background-color: var(--color2)} /* サブカラー */
.bg_color3, .hvr_bg_color3:hover{background-color: var(--color3)} /* アクセントカラー1 */
.bg_color4, .hvr_bg_color4:hover{background-color: var(--color4)} /* アクセントカラー2 */
.bg_color_clear, .hvr_bg_color_clear:hover{background-color: transparent!important}


/* border-color ※!important */
.border_white, .hvr_border_white:hover{border-color: white}
.border_black, .hvr_border_black:hover{border-color: var(--black)}
.border_color1, .hvr_border_color1:hover{border-color: var(--color1)}
.border_color2, .hvr_border_color2:hover{border-color: var(--color2)}
.border_color3, .hvr_border_color3:hover{border-color: var(--color3)}
.border_color4, .hvr_border_color4:hover{border-color: var(--color4)}


/************追加************************************************/

.t_cms_txt2, .t_cms_txt5, .t_cms_txt8 {
  font-family: "Gochi Hand", cursive !important;
  font-weight: 400;
  font-style: normal;
  font-size: 50px;
}
.t_cms_txt3, .t_cms_txt6, .t_cms_txt9, .letter_3, .box_item .box_title, .page_title_box p, .cate_title, .page10 .more_box .more .txt_color_nomal {
  font-family: "Kosugi Maru", sans-serif !important;
  font-weight: bold;
  font-style: normal;
}
.cms_title .letter_1, .box_item .box_title2, .nav2, .more .txt_color_nomal, #page_title .letter_3 {
    font-family: "Gochi Hand", cursive !important;
}
#loading_line .line {
    background-color: #15abcc;
}
footer {
    background-color: #15abcc;
}

.sns_links li {
    max-width: 40px;
    height: 40px;
}
/*.main_img_wrap .catch {
    transform: translate(-50%,-50%);
    left: 23%;
    top: 46%;
    width: 35%;
}*/
.main_img_wrap .catch {
    transform: translate(-50%,-50%);
    left: 50%;
    top: 50%;
    width: 35%;
}
#video {
    margin-top: 150px;
}
#video {
    width: 45%;
    position: relative;
    z-index: 1;
}
#video .video {
    border-radius: 10px;
    min-height: auto;
}
.c_box {
    margin-bottom: 230px;
}
#contents .box figure:after {
    display: none;
}
.nav .logo {
    width: 15%!important;
}
.is-fixed .logo {
    width: 10%!important;
    transition: 0.3s;
}
.img-container {
    border-radius: 10px;
}
.dog1 img, .dog2 img, .dog3 img {
    width: 50px;
}
#contents {
    background-image: url(./Dup/img/ato1.png), url(./Dup/img/ato2.png);
    background-size: 30%, 30%;
    background-position-x: -4%, 104%;
    background-position-y: -7%, 107%;
    background-repeat: no-repeat;
}
.cms_title {
    position: relative;
}
.cms_title:before {
    content: '';
    position: absolute;
    display: block;
    width: 85px;
    height: 85px;
    background: url(./Dup/img/dog4.png) no-repeat;
    background-size: contain;
    top: -40px;
    left: -44px;
    z-index: 0;
    opacity: 0.5;
}
#top_cms {
    background-image: url(./Dup/img/niku.png);
    background-size: 55%;
}
.all_page {
    background-image: url(./Dup/img/niku2.png);
    background-size: 55%;
}
.t_cms_img2 .img-container:before, .img-container:before {
    background: #15abcc;
}footer .logo {
    width: 70%!important;
}
.other .box:hover {
    background-color: #15abcc;
}
#title_img .img-container_img {
    background-position-y: 34%;
}
.txt_shadow-l {
    text-shadow: 0 1px 2px rgba(0,0,0,0);
}
.page10 .more_box .more:hover div, .top_cms_box .more_box .more:hover div {
    color: #fff;
}
.page10 .more_box .more:before, .top_cms_box .more_box .more:before {
    background-color: #fff;
}
.page10 .more:hover span:after, .top_cms_box .more:hover span:after {
    border-left: 5px solid #fff;
}
.page10 .more:hover span:before, .top_cms_box .more:hover span:before {
    background-color: #fff;
}
.button_container span {
    background-color: #007aff;
}
.page_title_box p {
    text-shadow: #fff 2px 0px,  #fff -2px 0px,
    #fff 0px -2px, #fff 0px 2px,
    #fff 2px 2px , #fff -2px 2px,
    #fff 2px -2px, #fff -2px -2px,
    #fff 1px 2px,  #fff -1px 2px,
    #fff 1px -2px, #fff -1px -2px,
    #fff 2px 1px,  #fff -2px 1px,
    #fff 2px -1px, #fff -2px -1px;
}
#contents .box .txt_wrap {
    z-index: 1;
}
.awa {
    bottom: -63px;
    opacity: 0.5;
    z-index: 0;
    width: 25%;
}
#cms_3-d .cate_txt1 {
    background-color: #fff;
    padding: 15px;
    border-radius: 10px;
}
#cms_5-b .box_item {
    border-color: #427eff;
}
/*.main_img_wrap .catch {
    animation: fadeup 4s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}

@keyframes fadeup {
  0% {
    opacity: 0;
  }
  80% {
    transform: translateY(30px);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}*/
.hvr_txt_color1:hover {
    color: #111111;
}
.cate_list li a {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.dec {
    width: 70px;
}
#title_img span {
    height: 800px;
    width: 100%;
}
#title_img {
    height: 400px;
}



.bubble-background {
  position: relative;
  /*background-color: #000;*/
  height: 100%;
  width: 100%;
  overflow: hidden;
}


/* 泡の見た目 */
.bubble {
  position: absolute;
  bottom: -50px;
  background-color: transparent;
  border-radius: 50%;
  pointer-events: none;
  box-shadow: inset 0 0 10px rgba(255,255,255,0.5);
  animation: bubble 8s linear infinite;
}

/* 泡の一番明るい部分を疑似要素で表現 */
.bubble::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  transform: scale(0.25) translate(-70%, -70%);
  background: radial-gradient(rgba(255,255,255, 0.8), transparent);
  border-radius: 50%;
}

/* 泡が上に浮かび上がっていくアニメーション */
@keyframes bubble {
  0% {
    transform: translatY(0);
    opacity: 1;
  }
  99% {
    opacity: 1;
  }
  100% {
    transform: translateY(-100vh);
    opacity: 0;
  }
}

/****************************/
.flowbtn{
font-family:'Arial',sans-serif;/* 好きなフォントを指定してね */
border-radius:4px;
position:relative;
display:inline-block;
width:66px;
height:58px;
font-size:30px;
color:#fff!important;
transition:.5s;
text-decoration:none;
box-shadow:0 1px 2px #999;
}
.flowbtn i{
position:relative;
bottom:-2px;
}

.fl_li1{
background:#00c300;
}
/* Instagram紫グラデ背景 */
.insta_btn1{
background:-webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
background:linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
overflow:hidden;
}
/* Instagramオレンジグラデ背景 */
.insta_btn1:before{
content: '';
position:absolute;
top:33px;
left:-20px;
width:80px;
height:50px;
background:-webkit-radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
background:radial-gradient(#ffdb2c 5%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
}
/* ボタン内テキスト調整 */
.flowbtn div{
font-size:11px;	
font-weight:bold;
letter-spacing:0;
position:relative;
bottom:7px;
}
/* ボタンマウスホバー時 */
.flowbtn:hover{
-webkit-transform:translateY(-5px);
-ms-transform:translateY(-5px);
transform:translateY(-5px);
text-decoration:none;
}
/* ulタグの内側余白を０にする */
ul.snsbtniti{
padding:0!important;
}
/* ボタン全体の位置調整 */
.snsbtniti{
display:flex;
flex-flow:row wrap;
justify-content:space-around;
}
/* ボタン同士の余白調整 */
.snsbtniti li{
flex:0 0 20%;
text-align:center!important;
}
.snsbtniti {
    width: 50%;
    margin: 50px auto 0;
}
/* タブレット */
@media screen and (max-width: 768px){
    #contents .box .txt_wrap {
    width: 90%;
    padding-right: 0px;
}
#contents .box figure {
    width: 90%;
    position: relative;
    z-index: 1;
}
#video {
    width: 90%;
    position: relative;
    z-index: 1;
    margin-top: 50px;
}
.c_box {
    margin-bottom: 50px;
}
.the3 {
    border-radius: 10px;
    margin-top: 50px;
}
.main_img_wrap .catch {
    width: 70%;
}
/*.main_img_wrap .catch {
    transform: translate(-50%,-50%);
    left: 16%;
    top: 27%;
    width: 70%;
}*/
#contents {
    background-size: 50%, 50%;
    background-position-x: -18%, 104%;
    background-position-y: -3%, 107%;
}
.t_cms_txt2, .t_cms_txt5, .t_cms_txt8 {
    font-size: 40px;
}
footer .logo {
    width: 100%!important;
}
.cms_title:before {
    width: 85px;
    height: 85px;
    top: -40px;
    left: -35px;
}
.dec {
    width: 40px;
}
.awa {
    bottom: 13%;
    opacity: 0.5;
    z-index: 0;
    width: 52%;
}
#title_img {
    height: 270px;
}
#title_img span {
    height: 300px;
    width: 100%;
}
}
/* スマホ */
@media screen and (max-width: 667px){
    /*.main_img_wrap .catch {
    transform: translate(-50%,-50%);
    left: 50%;
    top: 45%;
    width: 75%;
}*/
.main_img_wrap .catch {
    width: 80%;
}
#contents {
    background-position-x: -15%, 101%;
    background-position-y: -1%, 102%;
}
.cms_title:before {
    width: 70px;
    height: 70px;
    top: -40px;
    left: -15px;
}
.page_title_box p {
    text-shadow: none;
}
.awa {
    bottom: 6%;
    opacity: 0.5;
    z-index: 0;
    width: 64%;
}
/*.main_img_wrap {
    height: 80vh;
    top: 90px;
}*/
.other .box_title {
    font-size: -webkit-calc(1rem + 11px);
    font-size: calc(1rem + 11px);
}
}
