﻿@import url('https://fonts.googleapis.com/css2?family=Petit+Formal+Script&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500&display=swap');


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ コード集サイト ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
.qa_type1 .cate_box {border: solid 2px #fbeef3;}
.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: #4f4242;;
}
.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: #ce9bad;
}
.qa_type1 .cate_box .box_item {
	display: none;
	padding: 0px 30px 0px;
}
.qa_type1 .cate_box .box_txt1 {
	padding: 1em;
	background-color: #fcf9fa;
}

@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;
}
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ コード集サイト ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/





/*毎回いる*/

.swiper-button-next, .swiper-button-prev { z-index: 2 !important;}
#top_cms.back1:before {z-index: -1;}
.nav_menu_more a span::before {
    display: none !important;}
.nav_menu_more.mg_t-10px a span::before {
    display: block !important;}
div#contents2_wrap {margin-top: 50px;}

/*タブレット*/
@media screen and (max-width: 768px){
#cms_1-a .pager li {margin-right: 0px;}
}

@media screen and (max-width: 667px){
#contents1 .line:before, #contents2 .line:before {
    left: 50%;
    -ms-transform: translate(-50%,0);
    -webkit-transform: translate(-50%,0);
    transform: translate(-50%,0);}
}


/*追従バナー------------------------------------------------------------------------------*/
#h1txt{padding-bottom: 100px;}
#fix_banner{
width: 400px;
position: fixed;
bottom: 0;
right: 80px;
z-index: 4;
}
/*追従バナー------------------------------------------------------------------------------*/

/*video---------------------------------------------------------------------------*/

.menu p {background: transparent;}
#top_pc_nav{display:none;}

#main_img::before {height: 100vh;}
#page_title .title_img {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    height: 500px;}
.title_img:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(222 188 200 / 0.7);
    position: absolute;
    top: 0px;
    left: 0;}
#page_title:before {height: 0%;}


/*IE*/
@media all and (-ms-high-contrast: none){
    .video{width: 100%;}
}
/*タブレット*/
@media screen and (max-width: 768px){
.button_container {
    -ms-transform: translate(0,-36%);
    -webkit-transform: translate(0,-36%);
    transform: translate(0,-36%);}
#main_img:before {height: 50vh;}
#main_img .menu {display: none;}
.page_title_box {width: 45%;}
}
/*スマホ*/
@media screen and (max-width: 667px){
div#video {height: 45vh;}
#main_img:before {height: 45vh ;}
video.video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);}
#page_title .title_img {height: 300px;}
#page_title .page_title_box {padding: 20px 10px 30px;}
.page_title_box {width: 73%;}
}
/*video---------------------------------------------------------------------------*/

/*header-------------------------------------------------------------------------*/
.top header{z-index:3 !important;}
.opacity_0{opacity:1 !important;}
.menu { display: none;}
/*header-------------------------------------------------------------------------*/


