@charset "UTF-8";
/* CSS Document */

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix{
	zoom: 1;
}


/* reset */
html, body, h1, h2, h3, h4, h5, h6, dl, dt, dd, ol, ul, li,p{
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
}
img{
	height: auto;
	font-size: 0;
	line-height: 0;
	border:0;
}
ol,ul{
	list-style: none;
}

/* common */
body{
	font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','メイリオ', Meiryo,'ヒラギノ角ゴシック','ＭＳ Ｐゴシック','MS PGothic',YuGothic,'Yu Gothic';
	font-size: 14px;
	color:rgb(80,40,40);
	text-align: left;
	letter-spacing: 0.2em;
}
a{
	text-decoration: none;
	display:block;
	color:rgb(80,40,40);
	transition:1.0s;
}
a:hover{
	opacity:0.5;
}
img{
    max-width: 100%;
    height: auto;
	border-style:none;
	vertical-align:middle;
}
.tel a{
	pointer-events: none;
}

.pc { display: block !important; }
.sp { display: none !important; }


.flex_sb{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

h2{
	padding:10px 20px 10px 70px;
	margin:0 auto 40px auto;
	border-radius: 10px;
}
h2 img{
	margin-right: 15px;
}
h3{
	background:url("images/kanban.png") no-repeat left center;
	width: 200px;
	height: 100px;
	text-align: center;
	line-height: 100px;
}
h4{
	font-size:15px;
}
.line_green{
	background:url("images/icon_bird.png") no-repeat right bottom,url("images/line_green.png") repeat-x left bottom;
	padding: 0 0 50px 0;
	margin: 0 auto 50px auto;
}

.indent{
	padding-left:1.5em;
	text-indent:-1.5em;
}


/* header */
#header{
	background:url("images/illusut_top_child.png") no-repeat center 80px,
		url("images/ptn_top_wood.png") repeat-x center top,
		url("images/ptn_top_brown.png") repeat-x left bottom,
		url(images/rainbow.png) no-repeat center 60px,
		url(images/ptn_sky.png) repeat-x left top;
	min-width: 1000px;	
	min-height: 460px;
}

/* logo */
#logo{
	padding: 35px 0 0 0;
	text-align: center;
	margin: 0 auto 200px auto
}
#logo a{
	display: inline-block;
}

/* menu */
#menu{
	margin: 0 auto;
	width: 1000px;
}
#menu ul{
	display:flex;
	justify-content:center;
}
#menu ul li{
	margin: 0 5px;
}
#menu ul li a{
	width: 155px;
	height: 60px;
	border-radius: 100px;
}
#menu1 a{
	background: url("images/ptn_pink.png");
}
#menu2 a{
	background: url("images/ptn_skyblue.png");
}
#menu3 a{
	background: url("images/ptn_orange.png");
}
#menu4 a{
	background: url("images/ptn_murasaki.png");
}
#menu5 a{
	background: url("images/ptn_dgreen.png");
}
#menu6 a{
	background: url("images/ptn_red.png");
}

/* contents */
#contents{
	background:url("images/ptn_grad.png") repeat-x left bottom,url(images/ptn_brown.png) repeat;
	min-width: 1000px;
}

/* swiper */
#slide{
	width:100%;
	margin: 0 auto 30px auto;
}
.swiper-container{
	position:relative;
}
.swiper-slide{
	padding-top:23%;
	margin:0 auto;
	position:relative;
}
.swiper-slide img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	border-radius: 300px;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}


/* main */
#main{
	width:1000px;
	margin:0 auto;
}

#catch{
	margin:-10px auto auto;
	float: left;
	width: 508px;
}
#top_info{
	float: right;
	width: 460px;
}

#topic{
	border-radius: 10px;
	padding: 6px;
	max-height: 180px;
	height: 180px;
	background: url("images/ptn_dgreen.png") repeat;
	margin: 0 auto 20px auto;
}
#topic_box{
	max-height: 140px;
	height: 140px;
	margin:0 auto 40px auto;
	overflow-y: scroll;
	border-radius: 5px;
	padding: 20px;
	background: #fff;
}
#topic h4{
	background: url("images/ptn_dgreen.png") repeat;
	color: #fff;
	border-radius: 5px;
	padding: 3px 10px 2px 10px;
	margin: 0 auto 10px auto;
}

