@charset "utf-8";

@media screen and (max-width: 640px) {
#tmp_main {
	font-size: 100%;
}
#tmp_main img {
	max-width: none;
	width: 100%;
}
.section_ttl {
	font-size: 135.7%;
	padding-left: 20px;
	background-size: 10px 2px;
}
#tmp_mainvisual .main_visual_gallery {
	background-color: #ffffff;
	color: #000000;
}
#tmp_mainvisual .gallery_slide .pc_slide {
	display: none;
}
#tmp_mainvisual .gallery_slide .sp_slide {
	display: block;
}
#tmp_mainvisual .slick_control {
	position: relative;
	z-index: 99;
	left: 0;
	right: 0;
	bottom: auto;
	padding: 8px 10px;
	text-align: center;
	background-color: #ededeb;
	border-bottom: 3px solid #03a364;
}
#tmp_mainvisual .btn_slides {
	border: 1px solid #d1d1d1;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}
#tmp_mainvisual .btn_slides,
#tmp_mainvisual .btn_slides.stop span,
#tmp_mainvisual .btn_slides.start span {
	background-color: #efefef;
}
#tmp_mainvisual .slick-dots li a {
	border: 2px solid #ffffff;
	background-color: #ffffff;
}
/* ==================================================
Top page addition
================================================== */
#tmp_main_top:before,
#tmp_main_top:after,
#tmp_main_bottom:before,
#tmp_main_bottom:after{
	background-size: 100% 100%;
}
#tmp_main_top{
	background-image: url(/shared/templates/desupport_top/images/castle_bg_sp.jpg);
	padding: 0 0 70px;
}
#tmp_main_top:before{
	background-image: url(/shared/templates/desupport_top/images/skew_top_right_large_sp.png);
	width: 53px;
	height: 89px;
}
#tmp_main_top:after{
	background-image: url(/shared/templates/desupport_top/images/skew_bottom_left_large_sp.png);
	width: 43px;
	height: 71px;
}
#tmp_main_bottom{
	background-image: url(/shared/templates/desupport_top/images/castle_bg_sp.jpg);
	padding: 68px 0 82px;
}
#tmp_main_bottom:before{
	background-image: url(/shared/templates/desupport_top/images/skew_top_left_large_sp.png);
	width: 66px;
	height: 107px;
}
#tmp_main_bottom:after{
	background-image: url(/shared/templates/desupport_top/images/skew_bottom_right_large_sp.png);
	width: 54px;
	height: 88px;
}
#tmp_main .main_ttl{
	background-size: 21px auto;
	-webkit-background-size: 21px auto;
	-moz-background-size: 21px auto;
	min-width: 280px;
	background-position: left 3px,right 3px;
	padding: 0 25px;
}
#tmp_main .main_ttl h2{
	font-size: 218.7%;
	padding-left: 4px;
	letter-spacing: 0.1em;
	padding-bottom: 7px;
}
#tmp_main .main_ttl .sub{
	font-size: 93.7%;
	padding-left: 0px;
}
#tmp_main .btn_read_more{
	padding: 5px 13px 5px 10px;
}
#tmp_main .btn_read_more a{
	width: 100%;
	min-width: 100%;
	padding: 11px 10px 9px;
}
/* ==================================================
Topics
================================================== */
#tmp_topic{
	padding: 77px 0 88px;
}
#tmp_topic .topic_list {
	margin: 35px 0 15px;
}
#tmp_topic .topic_list li{
	width: 100%;
	padding: 0 10px;
}
#tmp_topic .topic_item{
	margin-bottom: 20px;
	-webkit-box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow:	0px 1px 4px 0px rgba(0, 0, 0, 0.2);
	box-shadow:		 0px 1px 4px 0px rgba(0, 0, 0, 0.2);
}
#tmp_topic .topic_item .ttl a{
	background-size: 36px auto;
	-webkit-background-size: 36px auto;
	-moz-background-size: 36px auto;
	padding: 13px 35px 11px 9px;
}
/* ==================================================
Overview
================================================== */
#tmp_overview {
	padding: 48px 10px 44px;
}
#tmp_overview .main_ttl{
	background-size: 23px auto;
	-webkit-background-size: 23px auto;
	-moz-background-size: 23px auto;
}
#tmp_overview .main_ttl h2{
	padding-bottom: 6px
}
#tmp_overview .overview_cnt{
	font-size: 100%;
	font-weight: normal;
	text-align: left;
	margin-top: 27px;
	padding: 0 21px;
	line-height: 1.9;
}
#tmp_overview .overview_cnt p span{
	display: inline;
}
/* ==================================================
Support
================================================== */
#tmp_support{
	padding: 68px 0 40px;
	background-image: url(/shared/templates/desupport_top/images/support_bg_sp.jpg);
}
#tmp_support .main_ttl{
	background-size: 23px 59px;
	-webkit-background-size: 23px 59px;
	-moz-background-size: 23px 59px;
}
#tmp_support .main_ttl h2{
	padding-bottom: 5px;
}
#tmp_support .support_list{
	margin: 49px 0 0;
}
#tmp_support .support_list li{
	width: 100%;
	padding: 0 10px 30px;
}
#tmp_support .support_list li.support_5{
	padding-bottom: 21px;
}
#tmp_support .support_list li:nth-child(2n){
	top: 0;
}
#tmp_support .support_item{
	padding-left: 125px;
}
#tmp_support .support_item .ttl{
	margin-bottom: 7px
}
#tmp_support .support_item .ttl h3{
	font-size: 141.2%;
}
#tmp_support .support_item .ttl:after{
	margin-top: 6px;
}
#tmp_support .support_item .cnt{
	font-size: 100%;
}
#tmp_support .support_item .cnt .inside{
	margin-left: -17px;
}
#tmp_support .support_item .cnt:before{
	width: 35px;
	left: -28px;
	background-image: url(/shared/templates/desupport_top/images/half_circle_white_sp_2.png);
}
#tmp_support .support_1 .support_item .cnt:before{
	left: -28px;
	background-image: url(/shared/templates/desupport_top/images/half_circle_white_sp_1.png);
}
#tmp_support .support_item .cnt .wrap_table_cell{
	height: 130px;
	padding-right: 5px;
	padding-left: 10px;
}
#tmp_support .support_item .num{
	left: -1px;
	top: -13px;
}
#tmp_support .support_item .num img{
	height: 22px;
	width: auto;
}
#tmp_support .other{
	width: 100%;
	text-align: center;
	font-size: 100%;
	margin-top: 0;
	padding: 18px 0 17px;
	letter-spacing: -0.2px;
}
#tmp_support .support_item .thumb{
	top: 0px;
	background: url(/shared/templates/desupport_top/images/img_support_1.jpg) no-repeat right center;
	background-size: auto 100%;
	width: 145px;
}
#tmp_support .support_item .thumb img {
	display: none;
}
#tmp_support .support_2 .support_item .thumb{
	width: 125px;
	background: url(/shared/templates/desupport_top/images/img_support_2.jpg) no-repeat right center;
	background-size: cover;
}
#tmp_support .support_3 .support_item .thumb{
	background: url(/shared/templates/desupport_top/images/img_support_3.jpg) no-repeat right center;
}
#tmp_support .support_4 .support_item .thumb{
	width: 165px;
	background: url(/shared/templates/desupport_top/images/img_support_4.jpg) no-repeat right 30px;
	background-size: auto 100%;
}
#tmp_support .support_5 .support_item .thumb{
	width: 175px;
	background: url(/shared/templates/desupport_top/images/img_support_5.jpg) no-repeat right 15px;
	background-size: cover;
}
/* ==================================================
Member
================================================== */
#tmp_member{
	padding: 0;
}
#tmp_member .main_ttl{
	background-size: 23px auto;
	-webkit-background-size: 23px auto;
	-moz-background-size: 23px auto;
}
#tmp_member .member_gallery .container {
	margin:0 -20px;
}
#tmp_member .member_cnt{
	margin-top: 38px;
	padding-top: 35px;
}
#tmp_member .member_ttl h3{
	font-size: 106.2%;
	margin-bottom: 15px;
}
#tmp_member .member_ttl h3:after{
	width: 16px;
	margin-top: 4px;
}
#tmp_member .member_gallery .slick_slides {
	padding:0 22px;
}
#tmp_member .member_gallery .member_bnr {
	padding:0;
}
#tmp_member .member_bnr img {
	width:auto;
	max-width:100%;
}
#tmp_member .btn_read_more{
	padding: 5px 33px 5px 30px;
}
#tmp_member .member_gallery .slick-arrow {
	width: 22px;
	top:-10px;
}
#tmp_member .member_gallery .btn_slides {
	float:left;
	width:80px;
}
#tmp_member .member_gallery .slick-dots {
	float:right;
	width:calc(100% - 90px);
	text-align:left;
}
#tmp_member .member_gallery .slick-dots li {
	float:left;
	margin-bottom:15px;
	vertical-align:top;
}
/* ==================================================
Voice
================================================== */
#tmp_voice{
	padding: 87px 0 86px;
}
#tmp_voice .main_ttl{
	background-size: 23px auto;
	-webkit-background-size: 23px auto;
	-moz-background-size: 23px auto;
}
#tmp_voice .main_ttl h2{
	padding-bottom: 5px
}
#tmp_voice .voice_slide .voice_img{
	width: 100%;
	padding: 0 30px;
	float: none;
}
#tmp_voice .voice_slide .voice_cnt{
	width: 100%;
	padding: 0 30px;
}
#tmp_voice .introduct_ttl{
	padding: 4px 10px 8px;
	margin-bottom: 9px;
}
#tmp_voice .introduct_ttl a{
	font-size: 100%;
}
#tmp_voice .btn_read_more a:before{
	width: 5px;
	height: 7px;
	margin-right: 6px;
	position: relative;
	top: -2px;
}
.voice_gallery .slick-arrow{
	width: 22px;
}
#tmp_voice .voice_gallery{
	margin-top: 41px;
	padding-top: 15px;
	padding-bottom: 10px;
	margin-bottom: 72px;
}
.voice_gallery .slick_control{
	bottom: -47px;
}
/* ==================================================
Schedule
================================================== */
#tmp_schedule_top .main_ttl{
	background-size: 23px auto;
	-webkit-background-size: 23px auto;
	-moz-background-size: 23px auto;
}
#tmp_schedule_top .schedule_top_item{
	display: block;
}
#tmp_schedule_top .schedule_top_date{
	display: block;
	width: 100%;
	font-size: 93.7%;
	padding: 12px 10px 0px 10px;
}
#tmp_schedule_top .schedule_top_ttl{
	font-size: 107.7%;
	margin-bottom:20px;
}
#tmp_schedule_top .schedule_top_ttl::after{
	width: 30px;
}
#tmp_schedule_top .schedule_top_ttl a {
	padding-bottom:5px;
}
#tmp_schedule_top .schedule_top_ttl a::after {
	background-size: 30px auto;
	width: 30px;
}
#tmp_schedule_top .schedule_top_cnt{
	display: block;
	padding: 9px 10px;
}
#tmp_schedule_top ul{
	padding: 0;
	margin-top: 34px;
	margin-bottom: 8px;
}
/* ==================================================
bg animation
================================================== */
/*背景*/
.bg_col01{
	width: 55px;
	height: 90px;
}
.bg_col02{
	width: 40px;
	height: 70px;
}
.bg_col03{
	width: 65px;
	height: 108px;
}
.bg_col04{
	width: 55px;
	height: 84px;
}




}