﻿@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&family=Noto+Sans+JP:wght@300;700&display=swap');

body, .font_sans-serif{font-family: 'Montserrat', 'Noto Sans JP', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",  sans-serif}

.font_bold{font-weight: 700}
body, html{line-height: 1.7}

#loader{top: 0;left: 0;z-index: 1000}
#loader::before, #loader::after{position: absolute;content: "";width: 100%;left: 0;background-color: #fff;height: 51%;transition: 1s}
#loader::before{top: 0}
#loader::after{bottom: 0}
#loader.active::before, #loader.active::after{height: 0}
#loader img{z-index: 1}

/* color */
body, .txt_color_nomal{color: #333}
.txt_color1{color: #333} /* メインカラー */
.txt_color2{color: #f0f8ff} /* サブカラー */
.txt_color3{color: #333} /* アクセントカラー1 */
.txt_color4{color: #e4e4e4} /* アクセントカラー2 */

/* background-color */
.bg_color1{background-color: #ffb6c1} /* メインカラー */
.bg_color2{background-color: #f0f8ff} /* サブカラー */
.bg_color3{background-color: #f9c89b} /* アクセントカラー1 */
.bg_color4{background-color: #e4e4e4} /* アクセントカラー2 */


/* border-color ※!important */
.border_color1{border-color: #ffb6c1}
.border_color2{border-color: #f0f8ff}
.border_color3{border-color: #f9c89b}
.border_color4{border-color: #e4e4e4}

/* hover ---------------------------------------------------------------------------------------------*/

/* color */
.hvr_txt_color1:hover{color: #ffb6c1} /* メインカラー */
.hvr_txt_color2:hover{color: #f0f8ff} /* サブカラー */
.hvr_txt_color3:hover{color: #f9c89b} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #e4e4e4} /* アクセントカラー2 */

/* background-color */
.hvr_bg_color1:hover{background-color: #ffb6c1} /* メインカラー */
.hvr_bg_color2:hover{background-color: #f0f8ff} /* サブカラー */
.hvr_bg_color3:hover{background-color: #f9c89b} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #e4e4e4} /* アクセントカラー2 */

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #ffb6c1}
.hvr_border_color2:hover{border-color: #f0f8ff}
.hvr_border_color3:hover{border-color: #f9c89b}
.hvr_border_color4:hover{border-color: #e4e4e4}

/* other ---------------------------------------------------------------------------------------------*/

.linkStyle{transition: 0.3s;color: #ffb6c1}
.linkStyle:hover{opacity: 0.7}

#main_left, #main_right, #wrap, header, #pc_intro, #contents, #pc_news, #map, #sp_info, #main_menu{border: none!important}
.rectangle_img, .square_img, .normal_img img, #cms_6-a .cate_box{border-radius: 20px;box-shadow: 0 10px 30px rgba(42,72,94,0.1)}

header, #page_title, #page_container{padding-left: 50px!important;padding-right: 50px!important}
#page_container{background-color: #fff!important}
.fadein .fade_box{opacity: 0;transition: 1s;transform: translateY(20px)}
.fadein .fade_box.active{opacity: 1;transform: none}

#pc_menu .bg_color3{background-color: #f0f8ff}
#pc_menu .txt_white{color: #333}
#main_left #footer_txt{border-radius: 20px;box-shadow: 0 10px 30px rgba(42,72,94,0.1);color: #333;padding: 30px;width: auto!important;left: 30px;right: 30px;top: 30px;}
#footer_txt.bg_color1{background-color: #fff}
#footer_txt .txt_white{color: #333}
#footer_txt h3{display: none}
#footer_txt p:last-of-type{font-size: 14px}
#menu_bt, #left_bar #scroll{background-color: transparent;box-shadow: none}
#link .bg_color1{background-color: #f0f8ff}
#link .txt_white{color: #333}
#left_bar #menu_bt{z-index: 1;top: 20px;right: 20px}
#top_link .links_bt, #main_left #left_link{width: 40%!important;max-width: 300px}

#top_header{background-color: transparent!important}
header{background-color: #fff!important;padding-bottom: 1px;background-image: url(./Dup/bg_img1.png), url(./Dup/bg_img2.png);background-repeat: repeat-x;background-size: 1200px 50px;background-position: left 0 bottom 0;animation: anime1 20s linear infinite;}
header #top_header .tel_bt a, header #top_header .intro_bt a{background-color: transparent}
header h1{width: 40%!important;max-width: 250px}
#wrap:not(.index) h1{max-width: 200px}
#wrap:not(.index) header{padding-bottom: 30px}
#news{background-color: #f0f8ff}
#news a{color: #333;text-shadow: none}

@keyframes anime1 {
0%{background-position: left 0 bottom 0}
50%{background-position: left -1200px bottom 0, left -600px bottom 0;}
100%{background-position: left -2400px bottom 0, left -1200px bottom 0;}
}

#pc_intro{background: linear-gradient(to bottom, #f0f8ff, #fff);}
#pc_intro h3{width: 450px!important}
#pc_intro .square_img{border-radius: 50%}
#intro .bg_wrap.bg_color3{background-color: #f0f8ff}

#contents{padding: 0!important;margin-bottom: 0}
#contents::before{position: absolute;content: "";width: 260px;height: 156px;background-image: url(./Dup/intro2.png);background-size: contain;top: -50px;right: 50px;}
#contents h3{margin-bottom: 0!important;padding-top: 20px;padding-left: 220px;padding-bottom: 50px;text-align: left;position: relative}
#contents h3::before{position: absolute;content: "";width: 200px;height: 200px;background-image: url(./Dup/intro.png);background-size: contain;left: 0;bottom: 0}
#contents h3 span{text-shadow: none;color: #29485e;font-weight: 700;line-height: 1.5}
#contents::after{display: none}
#contents .box_txt{background-color: #fff!important;border-radius: 20px;box-shadow: 0 10px 30px rgba(42,72,94,0.1)}

#pc_news{padding-top: 100px;padding-bottom: 100px;background-color: #fff!important}
#pc_news .txt_color2{color: #333}
#pc_news .border_color2{border-color: #e4e4e4}
#pc_news h3.font_24{font-size: 16px;padding: 0;padding-bottom: 30px;position: relative;text-align: center}
#pc_news h3.font_24::before{position: absolute;content: "";width: 1px;height: 30px;left: 0;right: 0;bottom: -15px;background-color: #333;margin: auto}
#pc_news h3.font_24 span{font-size: 30px;font-weight: 700;display: block;padding-left: 0}

#page_title{background-color: #fff!important;background-image: linear-gradient(to bottom, #f0f8ff, #fff);color: #333;text-shadow: none}

.cate_list{margin-bottom: 100px}
.cate_list li{border-width: 5px;border-color: #fff;border-radius: 100px;overflow: hidden}
.cate_list li a{text-align: center}
.cate_title{
	background-color: transparent;
	padding: 0;
	margin: 0;
	display: block;
	border: none;
	width: 100%!important;
	font-size: 24px;
	text-align: center;
	padding-bottom: 20px!important;
	margin-bottom: 50px;
	color: #333;
	font-weight: 700;
	position: relative
}
.cate_title::before{position: absolute;content: "";width: 100px;height: 2px;left: 0;right: 0;bottom: 0;background-color: #f9c89b;margin: auto}
.cate .retop{display: none}

#cms_2-a .box_title1{padding-bottom: 10px;margin-bottom: 20px;position: relative;font-weight: 700}
#cms_2-a .box_title1::before{position: absolute;content: "";width: 50px;height: 1px;left: 0;bottom: 0;background-color: #333}
#cms_6-a .box_wrap{counter-reset: number 0}
#cms_6-a .cate_box::before{counter-increment: number 1;content: "0" counter(number);position: absolute;font-size: 100px;line-height: 1;color: #f0f8ff;right: 40px;top: 20px;text-align: right;font-weight: 700}

#page9 .box_wrap .box p a {padding: 0;margin: 0 5px;border-radius: 0;color: #ffb6c1;border-bottom: solid 1px}

#page10 ul li{border: none;border-bottom: none;border-radius: 50px;box-shadow: 0 10px 20px rgba(42,72,94,0.1);overflow: hidden}
#page10 ul li a{background-color: #f9c89b}

#con_banner{width: 250px;z-index: 1;border-radius: 100px;box-shadow: 0 10px 30px rgba(42,72,94,0.1);right: 90px;bottom: 10px;border: solid 1px #8a9caa}
footer{text-align: left!important}


/** tablet 780 **/
@media screen and (max-width: 768px){
.fadein .fade_box{opacity: 1;transition: 0;transform: none}
#intro .overflow{top: 50px!important;}
#intro #intro_wrap{max-height: 700px;padding: 50px;border-radius: 20px}
#intro #intro_wrap.bg_color1{background-color: #fff}
#contents::before {width: 180px;height: 108px;top: 20px;right: 20px;}
header{padding-left: 0!important;padding-right: 0!important;background-color: transparent!important;background-image: none}
#wrap:not(.index) header{padding-bottom: 0}
#wrap:not(.index) #top_header{padding-bottom: 30px}
#top_header{background-color: #fff!important;}
#wrap:not(.index) #top_header{background-image: url(./Dup/bg_img1.png), url(./Dup/bg_img2.png);background-repeat: repeat-x;background-size: 800px 30px;background-position: left 0 bottom 0;animation: anime2 15s linear infinite;}
footer{text-align: center!important}
}

/** mobile 750 **/
@media screen and (max-width: 667px){
#intro h2 img{width: 200px}
#intro #intro_wrap{max-height: 400px;padding: 20px}
#contents h3::before{width: 130px;height: 130px;}
#contents h3{padding-left: 150px;padding-bottom: 30px}
#contents::before{width: 120px;height: 72px;}
header h1, #wrap:not(.index) h1{max-width: 150px}
#page_title, #page_container{padding-left: 20px!important;padding-right: 20px!important}
.cate_title{font-size: 20px;}
#cms_6-a .cate_box::before {font-size: 80px;right: 30px;top: 10px;}
#contents .fs_wrap{width: 100%!important;padding-left: 20px;padding-right: 20px}
}

/** IE **/
@media all and (-ms-high-contrast:none) {
.cate_list li a, #page10 ul li a{padding-top: 10px}
}


@keyframes anime2 {
0%{background-position: left 0 bottom 0}
50%{background-position: left -800px bottom 0, left -400px bottom 0;}
100%{background-position: left -1600px bottom 0, left -800px bottom 0;}
}