#top_ad h4{
	text-align:left;
	padding:0 0 5px 0;
	margin:0 auto 5px auto;
	border-bottom: 1px solid rgb(80,40,40);
}


#top_bnr{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	margin: 40px auto 20px auto;
}
#top_bnr p{
	margin: 0 20px;
	width: 211px;
	text-align: center;
}

/* about */
.left_box{
	width: 200px;
}
.right_box{
	width: 740px;
	background: rgba(255,255,255,0.3);
	padding: 30px 40px;
	border-radius: 20px;
	box-sizing: border-box;
}
#about h2{
	background: url("images/icon_cyou.png") no-repeat 20px 10px,url("images/ptn_skyblue_50.png") repeat;
}
#hoikumokuhyo p{
	font-size: 19px;
	line-height: 1.8;
}
#hashira ul{
	margin: 20px auto 0 auto;
}
#hashira ul li{
	width: 32%;
}
#hashira p{
	background: url("images/icon_hana.png") no-repeat left 3px, url("images/line_brown_2.png") no-repeat left bottom;
	padding: 0 0 10px 25px;
	margin: 0 auto 10px auto;
}
#hashira p:last-of-type{
	background: url("images/icon_hana.png") no-repeat left 3px;
}
.enkaku table{
	width: 100%;
	border-collapse: collapse;
}
.enkaku1{
	background:rgba(80,40,40,0.5);
	text-align: center;
	color: #fff;
	border: 1px solid rgba(80,40,40,0.5);
	padding: 10px 20px;
}
.enkaku2{
	border: 1px solid rgba(80,40,40,0.5);
	padding: 10px 20px;
}

#tokubetsu_box h4{
	background: url("images/obi_pink.png") repeat;
	padding: 10px 20px;
	border-radius: 20px;
	margin:0 auto 10px auto;
 }

#tokubetsu_box section div{
	padding: 0 20px;
}
#tokubetsu_box section,
#kujyokaiketsu section{
	margin: 0 auto 20px auto;
}
#tokubetsu_box section:last-of-type,
#kujyokaiketsu section:last-of-type{
	margin: 0 auto;
}
#kujyokaiketsu h4{
	background: url("images/obi_blue.png") repeat;
	padding: 10px 20px;
	border-radius: 20px;
	margin:0 auto 20px auto;
 }

#kujyokaiketsu h5{
	background: url("images/line_brown_2.png") repeat-x left bottom;
	padding: 0 0 10px 0;
	margin: 20px auto 10px auto;
}
.kujyo_box{
	border: 1px solid rgba(80,40,40,0.5);
	padding: 0 20px 20px 20px;
	border-radius: 20px;
}

.pdf_btn a{
	display: inline-block;
	background: url("images/icon_pdf.png") no-repeat 15px 10px,url("images/ptn_orange.png") repeat;
	padding: 10px 10px 10px 40px;
	margin: 15px auto 0 auto;
	border-radius: 10px;
}
#kujyo .enkaku1{
	width: 180px;
}

/* color */
#color h2{
	background: url("images/icon_cyou.png") no-repeat 20px 10px,url("images/ptn_orange_50.png") repeat;
}
#color h4{
	background: url("images/obi_blue.png") repeat;
	padding: 10px 20px;
	border-radius: 20px;
	margin:0 auto 20px auto;
 }
#color_box section{
	margin: 0 auto 20px auto;
}
#color_box section:last-of-type{
	margin: 0 auto;
}
.color_kiji{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.color_photo{
	width: 35%;
	padding-top:25%;
	position: relative;
}

.color_photo img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 10px;
	margin: auto;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}
.color_honbun{
	width: 62%;
}

/* life */

