﻿/* all page */
/*fonts*/
.catch_box {
    font-family: 'Kiwi Maru', serif;
}

/* color ---------------------------------------------------------------------------------------------*/
.linkStyle{color: #160a0a;text-decoration: underline;transition: opacity .3s;}
.linkStyle:hover{opacity: 0.7}
.txt_color1, .hvr_txt_color1:hover{color: #f79b9f;}
.txt_color2, .hvr_txt_color2:hover{color: #e7dfa6;}
/*.txt_color3, .hvr_txt_color3:hover{color: #a67c52}*/
/*.txt_color4, .hvr_txt_color4:hover{color: #c9baa9}*/

/* background-color */
.bg_color1, .hvr_bg_color1:hover{background-color: #f79b9f;}
.bg_color2, .hvr_bg_color2:hover{background-color: #e7dfa6;}
.bg_color3, .hvr_bg_color3:hover{background-color: #fffedb;}
/*.bg_color4, .hvr_bg_color4:hover{background-color: #c9baa9}*/

/* border-color ※!important */
.border_color1, .hvr_border_color1:hover{border-color: #f79b9f;}
.border_color2, .hvr_border_color2:hover{border-color: #e7dfa6;}
/*.border_color3, .hvr_border_color3:hover{border-color: #a67c52}*/
/*.border_color4, .hvr_border_color4:hover{border-color: #c9baa9}*/

.fixbnr{
    display: none;
}
.loader_icon {
    width: 200px;
}

/* header */
#con_nav ul li {
    max-width: 30.66%;
}

/* top ----------------*/

/* main img */
.ani_fadein{
	display: none;
}
.ani {
  animation: slideIn 1.5s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
opacity: 0;
}
@keyframes slideIn {
  0% {
    transform: translateY(180px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
  }
  40%,100% {
    opacity: 1;
  }
}
.ani:nth-of-type(1) {
  animation-delay: 0.2s;
}
.ani:nth-of-type(2) {
  animation-delay: 0.4s;
}
.ani:nth-of-type(3) {
  animation-delay: 0.6s;
}
.triangle01 {
    border-color: transparent transparent #e7dfa6 transparent;
    border-top-color: transparent;
    border-right-color: transparent;
    border-left-color: transparent;
}
.catch_box{
    bottom: 7%;
    right: 3%;
    z-index: 3;
}
.buta {
    z-index: 2;
    right: 50px;
    bottom: 50px;
    width: 150px;
    animation: katakata 2s steps(2,start) infinite;
}
@keyframes katakata {
0% {
    transform: rotate(-10deg);
}
50% {
    transform: rotate(0deg);
}
100% {
    transform: rotate(-10deg);
}
}

/* main */
#top_news .cms1inner{
    z-index: 2;
}
/* intro */
#top_contents1::before{
    content: "";
    background-image: url('./Dup/img/intro_top.png');
    background-position: top right;
    background-repeat: no-repeat;
    background-size: 100%;
    width: 420px;
    height: 1000px;
    position: absolute;
    top: -8%;
    right: 2%;
    z-index: 0;
}

/* contents */
#top_contents3 .con3_box1, #top_contents3 .con3_box2, #top_contents3 .con3_box3{
    position: relative;
}
#top_contents3 .con3_box1::before, #top_contents3 .con3_box2::before, #top_contents3 .con3_box3::before{
    content: "";
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    z-index: 1;
}
#top_contents3 .con3_box1::before{
    background-image: url('./Dup/img/con_1.png');
    background-position: top left;
    width: 360px;
    height: 350px;
    top: -17%;
    left: -29%;
}
#top_contents3 .con3_box2::before{
    background-image: url('./Dup/img/con_2.png');
    background-position: top left;
    width: 270px;
    height: 500px;
    top: -18%;
    right: -22%;
}
#top_contents3 .con3_box3::before{
    background-image: url('./Dup/img/con_3.png');
    background-position: top left;
    width: 280px;
    height: 380px;
    top: -15%;
    left: -19%;
}


/* topcms */
#top_cms .cms_title{
    padding-top: 50px;
    position: relative;
}
#top_cms .cms_title::before{
    content: "";
    background-image: url('./Dup/img/buta.png');
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 70px;
    width: 100%;
    height: 100%;
    position: absolute;
    top: -20px;
    left: 0;
}