/* color　---------------------------------------------------------------------------------------------*/
body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: #4f4242;}
.txt_color1,.hvr_txt_color1:hover{color: #ce9bad} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #debcc8} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #D99DB2} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #FFF7F0} /* アクセントカラー2 */
/* background-color */
.bg_black,.hvr_bg_black:hover{background-color: #4f4242} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: #ce9bad} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #debcc8} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #D99DB2} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #FFF7F0} /* アクセントカラー2 */
/* border-color ※!important */
.border_color1,.hvr_border_color1:hover{border-color: #ce9bad !important}
.border_color2,.hvr_border_color2:hover{border-color: #debcc8 !important}
.border_color3,.hvr_border_color3:hover{border-color: #D99DB2 !important}
.border_color4,.hvr_border_color4:hover{border-color: #e3caca !important}

#main_img:before {background-color: rgba(255,251,253,0.3) !important;}
#info_contact .con_img:before,.title_img:before {background-color: rgb(222 188 200 / 0.7);}
.overlay {background: linear-gradient(135deg, rgb(224 174 190 / 90%) , rgb(217 157 178 / 0.9) ) !important;}
header {background-color: rgba(206,155,173,0.8) !important;}

/*linkStyle*/
a.linkStyle {
    color: #cd8aa1 !important;
    border-bottom:solid 1px;
    opacity: 1 !important;
    transition:0.5s;
}
a.linkStyle:hover {color: #D99DB2 !important;
                   opacity:0.8 !important;}
                   
.opacity07,.opacity08{opacity:0.9;}
/* color　---------------------------------------------------------------------------------------------*/


/*【タイトルやリンクのみ明朝体・ZenOld/ZenKaku】*/
/*font-------------------------------------------------------------------------*/
.cms_title p,.page_title_box p,.con_title .pop400,.con_box h2,a.more_btn,.pop400,.num{font-family: 'Petit Formal Script',"Hannari","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";}

a,.box_title1,.cate_title,.box_title2,.hannari,#page10 .jp{
    font-family:"Hannari","游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
 }

body {font-family: 'Zen Kaku Gothic New','Zen Kaku Gothic Antique',"游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif !important;}
/*font-------------------------------------------------------------------------*/


/*■■■■■■■■■■■■■■top■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

#pc_nav li, #top_pc_nav li, #footer_nav li {
    max-width: 180px;
    margin-right: 20px;
    word-break: break-all;
}

.item02 {
    width: 20vw;
    right: 0%;
    bottom: 0%;
    -ms-transform: translate(40%,34%);
    -webkit-transform: translate(40%,34%);
    transform: translate(40%,34%);
    position: absolute;
    z-index: -2;
}

img.catch {
    width: 37%;
    left: 2.5%;
    z-index: 2;
    top: 50%;
    transform: translate(0%, -72%);
}
    
    
.item01 {
    width: 12vw;
    left: 0%;
    top: 0%;
    position: absolute;
    z-index: -1;
    transform: translate(-47%, -21%);}

.item02 {
    width: 20vw;
    right: 0%;
    bottom: 0%;
    -ms-transform: translate(40%,34%);
    -webkit-transform: translate(40%,34%);
    transform: translate(40%,34%);
    position: absolute;
    z-index: -2;}

.item03 {
    width: 9vw;
    top: 15%;
    right: 11%;
    -ms-transform: translate(-57%,59%) rotate(345deg);
    -webkit-transform: translate(-57%,59%) rotate(345deg);
    transform: translate(-57%,59%) rotate(345deg);
    z-index: 1;
}
.item04 {
    width: 9vw;
    height: 0px;
    bottom: 29%;
    left: 1%;
    -ms-transform: translate(-50%,0);
    -webkit-transform: translate(-50%,0);
    transform: translate(-50%,0);
    z-index: 2;}

.item05 {
    width: 10vw;
    bottom: -13%;
    right: -3%;
}
.item06 {
    width: 9vw;
    top: -17%;
    left: -5%;
    transform: rotate(354deg);
}


div#intro_wrap {background: rgb(255,255,255,0.9);}
.back1:before, .back2:before {
    background-image: url(dup/img/bg_img.jpg);
    background-size: 52%;
    z-index: -2;}
#contents3_wrap:after {background-color: rgb(255 239 245 / 50%) !important;}

#top_cms .cms_wrap {
    background: rgba(255,255,255,0.9);
    padding: 50px;
    position: relative;}
#top_cms .cms_2-b::before {
    content: '';
    width: 20vw;
    height: 45vh;
    right: 0%;
    bottom: 0%;
    -ms-transform: translate(40%,34%);
    -webkit-transform: translate(40%,34%);
    transform: translate(40%,34%);
    position: absolute;
    z-index: -1;
    background: url(dup/img/item02.png);
    background-size: contain;
    background-repeat: no-repeat;
}
#top_cms .cms_1-a::before,#top_cms .cms_3-b::before {
    content: '';
    width: 20vw;
    height: 45vh;
    right: 0%;
    bottom: 0%;
    -ms-transform: translate(40%,34%);
    -webkit-transform: translate(40%,34%);
    transform: translate(40%,34%);
    position: absolute;
    z-index: -1;
    background: url(dup/img/item01.png);
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 0.6;    
}
#top_cms .cms_1-a::before, #top_cms .cms_3-b::before {
    content: '';
    width: 12vw;
    height: 36vh;
    right: 0%;
    bottom: 0%;
    -ms-transform: translate(31%,34%) rotate(213deg);
    -webkit-transform: translate(31%,34%) rotate(213deg);
    transform: translate(31%,34%) rotate(213deg);
    position: absolute;
    z-index: -1;
    background: url(dup/img/item01.png);
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 0.6;
}
/*上下に揺らす----------------------------------------*/

.item03{
  animation: img_box_9955 4s linear infinite;
  transform-origin: 50% 50%;
  margin: 1rem 0 !important;}
.item04{  
  animation: img_box_0000 5s linear infinite;
  transform-origin: 50% 50%;
  margin: 1rem 0 !important;}
 
@keyframes img_box_9955 {
  0% { transform: translateY(0) }
  33.33333% { transform: translateY(-8px) }
  66.66667% { transform: translateY(0) }
  100% { transform: translateY(0) }}

@keyframes img_box_0000 {
  0% { transform: translateY(0) }
  33.33333% { transform: translateY(-8px) }
  66.66667% { transform: translateY(0) }
  100% { transform: translateY(0) }}

/*上下に揺らす----------------------------------------*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■all■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

.cms_2-b .cate_box:first-of-type {margin-top: 0px !important; }
.cms_2-b .cate_box{margin-top: 20px !important;
                  margin-bottom: 0px;}
    
footer, .tel_bt a {color: #fff;}
div#footer_con h2{color:#f5e0e7;}            

.top_logo {opacity: 0;}
.scr_header .top_logo {opacity: 1;}
#logo {max-width: 240px;}
header.scr_header #logo {max-width: 200px;}

#top_cms.back1:before {
    z-index: 0;
}

section.top_cms_box {
    z-index: 2;
    position: relative;
}

div#footer {
    background: url(dup/img/footer.jpg) !important;
    background-size: 40% !important;
    background-position: center center;
}
.return a {color: #a3526e;}
.title_img:before {background-color: rgb(255 239 245 / 50%) !important;}
.pager li a {background: #D99DB2 !important;}
.pager li a:hover {background-color: rgba(206,155,173,0.8) !important;}
a.res,a.res_sp,a.res02,a.res_sp02{
    border-radius: 5px;
    transition: 0.7s;
    padding: 0;}
a.res:hover,a.res_sp:hover,a.res02:hover,a.res_sp02:hover{
  transition:0.7s;
    opacity: 0.8;}
a.res::after,a.res_sp::after,a.res02::after,a.res_sp02::after{display:none;}
li.res_li {max-width: 215px !important;}

.banner:hover::after{content:none !important;}
.head_banner{
    top: 37px;
    right: 130px;
}
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■all■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■sub■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#cms_6-a .cate_box:last-of-type, .cms_6-a .cate_box:last-of-type {
    border-bottom: none;
}

#cms_3-a .cate_title,#cms_4-a .cate_title{position:relative;
    z-index: 2;
}

#cms_3-a .cate_title::before {
    content: '';
    background: url(dup/img/item06.png) !important;
    position: absolute;
    width: 100px;
    height: 100px;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    z-index: -1;
    top: 50%;
    transform: translate(-21%, -55%);
}


#page10 .more_btn {text-transform: none !important;}

#fakeloader .fl {max-width: 350px;}

.cate_list li a {background-color: #debcc8 !important;
                color:#fff;}
.cate_list li a:hover {background-color: #D99DB2!important;
                color:#fff;    }
.cate_list li a:before {
    color: rgb(255 250 250) !important;}                
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■sub■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

/*タブレット*/
@media screen and (max-width: 1280px){
a.res,a.res_sp{
    border-radius: 5px;
  transition:0.7s;
  font-weight: 500;
}
a.res:hover,a.res_sp:hover{
  transition:0.7s;
}
a.res::after,a.res_sp::after{
display:none;}

a.res_sp {padding: 10px;}
a.res_sp{opacity:0;}
.scr_header a.res_sp{opacity:1;}

.head_banner {
    top: 19px;
    right: 118px;}
}



/*タブレット*/
@media screen and (max-width: 768px){
#logo {max-width: 200px;}
header.scr_header #logo {max-width: 200px;}    
    #overlay .left li {max-width: 187px;}    
    #top_cms .cms_2-b::before {
        content: '';
        width: 20vw;
        height: 16vh;}
    
    #page_title .title_img {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center center;
        height: 350px;}    
        
    .page_title_box {transform: translate(-50%,-15%) !important;}        
        
    #contact_mail a, #contact_tel a {font-size: 19px}

img.catch {
    width: 46%;
    left: 0%;
    z-index: 2;
    top: 50%;
    transform: translate(0%, -53%);
}

    #main_img:before {background-color: rgba(255,251,253,0.4) !important;}

    #contents1 .con_box {
        margin-top: 15%;}
.item01 {
    width: 12vw;
    left: 0%;
    top: 0%;
    position: absolute;
    z-index: -1;
    transform: translate(-47%, -21%);}

.item02 {
    width: 20vw;
    right: 0%;
    bottom: 0%;
    -ms-transform: translate(40%,34%);
    -webkit-transform: translate(40%,34%);
    transform: translate(40%,34%);
    position: absolute;
    z-index: -2;}
    
.item03 {
    width: 21vw;
    top: auto;
    right: auto;
    bottom: 42%;
    left: 24%;
    -ms-transform: translate(-57%,59%) rotate(345deg);
    -webkit-transform: translate(-57%,59%) rotate(345deg);
    transform: translate(-57%,59%) rotate(345deg);
    z-index: 1;
}

.item04 {
    width: 21vw;
    height: 0px;
    bottom: 50%;
    left: 24%;
    -ms-transform: translate(-50%,0);
    -webkit-transform: translate(-50%,0);
    transform: translate(-50%,0);
    z-index: 2;}

    .item05 {
        width: 13vw;
        bottom: -10%;
        right: -5%;}
    .item06 {
        width: 9vw;
        top: -8%;
        left: -2%;
        transform: rotate(354deg);}
        
    .cms_title h3 {font-size: 28px;}
    
    div#footer {
        background: url(dup/img/footer.jpg) !important;
        background-size: 100% !important;
        background-position: center center;}
    .page_title_box h2 {
        font-size: 29px;
        letter-spacing: 2px;}
        
    #top_cms .cms_1-a::before, #top_cms .cms_3-b::before {
        content: '';
        width: 12vw;
        height: 36vh;
        right: 0%;
        bottom: 0%;
        -ms-transform: translate(31%,34%) rotate(213deg);
        -webkit-transform: translate(31%,34%) rotate(213deg);
        transform: translate(99%,22%) rotate(213deg);
        position: absolute;
        z-index: -1;
        background: url(dup/img/item01.png);
        background-size: contain;
        background-repeat: no-repeat;
        opacity: 0.6;} 

    .head_banner {
        top: 8px;
        right: 118px;}        
}

/*スマホ*/
@media screen and (max-width: 667px){
    #page_title .title_img {height: 200px !important;}
    .page_title_box {transform: translate(-50%,-24%) !important;}    
    section#cms_3-b .cate_box {padding: 20px;}  
    section#cms_2-b .cate_box {padding: 20px;} 
    
    img.catch {
        width: 50%;
        left: 0%;
        z-index: 2;
        top: 50%;
        transform: translate(1%, -41%);}   
    
    section#page9 .pd_l-20px.font_14_sp {
        padding-left: 8px;
        font-size: 13px;}    
        
    #overlay .left li {max-width: none;}    

    div#contents1_wrap {margin-top: 100px;}
    #contents1 .con_box {margin-top: 0%;}

    
    div#contents2_wrap {margin-top: 0px;}
    

    .page_title_box h2 {
        font-size: 20px;
        letter-spacing: 2px;}
        
    header.scr_header #logo {max-width: 145px;}
    #logo {max-width: 145px;}
    #cms_3-a .cate_title::before {
        width: 70px;
        height: 70px;
        transform: translate(-18%, -55%);}
    #cms_4-a .cate_title::before {
        width: 90px;
        height: 90px;
        transform: translate(-13%, -55%)}
    #contact_mail a, #contact_tel a {font-size: 19px;
        padding:15px;}
        