#life h2{
	background: url("images/icon_cyou.png") no-repeat 20px 10px,url("images/ptn_murasaki_50.png") repeat;
}
#daily h5{
	font-size: 15px;
	padding: 5px 10px;
	border-radius: 10px;
	text-align: center;
	margin: 0 auto 20px auto;
}
#daily_box_r,#daily_box_l{
	width: 48%;
}
#daily_box_r h5{
	background: url("images/obi_orange.png") repeat;
}
#daily_box_l h5{
	background: url("images/obi_green.png") repeat;
}
#daily table{
	border-collapse: separate;
	border-spacing: 10px;
	margin: -10px 0 0 -10px;
	width: 100%;
}
#daily th{
	border-radius: 10px;
	padding: 5px;
	text-align: center;
	font-weight: normal;
	font-size: 15px;
	line-height: 1.2;
}
#daily td{
	background: url("images/icon_hana_2.png") no-repeat right bottom,url("images/line_brown_2.png") repeat-x left bottom;
	padding: 5px 10px;
}
#daily_box_r th{
	background: url("images/ptn_orange_50.png") repeat;
}
#daily_box_l th{
	background: url("images/ptn_green_50.png") repeat;
}
#maitsuki dl{
	margin: 0 auto 10px auto;
	background: url("images/line_brown_2.png") repeat-x left bottom;
	display: flex;
	padding: 0 0 10px 0;
}
#maitsuki dl:last-of-type{
	margin: 0 auto;
}
#maitsuki dd{
	background: url("images/icon_reaf.png") no-repeat left top;
	padding: 0 0 0 18px;
	margin: 0 10px 8px 0;
	font-size: 15px;
	width: 280px;
}
#maitsuki dt{
	width: 350px;
}
#year_box{
	margin: 0 auto 20px auto;
}

#year_box dl{
	width: 25%;
	padding: 3%;
	border-radius: 40px;
	margin: 0 auto 20px auto;
	text-align: center;
}
.month04,.month05,.month06{
	background: url("images/rainbow_2.png") no-repeat right bottom,url("images/obi_pink.png") repeat;
}
.month07,.month08,.month09{
	background: url("images/rainbow_2.png") no-repeat right bottom,url("images/obi_blue.png") repeat;
}
.month10,.month11,.month12{
	background: url("images/rainbow_2.png") no-repeat right bottom,url("images/obi_orange.png") repeat;
}
.month1,.month2,.month3{
	background: url("images/rainbow_2.png") no-repeat right bottom,url("images/obi_murasaki.png") repeat;
}
#year_box dt{
	width: 100%;
	background: url("images/line_brown_2.png") repeat-x left bottom;
	margin: 0 auto 10px auto;
	padding: 0 0 10px 0;
}

#year_box2 dl{
	margin: 0 auto 10px auto;
	background: url("images/line_brown_2.png") repeat-x left bottom;
	display: flex;
	padding: 0 0 10px 0;
}
#year_box2 dl:last-of-type{
	margin: 0 auto;
}
#year_box2 dd{
	background: url("images/icon_reaf.png") no-repeat left top;
	padding: 0 0 0 18px;
	margin: 0 10px 8px 0;
	font-size: 15px;
	width: 130px;
}
#year_box2 dt{
	width: 500px;
}
/* blog */
#blog h2{
	background: url("images/icon_cyou.png") no-repeat 20px 10px,url("images/ptn_green_50.png") repeat;
}
#blogside h4{
	background:url("images/line_brown_2.png") repeat-x left bottom,url("images/line_brown_2.png") repeat-x left top;
	margin: 20px auto 20px auto;
	padding: 10px 0;
	text-align: center;
}
#blogside ul li{
	background: url("images/icon_reaf.png") no-repeat left top;
	padding: 0 0 0 15px;
	margin: 0 auto 15px auto;
}
#blogmain h4{
	width: 100%;
	background: url("images/icon_hana.png") no-repeat left 10px,url("images/line_brown_2.png") repeat-x left bottom,url("images/line_brown_2.png") repeat-x left top;
	margin: 10px auto;
	padding: 10px 0 10px 25px;
}
#blogmain ul{
	margin: 20px auto 0 auto;
}
#blogmain ul li{
	width: 30%;
	margin: 5px 0;
}
#blog .right_box{
	width: 740px;
	background: none;
	padding: 0;
	border-radius: 0;
}
.blogkiji{
	margin: 0 auto 20px auto;
	background: rgba(255,255,255,0.3);
	padding: 30px 40px;
	border-radius: 20px;
}
.blog_photo{
	width: 100%;
	padding-top:60%;
	position: relative;
}

