﻿@import url('https://fonts.googleapis.com/css2?family=Homemade+Apple&display=swap');
#header #logo:after {
    animation: ushi-ugoki 1.5s infinite;
}
@keyframes ushi-ugoki {
  0%   {transform: rotate(2deg);}
  50%  {transform: rotate(2deg);}
  51%  {transform: rotate(-2deg);}
  100% {transform: rotate(-2deg);}
}
/*:after {
    margin-left: 0%;
    position: absolute;
    bottom: 10px;
    left: 0%;
    animation: ushi-ugoki-yoko 60s infinite;
    z-index: 9;
    max-width: 180px;
}
.anime {
    animation: ushi-ugoki-muki 60s infinite;
}

 
@keyframes ushi-ugoki-yoko {
  0%   {transform: translateX(0%);}
  50%  {transform: translateX(85vw);}
  100% {transform: translateX(0%);}
}
@keyframes ushi-ugoki-muki {
  0%   {transform: scaleX(1);}
  49%  {transform: scaleX(1);}
  50%  {transform: scaleX(-1);}
  99%  {transform: scaleX(-1);}
  100% {transform: scaleX(1);}
}
*/


#header, #header #logo {
    position: relative;
}
#header.fadetrans:before {
    opacity: 1;
    transform: none;
    z-index: 2;
	filter: blur(0); 
	animation-name: blur;
 	animation-duration: 5s;
}
.catch.fadetrans {
    opacity: 1;
    transform: none;
    z-index: 2;
}
#header #logo.fadetrans:after {
    opacity: 1;
    transform: none;
    z-index: 2;
}
@keyframes blur {
  0% {
    filter: blur(10px);
  }
  100% {
    filter: blur(0);
  }
}
.catch {
    opacity: 0;
    transition: 1.5s;
    transition-property: opacity,transform;
}
#header #logo:after {
    opacity: 0;
/*transform: translateY(200px);*/
    transition: .5s;
    transition-property: opacity,transform;
}
#header:before {
    opacity: 0;
    transition: 7s;
    transition-property: opacity,transform;filter: blur(9px);
}
#header #logo:after {
    position: absolute;
    content: "";
    display: block;
    background: url(Dup/img/tori.png) no-repeat;
    background-size: contain;
    width: 80px;
    height: 80px;
    z-index: 12;
    top: 28px;
    right: 0;
    left: 177px;
}
.page1 #header #logo:after {
    top: -14px;
    right: 133px;
    left: 256px;
}
.page1 #header:before{
    position: absolute;
    content: "";
    display: block;
    background: url(Dup/img/happa.png) no-repeat;
    background-size: contain;
    width: 100%;
    height: 319px;
    z-index: 12;
    top: 22px;
    right: -1px;
}



h1, h2, h3, h4, h5, h6 {
	font-weight: bold
}
body {
	font-weight: bold;
}
header {
	background-color: #fffff7;
    background-image: url(https://www.transparenttextures.com/patterns/white-paperboard.png);
}
header .menu_stick span {
    background-color: #796200;
}
#header #logo {
background-color: transparent;
}
#header #logo span {
background-color: transparent;
}
#header #logo img {
	max-width: 216px;
}
header .trans_header {
    top: -86px;
}
header .trans_logo {
    padding: 12px 50px;
    height: auto;
}
header .trans_logo img {
	max-width: 111px;
}
#header.grid_4 {
    background-image: url(Dup/img/hana_head.png);
    background-position: left 0px bottom -47px;
    background-size: 100% auto;
    background-repeat: no-repeat;
}
.catch {
    top: 9%;
    right: 3%;
    font-size: 2vw;
	z-index: 2;
	filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.2));
	color: #fff;
}
h2.font_10up:first-letter {
    color: #fdb927;
}
.con1_right {
    background-image: url(Dup/img/illust-l.png), url(Dup/img/illust-r.png);
    background-position: 1% 88%, 99% 89%;
    background-repeat: no-repeat;
    background-size: 31%, 27%;
}
.con2_right, .con3_right{
	position: relative;
}
.con2_right:before, .con3_right:before {
position: absolute;
    content: "3 major arches";
    font-family: 'Homemade Apple', cursive;
    display: block;
    background-size: contain;
    width: 80%;
    height: 300px;
    bottom: -49%;
    left: 39%;
    color: #fdb927;
    font-size: 3vw;
    transform: rotate( 
-15deg
 );
    z-index: 5;
}
.con3_right:before {
	content: "Various symptoms";
	left: -13%;
    transform: rotate( 
343deg
 );
    top: -11%;
}
/*花のライン*/
.cms_box, .con1_right {
	position: relative;
}
.cms_box:before {
    content: "";
    display: block;
    width: 100%;
    height: 37px;
    position: absolute;
    top: -18px;
    left: 0;
    background: url(Dup/img/hana.png) repeat-x;
    background-size: auto 100%;
    z-index: 1;
}
.con3_wrap {
    margin-top: 40px;
    margin-left: auto;
    background-image: url(Dup/img/contact_bg.png);
    background-repeat: repeat-x;
    clear: both;
	background-size: 22px;
}
/* ---------------------------------- */
.page_title_box {
	color: #796200;
}
.cms_1-a figure {
border-radius: 57% 43% 64% 36% / 42% 63% 37% 58% ;
}
#cms_2-c .cate_title {
  position: relative;
  background: #ffecc2;
  box-shadow: 0px 0px 0px 5px #ffecc2;
  border: dashed 2px white;
  padding: 0.3em 0.5em 0.1em;
}

#cms_2-c .cate_title:after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #fbda8f;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
#cms_2-c .box_txt1 {
	background: linear-gradient(transparent 70%, #ffffdb 70%);
    margin-bottom: 11px;
    display: inline-block;
	padding: 0;
}
#cms_3-b .cate_box {
    background: #fffff8;
    border-left: 4px dotted rgba(0,0,0,.1);
    border-right: 4px dotted rgba(0,0,0,.1);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.20);
    border-top: 0;
    border-bottom: 0;
}
@media(max-width: 1250px) {
	.con1_right {
    background-position: 1% 91%, 99% 91%;
}
}
@media screen and (max-width: 768px) {
header .trans_header {
    top: 0;
}
.catch {
    top: 13%;
    font-size: 5vw;
}
.con1_right {
    background: url(Dup/img/tori.png), url(Dup/img/illust-r.png);
    background-repeat: no-repeat, no-repeat;
    background-position: 95% 26px, right 3% top 97%;
    background-size: 91px, 51% auto;	
	}
.con2_right:before, .con3_right:before {
    bottom: -80%;
    left: 39%;
    font-size: 5vw;
}
.con3_right:before {
    left: -27%;
    top: -18%;
}
}
@media(max-width: 667px) {
header .trans_logo img {
    max-width: 111px;
}
header .trans_logo {
    padding: 12px 23px;
    height: auto;
}
.catch {
    top: 77%;
    font-size: 5vw;
}
	#contents2 {
		overflow: hidden;
	}
	.con2_right:before, .con3_right:before {
    bottom: -71%;
    left: -1%;
}
	.con3_right:before {
    left: -4%;
}
}


/* --------------------------IE------------------------------ */
@media all and (-ms-high-contrast: none) {
    #cms_2-c .cate_title {
        padding: 0.5em 0.5em 0.1em;
    }

}