.topcms_news_type2 .cate_box {
	width: 46.33333%!important;
	margin-right: 1.5%;
	margin-left: 1.5%;
	cursor: pointer;
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
	box-shadow: 0 6px 12px rgb(0 0 0 / 0);
	/* padding: 20px; */
	/* border-radius: 20px; */
	/* background-color: #f5f5f5; */
}
.topcms_news_type2 .cate_box:hover {
	transform: translateY(-5px);
}
.topcms_news_type2 .cate_box .box_item {
	cursor: pointer;
}
.topcms_news_type2 .txt_height {
	height: 5em
}
.topcms_news_type2 .box_img1 {
	border-radius: 10px;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.topcms_news_type2 .cate_box {width: 100%!important;}
.topcms_news_type2 .txt_height {height: 3em}
}

/* footer */
#footer_info_logo{
    max-width: 150px;
}


/* under page */
#page_title .title_wrap {
    text-shadow: 0 1px 3px rgba(0,0,0,0.5);
    max-width: 800px;
}

/* cms5 */
.qa_type1 .cate_box {
	border-radius: 10px;
	border: 1px solid #909090;
	background-color: #fff;
}
.qa_type1 .cate_box .arrow {
	position: absolute;
	left: 2px;
	top: 50%;
	margin-top: 0px;
	transform: translateY(-50%);
}
.qa_type1 .cate_box .open_bt{
	position: relative;
	width: 100%;
	cursor: pointer;
	padding: 20px 0
}
.qa_type1 .cate_box .open_bt .arrow::before, .qa_type1 .cate_box .open_bt .arrow::after {
	position: absolute;
	content: '';
	width: 15px;
	height: 1px;
	background-color: #5c5c5c;
}
.qa_type1 .cate_box .open_bt .arrow::before {
	top: 48%;
	left: 15px;
	transform: rotate(0deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow::after {
	top: 48%;
	left: 15px;
	transform: rotate(90deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow.arrow_be::before {
	transform: rotate(-135deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .arrow.arrow_be::after {
	transform: rotate(135deg);
	transition: all 0.5s;
}
.qa_type1 .cate_box .open_bt .box_title1 {
	display: inline-block;
	position: relative;
	letter-spacing: 1px;
	cursor: pointer;
	margin-left: 87px;
}
.qa_type1 .cate_box .open_bt .box_title1::before {
	content: "Q.";
	position: absolute;
	left: -32px;
	top: 0px;
	display: inline-block;
	vertical-align: baseline;
	color: #f57f40;
}
.qa_type1 .cate_box .box_item {
	display: none;
	padding: 0px 30px 0px;
}
.qa_type1 .cate_box .box_txt1 {
	padding: 1em;
	background-color: #f5f5f5;
	border-radius: 5px;
}

@media screen and (max-width: 768px){
.qa_type1 .cate_box .open_bt .box_title1 {
	padding-right: 20px;
}
}
@media screen and (max-width: 667px){
.qa_type1 .cate_box .open_bt {
	padding: 5px 0 7px;
}
.qa_type1 .cate_box .open_bt .box_title1 {
	margin-left: 73px;
}
.qa_type1 .cate_box .box_txt1 {
	padding: 0.2em 1.2em;
}
}



/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.mainwrap-r h1 {
    width: 100px;
}
.buta {
    right: 20px;
    bottom: 30px;
    width: 130px;
}
#top_contents1::before {
    width: 340px;
    top: -5%;
    right: -2%;
}
#top_contents3 .con3_box1::before {
    background-position: bottom left;
    width: 330px;
    height: 310px;
    top: auto;
    bottom: -7%;
    left: -6%;
}
#top_contents3 .con3_box2::before {
    width: 230px;
    top: 2%;
    right: -7%;
}
#top_contents3 .con3_box3::before {
    background-position: bottom left;
    width: 260px;
    top: auto;
    bottom: -2%;
    left: -5%;
}
#footer_info > div {
    padding-bottom: 50px;
}
#footer_info .info_txt_wrap {
    padding-bottom: 100px;
    padding-top: 100px;
    padding-right: 20px;
}

}
/* ---------- スマートフォン ---------- */
@media screen and (max-width: 667px){
.loader_icon {
    width: 150px;
}
.mainwrap-r h1 {
    width: 90px;
}
.buta {
    bottom: 20px;
    width: 100px;
}
#top_contents1::before {
    width: 250px;
    top: -2%;
    right: -10%;
}
#top_contents3 .con3_box1::before {
    width: 220px;
    height: 300px;
    bottom: -9%;
}
#top_contents3 .con3_box2::before {
    width: 160px;
    top: -10%;
    right: -15%;
}
#top_contents3 .con3_box3::before {
    width: 180px;
    bottom: -21%;
    left: -3%;
}
#footer_info .info_txt_wrap {
    padding-bottom: 50px;
    padding-top: 50px;
    padding-right: 20px;
}
.title_wrap h2{
    font-size: 21px;
    letter-spacing: 1px;
}

}