.blog_photo img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 10px;
	margin: auto;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}
.blogcap{
	margin-top: 5px;
}

/* service */

#group_service h2{
	background: url("images/icon_cyou.png") no-repeat 20px 10px,url("images/ptn_pink_50.png") repeat;
}
#group .right_box div{
	background: url("images/line_brown_2.png") no-repeat left bottom;
	padding: 0 0 10px 0;
	margin: 0 auto 10px auto;
}
#group .right_box div:last-of-type{
	margin: 0 auto;
}
#group div a{
	background: url("images/icon_maru.png") no-repeat left 2px;
	padding: 0 0 5px 20px;
}
#service h4{
	background: url("images/obi_orange.png") repeat;
	padding: 10px 20px;
	border-radius: 20px;
	margin:0 auto 20px auto;
}
.service_kiji_01{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin: 0 auto 20px auto;
}
.service_photo{
	width: 35%;
	padding-top:25%;
	position: relative;
}

.service_photo img{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 10px;
	margin: auto;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}
.service_honbun{
	width: 62%;
}
#service_box h5{
	background: url("images/icon_reaf.png") no-repeat left 10px,url("images/line_brown_2.png") no-repeat left bottom,url("images/line_brown_2.png") no-repeat left top;
	padding: 10px 0 10px 15px;
	margin: 20px auto 10px auto;
}
#service section{
	margin: 0 auto 40px auto;
}
#service section:last-of-type{
	margin: 0 auto;
}
#service table{
	width: 100%;
	border-collapse: collapse;
}
#service th{
	background:rgba(80,40,40,0.5);
	text-align: center;
	color: #fff;
	border: 1px solid rgba(80,40,40,0.5);
	padding: 10px 20px;
	font-weight: normal;
	min-width: 120px;
	width: 120px;
}
#service td{
	border: 1px solid rgba(80,40,40,0.5);
	padding: 10px 20px;
	min-width: 120px;
	width: 120px;
}
.service_scroll{
	overflow-x: auto;
}

/* pagetop */
.pagetop{
    position:fixed;
    bottom:0;
    right:0;
	z-index:9999; 
	width: 92px;
}
.pagetop a:hover{
	opacity:1;
}
.pagetop.animated:hover img{
	animation: bounce 1s 1;
}

/* footer */
#footer{
	text-align:center;
	font-size:14px;
	padding:30px 0 140px 0;
	background:url("images/illusut_footer_child.png") no-repeat center bottom,url("images/ptn_footer.png") repeat-x left bottom;
}
#footer_logo{
	width: 25%;
}
#footer_infobox{
	width:1000px;
	margin:0 auto;
}
#footer_info{
	display:flex;
	justify-content:space-between;
	align-items: center;
	margin: 0 auto 20px auto;		
	background:url("images/line_brown.png") repeat-x left top,url("images/line_brown.png") repeat-x left bottom;
	padding: 30px 2%;
}
#footer_ad{
	text-align: left;
	width: 54%;
}
#footer_ad p{
	margin: 0 auto 5px auto;
	border-bottom: 1px solid rgba(80,40,40,0.5);
	padding: 0 0 5px 0;
}
#footer li:first-child{
	font-size: 14px;
}
#map{
	width: 15%;
}
#map a{
	background:url("images/ptn_orange.png") repeat;
	padding:10px 20px;
	border-radius: 30px;
}
.counter{
	margin: 20px auto 0 auto;
}

@media screen and (max-width:768px){
	
.pc { display: none !important; }
.sp { display: block !important; }

h3{
	background:url("images/kanban.png") no-repeat center center;
	text-align: center;
	margin: 0 auto;
}
	
	
/* header */
#header{
	background:url("images/ptn_brown.png") repeat;
	min-width: 1px;	
	min-height:1px;
}