.head_banner {
    right: 76px;
    font-size: 13px;
    line-height: 1.5;
    top: 8px;
}
.head_banner a {padding: 8px 14px;}

     a.res, a.res_sp {
        font-size: 12px;
        padding: 6px !important;}
    #main_img:before {height: 50vh;}

    
    .item01 {
        width: 23vw;
        left: 0%;
        top: 0%;
        position: absolute;
        z-index: -1;
        transform: translate(-48%, -29%);} 
        
    .item02 {
        width: 35vw;
        right: 0%;
        bottom: 0%;
        -ms-transform: translate(40%,34%);
        -webkit-transform: translate(40%,34%);
        transform: translate(44%,44%);
        position: absolute;
        z-index: -2;}
        
    .item03 {
        width: 27vw;
        top: auto;
        right: auto;
        bottom: 75%;
        left: -2%;
        -ms-transform: translate(-57%,59%) rotate(345deg);
        -webkit-transform: translate(-57%,59%) rotate(345deg);
        transform: translate(-57%,59%) rotate(345deg);
        z-index: 1;}        
        
    .item04 {
        width: 27vw;
        height: 0px;
        bottom: 80%;
        left: -3%;
        -ms-transform: translate(-50%,0);
        -webkit-transform: translate(-50%,0);
        transform: translate(-50%,0);
        z-index: 2;}        
        
    .item06 {
        width: 13vw;
        top: -6%;
        left: -2%;
        transform: rotate(354deg);}
        
    .item05 {
        width: 19vw;
        bottom: -7%;
        right: -6%;} 
        
    #top_cms .cms_wrap {
        background: rgba(255,255,255,0.9);
        padding: 15px;
        position: relative;}        
        
    #top_cms .cms_1-a::before, #top_cms .cms_3-b::before {
        content: '';
        width: 20vw;
        height: 44vh;
        right: 0%;
        bottom: 0%;}
        
    #top_cms .cms_2-b::before {
        content: '';
        width: 35vw;
        height: 20vh;}  
        
    .cms_title h3 {font-size: 24px;}
        
}



/*20220623*/
img.catch {
    width: 37%;
    left: 2.5%;
    z-index: 2;
    top: 50%;
    transform: translate(0%, 6%);
}

/*タブレット*/
@media screen and (max-width: 768px){
img.catch {
    width: 42%;
    left: 2.5%;
    z-index: 2;
    top: 50%;
    transform: translate(0%, 22%);
}}

/*スマホ*/
@media screen and (max-width: 667px){
img.catch {
    width: 54%;
    left: 2.5%;
    z-index: 2;
    top: 50%;
    transform: translate(0%, 32%);
}}