/* logo */
#logo{
	background:url("images/ptn_top_sp.png") no-repeat center top;
	background-size: cover;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	padding: 5% 0 30%  0;
}
#logo a{
	width: 65%;
	margin: 0 auto;
}
/* menu */
#menu{
	width: 90%;
	margin: 0 auto 20px auto;
}
#menu ul{
	flex-wrap: wrap;
}
#menu ul li{
	margin: 1%;
	width: 48%;
	text-align: center;
}
#menu ul li a{
	width: 100%;
	height: auto;
}
/* contents */
#contents{
	min-width: 1px;
}
	
/* swiper */
#slide{
	width:100%;
}
.swiper-slide{
	padding-top:50%;
}
.swiper-slide img {
	border-radius: 0;
}
#catch{
	margin:0 auto 20px auto;
	float: none;
	width: 100%;
}

/* main */
#main{
	width:90%;
	margin:0 auto;
	padding:20px 0 40px 0;
}
#topic{
	max-height: 180px;
	height: 180px;
}
#topic_box{
	max-height: 140px;
	height: 140px;
}

	
#top_info{
	float: none;
	width: 100%;
}
#top_bnr p{
	width: 44%;
	margin:1% 2%;
}

/* about */
.left_box{
	width: 100%;
	margin: 0 auto 20px auto;
}
.right_box{
	width: 100%;
}
.enkaku1{
	display: block;
	width: 90%;
	padding: 10px 5%;
	margin-top: -1px;
}
.enkaku2{
	display: block;
	width: 90%;
	padding: 10px 5%;
	margin-top: -1px;
}
#hashira ul li{
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
}
#hashira ul li:last-child{
	margin-bottom: 0;
}
#kujyo .enkaku1{
	width: 90%;
}

/* color */

.color_kiji{
	display:block;
}
.color_photo{
	width: 100%;
	padding-top:60%;
	margin: 0 auto 20px auto;
}

.color_honbun{
	width: 100%;
}
	
	

/* life */


#daily_box_r{
	width: 100%;
	margin: 0 auto 20px auto;
}
#daily_box_l{
	width: 100%;
}
#maitsuki dl{
	display:block;
}
#maitsuki dd,#maitsuki dt{
	width: auto;
}
#year_box dl{
	width: 40%;
	padding: 3%;
}
#year_box2 dl{
	display:block;
}
#year_box2 dd,#year_box2 dt{
	width: auto;
}
	
	
/* blog */

#blogside ul li{
	display: inline-block;
	margin: 5px;
}
#blogmain ul li{
	width: 48%;
}
#blog .right_box{
	width: 100%;;
}
	
/* service */
.service_kiji_01{
	display:block;
}
.service_photo{
	width: 100%;
	padding-top:50%;
	margin: 0 auto 10px auto;
}
.service_honbun{
	width: 100%;
}

	
/* footer */
#footer{
	background:url("images/ptn_footer_sp.png") no-repeat center bottom;
	background-size: contain;
	padding:0 0 20% 0;
}
#footer_infobox{
	width:100%;
}
#footer_info{
	display:block;
	min-width:1px;
	width:90%;
	padding: 40px 0;
}
#footer_ad{
	text-align: center;
	width: 100%;
}
#footer_logo{
	width: 70%;
	margin: 0 auto 20px auto;
}
#map{
	width: 100%;
}
#map a{
	display: inline-block;
	margin: 10px auto 0 auto;
	padding:10px 60px;
}
.pagetop{
	width: 70px;
}
	
}

@media screen and (max-width:480px){

.tel a{
	pointer-events: auto;
	
}

/* swiper */
.swiper-slide{
	padding-top:65%;
}
	
#top_bnr p{
	width: 70%;
	margin: 20px 0 0 0;
}
	
#year_box dl{
	width: 90%;
	padding: 5%;
}
	
#blogmain ul li{
	width: 100%;
}
	
}