@charset "utf-8";
/* Body
------------------------------ */
html{
	overflow-x: hidden!important;
	font-size: 62.5%;
}
body {
	box-shadow: none;
	color: #000;
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.6em;
	font-weight: 300;
	line-height: 1.75;
	letter-spacing: .025em;
	-webkit-text-size-adjust: 100%!important;
	top: 0!important;
	margin: 0;
}
a{
	text-decoration: none;
	transition: .35s;
}
img{
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
.center{
	text-align: center;
}

/* layout
------------------------------ */
.wrapper{
	position: relative;
	display: block;
	clear: both;
	float: none;
	width: 1170px;
	margin: 0 auto;
	padding: 0 15px;
}
ul,ol{
	letter-spacing: -.4em;
	line-height: 0;
}
li{
	list-style: none;
	letter-spacing: normal;
	line-height: 1.5;
	vertical-align: middle;
}
figure{
	margin: 0;
}
p{
	margin: 0;
}
.fw_6{
	font-family: "Hiragino Kaku Gothic ProN W6", "ヒラギノ角ゴ ProN W6",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
	font-weight: 600;
}
.flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

/* Common
------------------------------ */
* {
	min-height: 0;
	min-width : 0;
}
.fl_l{
	float: left;
}
.fl_r{
	float: right;
}
.float::before,
.float::after{
	content: " ";
	display: block;
	clear: both;
}
.btn{
	position: relative;
	display: inline-block;
	color: #FFF;
	font-size: 1.4rem;
	font-family: "Hiragino Kaku Gothic ProN W6", "ヒラギノ角ゴ ProN W6",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align: center;
	font-weight: 600;
	line-height: 55px;
	letter-spacing: .025em!important;
	vertical-align: middle;
	margin-right: 22px;
	background: #D12132;
	border-radius: 27.5px;
}
.btn:last-child,
.btn:last-of-type{
	margin-right: 0;
}
.btn:hover{
	background: #000;
}
.pict img,figure img{
	position: relative;
	display: block;
	width: 100%;
	height: auto;
}
.text_link {
	display: inline-block;
	text-decoration: none;
	color: #000;
	font-weight: 500;
}
.text_link::after {
	content: "";
	display: block;
	width: 0;
	transition: width 0.3s;
	border-bottom: 1px solid #000;
	margin: -6px auto 0;
	border-radius: 1px;
}
.text_link:hover{
	text-decoration: none;
}
.text_link:hover::after {
	width: 100%;
}
.emphasis{
	color: #D12132;
}
.caution{
	position: relative;
	display: block;
	font-size: 1.6rem;
	padding-left: 1em;
	text-indent: -1em;
}
.caution::before{
	content: "※";
}

/* Header
------------------------------ */
header{
	position: fixed;
	display: block;
	width: 100%;
	height: 150px;
	z-index: 100;
	top: 0;
	background: #FFF;
}
.customize-support header{
	top: 32px;
}
header .flex{
	height: 150px;
}
#header_logo a{
	position: relative;
	display: block;
	width: 210px;
	color: #FFF;
	font-size: 1.6rem;
	line-height: 25px;
	text-align: center;
	background: #000;
}
#header_logo a::before{
	content: "";
	position: relative;
	display: block;
	width: 215px;
	height: 61px;
	background: url(../images/header_logo.jpg) no-repeat center center;
	background-size: contain;
	margin-left: -2.5px;
}
#header_logo a:hover{
	opacity: .7;
}
header .subnav{
	position: absolute;
	display: block;
	top: 5px;
	right: 30px;
}
header .subnav li a{
	color: #000;
	font-weight: 600;
	font-size: 1.2rem;
	line-height: 1;
}
header .subnav li a:hover{
	color: #D12132;
}
#gnav ul li{
	position: relative;
	display: inline-block;
	margin-right: 22px;
}
#gnav ul li:last-child{
	margin-right: 0;
}
#gnav ul li a{
	color: #000;
}
#gnav ul li a.btn{
	width: 150px;
	color: #FFF;
}
#gnav ul li a:hover{
	color: #D12132;
}
#gnav ul li a.btn:hover{
	color: #FFF;
}

/* index
------------------------------ */
/* swiper */
.swiper-container{
	height: 600px;
	margin-top: 150px;
}
.swiper-slide{
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.swiper-slide.slide01{
	background-image: url(../images/slider01.jpg);
}
.swiper-slide.slide02{
	background-image: url(../images/slider02.jpg);
}
.swiper-slide.slide03{
	background-image: url(../images/slider03.jpg);
}
.swiper-slide.slide04{
	background-image: url(../images/slider04.jpg);
}
.swiper-slide.slide_kids{
	background-image: url(../images/slider_kids_bg.jpg);
	background-repeat: repeat-x;
	background-size: auto 100%;
}
.swiper-slide.slide_kids::after{
	content: "";
	position: absolute;
	display: block;
	width: 75%;
	height: 600px;
	background: url(../images/slider_kids_bg02.png) no-repeat center left / cover;
	top: 0;
	right: 0;
}
.swiper-slide.slide_esthetic{
	background-image: url(../images/slider_esthetic_bg.jpg);
}
.swiper-slide p.txt{
	position: absolute;
	width: 745px;
	height: 203px;
	text-indent: -9999px;
	background: url(../images/slider_catch.png) no-repeat center center;
	background-size: contain;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	margin: auto;
}
.swiper-slide.slide04 p.txt{
	width: 750px;
	height: 370px;
	background-image: url(../images/slider04_catch.png);
}
.swiper-slide.slide_kids p.txt,
.swiper-slide.slide_esthetic p.txt{
	width: 1170px;
	height: 600px;
}
.swiper-slide.slide_kids p.txt{
	z-index: 1;
	background-image: url(../images/slider_catch_kids.png);
}
.swiper-slide.slide_esthetic p.txt{
	background-image: url(../images/slider_catch_esthetic.png);
}
/* //swiper */
#index main section h2,
#index main section h3{
	font-family: YakuHanJP,"Hiragino Kaku Gothic ProN W6", "ヒラギノ角ゴ ProN W6",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
}
#index main section h2{
	font-size: 2rem;
	line-height: 1;
}
#index main section h2 span.en{
	position: relative;
	display: block;
	text-indent: -9999px;
	margin-bottom: 22px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
#index main section h3{
	color: #D12132;
	font-size: 3rem;
	line-height: 1;
}
#index main section table tr th,
#index main section table tr td{
	border-right: 4px solid #FFF;
	border-bottom: 4px solid #FFF;
}
#index main section table tr th{
	color: #FFF;
	font-family: YakuHanJP,"Hiragino Kaku Gothic ProN W6", "ヒラギノ角ゴ ProN W6",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: #000;
}
#index main section table tr td{
	line-height: 1.5;
	vertical-align: middle;
	padding: 20px 33px;
	background: #F2F2F2;
}
#index main section table tr td[colspan]{
	text-align: center;
}
#index main section table tr th:last-child,
#index main section table tr td:last-child{
	border-right: 0;
}
#index main section table tr:last-of-type td{
	border-bottom: 0;
}
/* index01 */
#index01{
	position: relative;
	display: block;
	margin-top: -150px;
	padding-top: 150px;
	background: rgb(0,0,0);
	background: -moz-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 38%, rgba(242,242,242,1) 38%, rgba(242,242,242,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 38%, rgba(242,242,242,1) 38%, rgba(242,242,242,1) 100%);
	background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 38%, rgba(242,242,242,1) 38%, rgba(242,242,242,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#f2f2f2",GradientType=1);
}
#index01 .btn{
	width: 202px;
}
#index01 .flex{
	align-items: baseline;
	background: -moz-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 31%, rgba(242,242,242,1) 31%, rgba(242,242,242,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 31%, rgba(242,242,242,1) 31%, rgba(242,242,242,1) 100%);
	background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 31%, rgba(242,242,242,1) 31%, rgba(242,242,242,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000",endColorstr="#f2f2f2",GradientType=1);
}
#index01 .left{
	width: 30%;
	padding-bottom: 130px;
}
#index01 .left h2{
	color: #FFF;
	margin-bottom: 56px;
}
#index01 .left h2 span.en{
	width: 180px;
	height: 45px;
	background-image: url(../images/newsW.svg);
}
#index01 .sns{
	line-height: 0;
	letter-spacing: -.4em;
	margin-bottom: 57px;
}
.sns a{
	position: relative;
	display: inline-block;
	text-indent: -9999px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	vertical-align: middle;
	transition: .35s;
}
.sns a.fb{
	width: 19px;
	height: 34px;
	margin-right: 25px;
	background-image: url(../images/icon_fbR.svg);
}
.sns a.insta{
	width: 32px;
	height: 32px;
	margin-right: 25px;
	background-image: url(../images/icon_instaR.svg);
}
.sns a.twitter{
	width: 30px;
	height: 31px;
	background-image: url(../images/icon_xR.svg);
}
.sns a.fb:hover{
	background-image: url(../images/icon_fbW.svg);
}
.sns a.insta:hover{
	background-image: url(../images/icon_instaW.svg);
}
.sns a.twitter:hover{
	background-image: url(../images/icon_xW.svg);
}
#index01 .left .btn:hover{
	color: #D12132;
	background: #FFF;
}
#index01 .right{
	max-width: 733px;
	line-height: 0;
	letter-spacing: -.4em;
	padding: 130px 0 90px;
}
#index01 .right div,
#index01 .right .twitter{
	position: relative;
	display: inline-block;
	letter-spacing: .05em;
	vertical-align: top;
}
#index01 .right div{
	/*margin-right: 50px;*/
	margin: 0 84px 30px 0;
	text-align: center;
	/*width: 732px;*/
}
#index01 .right div#sb_instagram,
#index01 .right div#sbi_images,
#index01 .right div.sbi_photo_wrap {
	margin-right: 0;
    margin: 0;
    width: 100%;
}
#index01 .right div#sb_instagram,
#index01 .right div#sbi_images {
    position: relative;
}
#index01 .right dl{
	max-width: 427px;
	line-height: 1;
	/*margin-bottom: 70px;*/
	margin-bottom: 30px;
	text-align: left;
}
#index01 .right dl dt{
	position: relative;
	display: inline-block;
	line-height: 2.38;
	margin-right: 4rem;
	vertical-align: top;
}
#index01 .right dl dd{
	position: relative;
	display: inline-block;
	max-width: 270px;
	width: 100%;
	line-height: 2.38;
	vertical-align: top;
}
#index01 .right dl dd a{
	line-height: 1;
}
#index01 .right dl dd a:hover{
	color: #D12132;
}
#index01 .right dl dd a::after{
	margin-top: 0;
	border-color: #D12132;
}
#index01 .right div.twitter{
	max-width: 250px;
	max-height: 336px;
	margin-right: 0;
	overflow: auto;
}
/*#index01 .right iframe{
	margin-top: 40px;
	max-width: 100%;
}*/
#index01 .right .btn_list{
	margin-right: 0;
}
#index01 .right .btn_list .btn{
	display: block;
	margin: 0 auto;
}
#index01 .right .btn_list .btn:first-child{
	margin: 18px auto;
}
#index01 .bnr{
	max-width: 733px;
	width: 100%;
}
#index01 .bnr a{
	position: relative;
	display: block;
	max-width: 733px;
	height: 125px;
}
#index01 .bnr a:first-child{
	margin-bottom: 40px;
}
#index01 .bnr a:hover{
	opacity: .7;
}
/* //index01 */
/* index02 */
#index02{
	position: relative;
	display: block;
	margin-top: -85px;
	padding-top: 210px;
	z-index: 1;
}
#index02 h2 span.en{
	width: 478px;
	height: 45px;
	background-image: url(../images/our_workout.svg);
}
#index02 h2::after{
	content: "";
	position: absolute;
	width: 522px;
	height: 371px;
	background: url(../images/index02_map.png) no-repeat center center;
	background-size: contain;
	top: -52px;
	right: 15px;
	z-index: 2;
}
#index02 .box{
	position: relative;
	max-width: 550px;
	margin-top: 90px;
	padding-left: 133px;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: auto 90px;
}
#index02 .box:first-of-type{
	margin-top: 100px;
	background-image: url(../images/icon_stopwatch.svg);
	background-size: auto 89px;
}
#index02 .box:nth-of-type(2){
	background-image: url(../images/icon_beginner.svg);
}
#index02 .box:nth-of-type(3){
	background-image: url(../images/icon_calendar.svg);
}
#index02 .box:nth-of-type(4){
	background-image: url(../images/icon_glove.svg);
}
#index02 .box h3{
	margin-bottom: 15px;
}
#index02 .box p{
	max-width: 550px;
	font-family: YakuHanJP,"Hiragino Kaku Gothic ProN W3", "ヒラギノ角ゴ ProN W3",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.63;
	letter-spacing: 0;
}
#index02 .right{
	position: absolute;
	width: 42%;
	top: 326px;
	right: 0;
	z-index: 1;
}
#index02 .right div{
	position: relative;
	display: block;
	width: 100%;
	height: 316px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	margin-top: 52px;
}
#index02 .right div:first-of-type{
	margin-top: 0;
	background-image: url(../images/index02_pict01.jpg);
}
#index02 .right div:nth-of-type(2){
	background-image: url(../images/index02_pict02.jpg);
	background-position: top center;
}
#index02 .right div:nth-of-type(3){
	background-image: url(../images/index02_pict03.jpg);
}
/* //index02 */
/* index03 */
#index03{
	background: #F3F3F3;
	margin-top: -42px;
}
#index03::before,#index03::after{
	content: "";
	position: relative;
	display: block;
	width: 100%;
	height: 216px;
	background: linear-gradient(to top left, #F3F3F3 50%, #FFF 50.5%) no-repeat top right/100% 100%
}
#index03::after{
	height: 188px;
	background: linear-gradient(to top right, #FFF 50%, #F3F3F3 50.5%) no-repeat top left/100% 100%
}
#index03 .flex{
	align-items: flex-start;
	padding: 60px 15px 173px;
}
#index03 figure{
	max-width: 224px;
}
#index03 figure img{
	max-width: 212px;
	margin-bottom: 30px;
}
#index03 figure figcaption{
	font-size: 1.4rem;
	line-height: 1;
}
#index03 figure figcaption span{
	display: block;
	color: #D12132;
	font-size: 2rem;
	margin-top: 10px;
}
#index03 .flex div{
	max-width: 874px;
}
#index03 h2{
	width: 533px;
	height: 50px;
	margin-bottom: 25px;
	background-image: url(../images/getfit.svg);
}
#index03 .flex div p{
	line-height: 1.63;
	margin-bottom: 55px;
}
#index03 .flex div iframe{
	display: block;
}
/* //index03 */
/* index04 */
#index04{
	position: relative;
	display: block;
	/* margin-top: -230px; */
	padding: 210px 0 170px;
}
#index04::after{
	content: "";
	position: absolute;
	display: block;
	/* width: 30%; */
	width: 42%;
	/* height: 370px; */
	height: 316px;
	background: url(../images/index04_pict01.jpg) no-repeat center center;
	background-size: cover;
	/*top: -227px;*/
	top: 147px;
	right: 0;
}
#index04 h2 span.en{
	width: 160px;
	height: 42px;
	background-image: url(../images/plan.svg);
}
#index #index04 h3{
	font-size: 2rem;
	line-height: 1.5;
	margin: 50px 0 110px;
}
#index04 div.wrapper div{
	/* margin-bottom: 25px; */
	margin-bottom: 75px;
}
#index04 div.wrapper .kids_box{
	margin-bottom: 20px;
}
#index04 div.wrapper .kids_box h4{
	margin-bottom: 32px;
}
#index04 div.wrapper .kids_box .btn{
	position: absolute;
	display: block;
	width: 200px;
	height: 44px;
	font-weight: 600;
	line-height: 44px;
	top: -9px;
	right: 0;
}
#index04 table.second{
	margin: 80px 0 25px;
}
#index04 table tr th{
	line-height: 58px;
}
#index04 table:first-of-type tr th{
	width: 290px;
}
#index04 table tr td.sub{
	background: #DCDCDC;
}
#index04 p.caution{
	line-height: 1.63;
}
#index04 table.second tr td{
	line-height: 1;
}
#index04 table.second tr td.sub{
	width: 411px;
}
#index04 table.second tr td:nth-child(2){
	width: 726px;
	text-align: right;
}
#index main #index04 table tr:last-of-type td:last-child{
	border-right: 4px solid #FFF;
}
#index04 div.wrapper .box .table_box{
	margin-bottom: 0;
}
#index04 p.caution a{
	color: #D12132;
}
#index04 p.caution a:hover{
	color: #000;
}
#index04 .box{
	position: relative;
	display: block;
	margin-top: 35px;
}
#index04 .box:first-of-type{
	margin-top: 0;
}
#index04 .box h4{
	position: relative;
	display: block;
	font-size: 24px;
	line-height: 23px;
	letter-spacing: .04em;
	margin-bottom: 16px;
}
#index04 .box h4::before{
	content: "";
	position: relative;
	display: inline-block;
	width: 17px;
	height: 23px;
	background: url(../images/title_slash.svg) no-repeat center center / contain;
	vertical-align: middle;
	margin-right: 5px;
	top: -3px;
}
@media screen and (min-width: 481px) {
	#index04 .box h4{
		pointer-events: none;
	}
}
#index04 .box table{
	width: 100%;
}
#index04 .box table tr th,
#index04 .box table tr td{
	text-align: left;
	line-height: 1.56;
}
#index04 .box table tr th{
	width: 328px;
	padding: 20px;
	vertical-align: middle;
}
#index04 .layout_flex{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
#index04 .layout_flex .box{
	max-width: 567px;
	width: 100%;
	margin: 0;
}
#index04 .layout_flex .box table tr th{
	width: 168px;
}
/* //index04 */
/* index05 */
#index05{
	text-align: center;
	padding: 154px 0 177px;
	background: url(../images/trial_bg.jpg) no-repeat center center;
	background-size: cover;
}
#index05 h2{
	position: relative;
	display: block;
	color: #FFF;
	margin: -303px 0 60px;
	padding-top: 303px;
}
#index05 h2 span.en{
	width: 294px;
	height: 45px;
	background-image: url(../images/tryW.svg);
	margin: 0 auto 22px;
}
#index05 p{
	display: inline-block;
	color: #FFF;
	font-size: 3rem;
	line-height: 1;
	border-bottom: 6px solid #D12132;
	padding-bottom: 10px;
}
#index05 .btn{
	display: block;
	width: 714px;
	font-size: 2rem;
	line-height: 70px;
	margin: 70px auto 0;
	border-radius: 35px;
}
#index05 .btn:hover{
	color: #D12132;
	background: #FFF;
}
/* //index05 */
/* index06 */
#index06{
	padding-bottom: 142px;
}
#index06 .flex_box{
	position: relative;
	display: block;
	background: rgb(209,33,50);
	background: -moz-linear-gradient(90deg, rgba(209,33,50,1) 0%, rgba(209,33,50,1) 42%, rgba(255,255,255,1) 42%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(90deg, rgba(209,33,50,1) 0%, rgba(209,33,50,1) 42%, rgba(255,255,255,1) 42%, rgba(255,255,255,1) 100%);
	background: linear-gradient(90deg, rgba(209,33,50,1) 0%, rgba(209,33,50,1) 42%, rgba(255,255,255,1) 42%, rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#D12132",endColorstr="#FFFFFF",GradientType=1);
	margin-bottom: 115px;
	z-index: 1;
}
#index06 .flex_box .flex{
	height: 500px;
	justify-content: flex-start;
	align-items: baseline;
	/*background: -moz-linear-gradient(90deg, rgba(209,33,50,1) 0%, rgba(209,33,50,1) 33%, rgba(255,255,255,0) 33%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(90deg, rgba(209,33,50,1) 0%, rgba(209,33,50,1) 33%, rgba(255,255,255,0) 33%, rgba(255,255,255,0) 100%);
	background: linear-gradient(90deg, rgba(209,33,50,1) 0%, rgba(209,33,50,1) 33%, rgba(255,255,255,0) 33%, rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#D12132",endColorstr="#FFFFFF",GradientType=1);*/
	z-index: 1;
}
#index06 .flex_box .flex h2{
	position: relative;
	display: block;
	color: #FFF;
	width: 32.5%;
	margin-top: -303px;
	padding-top: 303px;
}
#index06 .flex_box .flex h2 span.en{
	width: 289px;
	height: 47px;
	background-image: url(../images/contactW.svg);
}
#index06 .flex_box .flex p{
	position: relative;
	display: block;
	padding: 120px 0 0 180px;
	line-height: 1.63;
}
#index06 .flex_box .flex p span{
	display: block;
}
#index06 .flex_box .flex p::before{
	content: "";
	position: absolute;
	display: block;
	width: 74px;
	height: 74px;
	background: url(../images/contact_logo.jpg) no-repeat center center;
	background-size: contain;
	margin-top: -10px;
	left: 90px;
}
#index06 .flex_box .ggmap{
	position: absolute;
	display: block;
	width: 58%;
	height: 283px;
	bottom: 0;
	right: 0;
	z-index: 10;
}
#index06 .flex_box .ggmap iframe{
	width: 100%;
}
#index06 #contact{
	position: relative;
	display: block;
	margin-top: -200px;
	padding-top: 200px;
}
#index06 #contact h3,
#yonmaruyon01 #contact h3,
#thanks01 #contact h3{
	position: relative;
	color: #000;
	font-size: 3rem;
	vertical-align: top;
}
#index06 #contact h3::before,
#yonmaruyon01 #contact h3::before,
#thanks01 #contact h3::before{
	content: "";
	position: relative;
	display: inline-block;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	vertical-align: middle;
}
#index06 #contact .flex,
#yonmaruyon01 #contact .flex,
#thanks01 #contact .flex{
	align-items: baseline;
	padding-bottom: 73px;
	margin-bottom: 84px;
	border-bottom: .5px solid #000;
}
#index06 #contact .flex h3::before,
#yonmaruyon01 #contact .flex h3::before,
#thanks01 #contact .flex h3::before{
	width: 25px;
	height: 45px;
	background-image: url(../images/icon_tel.svg);
	margin-right: 25px;
}
#index06 #contact .flex p span.tel,
#yonmaruyon01 #contact .flex p span.tel,
#thanks01 #contact .flex p span.tel{
	position: relative;
	display: block;
	width: 342px;
	height: 37px;
	text-indent: -9999px;
	background: url(../images/tel.svg) no-repeat center center;
	background-size: contain;
	margin-top: 12px;
}
#index06 #contact h3.mail{
	margin-bottom: 35px;
}
#index06 #contact h3.mail::before{
	width: 45px;
	height: 35px;
	background-image: url(../images/icon_mail.svg);
	margin-right: 12px;
}
#index #mailformpro table{
	margin: 55px 0 50px;
}
#index #mailformpro table tr th{
	color: #000;
	width: 321px;
	text-align: left;
	vertical-align: middle;
	padding-left: 24px;
	background: #DCDCDC;
}
#index #mailformpro table tr:last-child th{
	vertical-align: top;
	padding-top: 23px;
}
#index #mailformpro table tr th span.must{
	color: #D12132;
	margin-left: 0.5rem;
}
#index #mailformpro table tr td{
	padding: 14px 25px;
	background: #F3F3F3;
}
#index #mailformpro table tr td input{
	display: block;
	width: 776px;
	height: 36px;
	font-size: 1.6rem;
	border: 0;
	padding: 10px;
	box-sizing: border-box;
}
#index #mailformpro table tr td textarea{
	display: block;
	min-width: 776px;
	max-width: 776px;
	min-height: 153px;
	font-size: 16px;
	line-height: 1.75;
	border: 0;
	padding: 10px;
	box-sizing: border-box;
}
#privacy_policy{
	position: relative;
	display: block;
	width: 100%;
	height: 196px;
	padding: 20px 48px;
	background: #F3F3F3;
	box-sizing: border-box;
}
#index #privacy_policy h3,#privacy_policy h4{
	font-size: 1.6rem;
	line-height: 1;
	margin-bottom: 5px;
}
#privacy_policy h4{
	margin-top: 26px;
}
#privacy_policy p{
	font-size: 1.4rem;
	line-height: 1.86;
}
#privacy_policy div{
	height: 130px;
	overflow: auto;
}
#index #mailformpro button.submit{
	position: relative;
	display: block;
	width: 300px;
	font-size: 1.4rem;
	line-height: 70px;
	text-shadow: none;
	box-shadow: none;
	padding: 0;
	border: 0;
	border-radius: 35px;
	background: #D12132;
	margin: 52px auto 0;
	transition: .35s;
}
#index #mailformpro button.submit:hover{
	background: #000;
}

/* sub contents
------------------------------ */
main .main_title{
	position: relative;
	display: block;
	width: 100%;
	height: 300px;
	background: url(../images/main_title_bg.jpg) no-repeat center center;
	background-size: cover;
	margin-top: 150px;
}
main .main_title h1,main .main_title p{
	color: #FFF;
	font-size: 2rem;
	line-height: 1;
	text-align: center;
	padding-top: 110px;
}
main .main_title h1 span.en,
main .main_title p span.en{
	position: relative;
	display: block;
	height: 45px;
	text-indent: -9999px;
	margin: 0 auto 20px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.sub_section{
	position: relative;
	display: block;
}
.sub_section .section_h2{
	position: relative;
	display: block;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1;
	text-align: center;
	margin-bottom: 50px;
}
.sub_section .section_h2 .en{
	position: relative;
	display: block;
	font-size: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	margin: 0 auto 20px;
}
.sub_section .title_underline{
	position: relative;
	display: block;
	text-align: center;
	margin-bottom: 100px;
}
.sub_section .title_underline span{
	position: relative;
	display: inline-block;
	font-size: 3rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .05em;
	padding-bottom: 10px;
	border-bottom: 4px solid #CF2132;
}
.sub_section .fukidashi_center{
	position: relative;
	display: block;
	text-align: center;
}
.sub_section .fukidashi_center .inner{
	position: relative;
	display: inline-block;
	color: #FFF;
	font-size: 2.8rem;
	line-height: 80px;
	padding: 0 75px;
	background: #CF2132;
}
.sub_section .fukidashi_center .inner::after{
	content: "";
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 13px solid transparent;
	border-left: 13px solid transparent;
	border-top: 14px solid #cf2132;
	border-bottom: 0;
	left: 0;
	right: 0;
	bottom: -14px;
	margin: 0 auto;
}
.sub_section .fukidashi_center .inner span::before,
.sub_section .fukidashi_center .inner span::after{
	content: "";
	position: relative;
	display: inline-block;
	width: 25px;
	height: 39px;
	background: url(../images/fukidashi_innerL.svg) no-repeat center center / contain;
	vertical-align: middle;
	margin-right: 10px;
}
.sub_section .fukidashi_center .inner span::after{
	transform: scale(-1,1);
	margin: 0 0 0 10px;
}
.sub_section .layout_flex{
	display: flex;
}
.sub_section .layout_flex.sb{
	justify-content: space-between;
}
.about_section{
	padding: 50px 0 100px;
}
.about_section::after{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 772px;
	background: #F1F1F1;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	z-index: -1;
}
.about_section .pict{
	position: relative;
	display: block;
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
}
.about_section .center.color_red{
	position: relative;
	display: block;
	color: #CF2132;
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1.75;
	letter-spacing: .05em;
	margin-bottom: 70px;
}
.about_section .fukidashi_center{
	margin: 75px 0 50px;
}
.about_section ul{
	max-width: 1015px;
	width: 100%;
	margin: 0 auto;
	gap: 23px 27px;
	flex-wrap: wrap;
}
.about_section ul li{
	position: relative;
	display: block;
	max-width: 494px;
	width: 100%;
	font-size: 1.8rem;
	font-weight: 600;
	text-align: center;
	line-height: 60px;
	background: #FFF;
	border-radius: 30px;
}

/* voice
------------------------------ */
#voice main .main_title h1 span{
	width: 185px;
	background-image: url(../images/voice.svg);
}
#voice01 h2{
	position: relative;
	display: block;
	color: #FFF;
	font-size: 2.8rem;
	line-height: 74px;
	text-align: center;
	margin-bottom: 14px;
	background: #000;
}
.voice_list{
	align-items: center;
	margin-top: 36px;
}
.voice_list.photo{
	align-items: flex-start;
}
.voice_list img{
	max-width: 195px;
	width: 100%;
}
.voice_list div{
	position: relative;
	display: block;
	max-width: 945px;
	width: 100%;
	min-height: 195px;
	padding: 30px 25px;
	box-sizing: border-box;
	background: #F2F2F2;
}
.voice_list div p{
	letter-spacing: -.04em;
}
.voice_list div p.name{
	font-size: 1.8rem;
	line-height: 1;
	letter-spacing: .05em;
	margin-bottom: 20px;
}
#bottom_contact{
	position: relative;
	display: block;
	width: 100%;
	height: 560px;
	margin-top: 150px;
	padding: 102px 0;
	background: url(../images/bottom_contact-bg.jpg) no-repeat center center;
	background-size: cover;
	box-sizing: border-box;
}
#bottom_contact .white_box{
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 42px 45px;
	background: rgba(255,255,255,.9);
}
#bottom_contact h2{
	position: relative;
	display: block;
	height: 47px;
	font-size: 0;
	margin: 0 auto 30px;
	padding-bottom: 26px;
	background: url(../images/contact.svg) no-repeat center top;
	background-size: auto 47px;
	border-bottom: 3px solid #D12132;
}
#bottom_contact .flex{
	align-items: flex-start;
}
#bottom_contact .flex div{
	max-width: 540px;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
}
#bottom_contact .flex .tel_box{
	border-right: 1px solid #000;
}
#bottom_contact .flex div h3{
	font-size: 2.6rem;
	line-height: 1;
	margin-bottom: 20px;
}
#bottom_contact .flex div h3::before{
	content: "";
	position: relative;
	display: inline-block;
	margin-right: 10px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	vertical-align: middle;
}
#bottom_contact .flex .tel_box h3::before{
	width: 20px;
	height: 36px;
	background-image: url(../images/icon_telR.svg);
}
#bottom_contact .flex .mail_box h3::before{
	width: 38px;
	height: 30px;
	background-image: url(../images/icon_mailR.svg);
}
#bottom_contact .tel{
	position: relative;
	display: block;
	width: 342px;
	height: 37px;
	font-size: 0;
	background: url(../images/tel_number.svg) no-repeat center center;
	background-size: contain;
	margin: 0 auto 15px;
}
#bottom_contact .flex .tel_box p{
	line-height: 1.8;
}
#bottom_contact .flex div .btn{
	width: 370px;
	line-height: 70px;
	border-radius: 36px;
}

/* kids_class
------------------------------ */
#kids_class .main_title{
	background-image: url(../images/maintitle_kidsclass.jpg);
}
#kids_class .main_title h1 span{
	width: 353px;
	height: 45px;
	background-image: url(../images/text_kids-classWhite.svg);
}
#kc_about h2 .en{
	width: 353px;
	height: 45px;
	background-image: url(../images/text_kids-classBlack.svg);
}
#kc_point{
	padding-top: 105px;
}
#kc_point ul{
	gap: 0 39px;
}
#kc_point ul li{
	position: relative;
	display: block;
	max-width: 362px;
	width: 100%;
	text-align: center;
	padding: 50px 0 26px;
	background: #F1F1F1;
}
#kc_point ul li::before{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 45px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	top: -22px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#kc_point ul li:first-child::before{
	background-image: url(../images/number01Red.svg);
}
#kc_point ul li:nth-child(2)::before{
	background-image: url(../images/number02Red.svg);
}
#kc_point ul li:nth-child(3)::before{
	background-image: url(../images/number03Red.svg);
}
#kc_point ul li img{
	position: relative;
	display: block;
	width: auto;
	/* max-height: 143px; */
	margin: 0 auto 21px;
}
#kc_point ul li span{
	position: relative;
	display: block;
	font-size: 1.8rem;
	line-height: 1.67;
	letter-spacing: .05em;
}
#kc_guidance{
	padding-top: 120px;
}
#kc_guidance .pict{
	position: relative;
	display: block;
	max-width: 564px;
	width: 100%;
}
#kc_guidance p{
	max-width: 564px;
	width: 100%;
}
#kc_curriculum{
	padding: 115px 0 130px;
}
#kc_curriculum .title_underline{
	margin-bottom: 55px;
}
#kc_curriculum p.center{
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.89;
	margin-bottom: 55px;
}
#kc_curriculum ul{
	gap: 22px 30px;
	flex-wrap: wrap;
}
#kc_curriculum ul li{
	position: relative;
	display: block;
	max-width: 370px;
	width: 100%;
	height: 80px;
	color: #FFF;
	font-size: 2.2rem;
	font-weight: 600;
	line-height: 80px;
	text-align: center;
	background: #cf2132;
	border-radius: 40px;
}
#kc_detail{
	padding: 105px 0 125px;
	background: #f1f1f1;
}
#kc_detail table{
	width: 100%;
}
#kc_detail table tr th,#kc_detail table tr td{
	padding: 26px 40px;
	border-bottom: 3px solid #f1f1f1;
}
#kc_detail table tr th{
	width: 370px;
	color: #FFF;
	text-align: left;
	vertical-align: middle;
	border-right: 3px solid #f1f1f1;
	background: #000;
}
#kc_detail table tr th.top{
	vertical-align: top;
}
#kc_detail table tr td{
	background: #FFF;
}
#kc_detail table tr td .box{
	padding-bottom: 14px;
	margin-bottom: 18px;
	background: url(../images/line_dotBlack.svg) repeat-x left bottom / auto 2px;
}
#kc_detail table tr:nth-child(2) td dl:first-of-type{
	display: flex;
	align-items: flex-start;
	gap: 0 10px;
}
#kc_detail table tr:last-child td dl:first-of-type{
	margin-bottom: 20px;
}
#kc_detail table tr td dl dt{
	max-width: 85px;
	width: 100%;
}
#kids_class #bottom_contact{
	margin-top: 5px;
}

/* self esthetic
------------------------------ */
#self_esthetic .main_title{
	background-image: url(../images/maintitle_selfesthetic.jpg);
}
#self_esthetic .main_title h1 span{
	width: 444px;
	height: 45px;
	background-image: url(../images/text_selfestheticWhite.svg);
}
#se_about h2 .en{
	width: 534px;
	height: 45px;
	background-image: url(../images/text_beautymachineBlack.svg);
}
#se_about .center.color_red{
	margin-bottom: 30px;
}
#se_effect{
	padding: 110px 0 125px;
}
#se_effect ul li{
	background: #f1f1f1;
}
#se_effect ul li:first-child{
	margin-bottom: 50px;
}
#se_effect ul li .pict{
	position: relative;
	display: block;
	max-width: 497px;
	width: 100%;
}
#se_effect ul li .text{
	padding: 53px 50px 50px;
}
#se_effect ul li h3{
	position: relative;
	display: block;
	width: 100%;
	height: 45px;
	font-size: 0;
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
	margin-bottom: 40px;
}
#se_effect ul li:first-child h3{
	background-image: url(../images/text_bodyRed.svg);
}
#se_effect ul li:nth-child(2) h3{
	background-image: url(../images/text_faceRed.svg);
}
#se_effect ul li .circle{
	position: relative;
	display: block;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 2.1;
	letter-spacing: .05em;
	padding-left: 1em;
	text-indent: -1em;
}
#se_effect ul li .circle::before{
	content: "●";
}
#se_reason{
	padding: 100px 0 125px;
	background: #f1f1f1;
}
#se_reason ul{
	gap: 0 42px;
}
#se_reason ul li{
	position: relative;
	display: block;
	max-width: 362px;
	width: 100%;
	background: #FFF;
}
#se_reason ul li .text{
	position: relative;
	display: block;
	padding: 25px 21px 24px;
}
#se_reason ul li h3{
	position: relative;
	display: block;
	color: #cf2132;
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 15px;
}
#se_reason ul li p{
	line-height: 1.75;
	letter-spacing: .05em;
}
#se_point{
	padding-top: 110px;
}
#se_point .layout_flex{
	justify-content: space-between;
}
#se_point .pict{
	position: relative;
	display: block;
	max-width: 564px;
	width: 100%;
}
#se_point .text{
	position: relative;
	display: block;
	max-width: 560px;
	width: 100%;
}
#se_point .text p{
	position: relative;
	display: block;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 2.17;
	letter-spacing: .05em;
	padding-left: 1em;
	text-indent: -1em;
}
#se_point .text p::before{
	content: "●";
}

/* news - archive
------------------------------ */
#news main .main_title h1 span,
#news main .main_title p span{
	width: 180px;
	background-image: url(../images/newsW.svg);
}
.topics_list li{
	align-items: flex-start;
	padding-bottom: 5rem;
	margin-bottom: 5rem;
	border-bottom: 1px solid rgba(0,0,0,.1);
}
.topics_list li a.pict{
	max-width: 445px;
	height: auto;
}
.topics_list li a.pict:hover{
	opacity: .7;
}
.topics_list li .contents{
	width: 680px;
}
.topics_list li .date{
	font-size: 1.4rem;
	line-height: 1;
	margin-bottom: 5px;
}
.topics_list li h2,#thanks01 h2{
	color: #D12132;
	font-size: 3rem;
	line-height: 1.5;
	margin-bottom: 10px;
}
.topics_list li p.expert{
	font-size: 1.4rem;
	line-height: 2;
}
.topics_list li a.btn{
	width: 200px;
	margin-top: 21px;
}

/* news - single
------------------------------ */
section.single h1{
	color: #D12132;
	font-size: 3rem;
	line-height: 1.5;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(0,0,0,.1);
}
section.single p.date{
	position: relative;
	display: block;
	font-size: 1.4rem;
	line-height: 1;
	text-align: right;
	margin-bottom: 30px;
}
.adjacent_post_links{
	margin: 80px 0 120px;
}
.adjacent_post_links .previous{
	float: left;
	width: 40%;
	text-align: left;
}
.adjacent_post_links .next{
	float: right;
	max-width: 40%;
	text-align: right;
}
.adjacent_post_links .previous a{
	position: relative;
	display: inline-block;
	color: #D12132;
	padding-left: 30px;
}
.adjacent_post_links .next a{
	position: relative;
	display: inline-block;
	color: #D12132;
	padding-right: 30px;
}
.adjacent_post_links .previous a::before{
	content: "";
	position: absolute;
	display: block;
	width: 16px;
	height: 16px;
	border-top: 2px solid #D12132;
	border-left: 2px solid #D12132;
	top:0;
	left: 0;
	bottom:0;
	margin: auto;
	transform: rotate(-45deg);
	transition: .35s
}
.adjacent_post_links .next a::before{
	content: "";
	position: absolute;
	display: block;
	width: 16px;
	height: 16px;
	border-top: 2px solid #D12132;
	border-right: 2px solid #D12132;
	transform: rotate(45deg);
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	transition: .35s
}
.single .content .adjacent_post_links  ul li a:hover{
	color: #000;
}
.adjacent_post_links .previous a:hover::before{
	left: -5px;
	border-top-color: #000;
	border-left-color: #000;
}
.adjacent_post_links .next a:hover::before{
	right: -5px;
	border-top-color: #000;
	border-right-color: #000;
}

/* 404
------------------------------ */
#yonmaruyon main .main_title h1 span{
	width: 509px;
	height: 45px;
	background-image: url(../images/404.svg);
}
#yonmaruyon01{
	text-align: center;
	margin-bottom: 80px;
}
#yonmaruyon01 a.btn{
	width: 200px;
}
#yonmaruyon01 #contact .flex,
#thanks01 #contact .flex{
	display: block;
	padding-bottom: 0;
	margin: 30px 0 50px;
	border-bottom: 0;
}
#yonmaruyon01 #contact .flex p span.tel,
#thanks01 #contact .flex p span.tel{
	margin: 12px auto 0;
}

/* thanks
------------------------------ */
#thanks main .main_title h1 span{
	width: 248px;
	background-image: url(../images/thanks.svg);
}
#thanks01{
	margin-bottom: 80px;
}
#thanks01 p{
	line-height: 2;
}
#thanks01 .caution{
	font-size: 1.4rem;
}
#thanks01 .btn{
	width: 200px;
	margin-top: 30px;
}

/* footer
------------------------------ */
footer{
	position: relative;
	display: block;
	padding: 420px 0 150px;
	background: #000 url(../images/footer_bg02.jpg);
	background-repeat: no-repeat, no-repeat;
	background-position: center bottom, 0 0;
	background-size: auto 475px, cover;
}
footer::before,footer::after{
	content: "";
	/* position: relative;
	display: inline-block; */
	position: absolute;
	display: block;
	width: 50%;
	height: 420px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	/* height: 600px;
	background: url(../images/footer_bg01.jpg) no-repeat center center;
	background-size: cover; */
	top: 0;
}
footer::before{
	background-image: url(../images/footer_bg01L.jpg);
	left: 0;
}
footer::after{
	background-image: url(../images/footer_bg01R.jpg);
	right: 0;
}
#voice footer,#kids_class footer{
	padding-top: 0;
}
#voice footer::before,#voice footer::after,
#kids_class footer::before,#kids_class footer::after{
	display: none;
}
footer .wrapper{
	padding-top: 150px;
}
footer .flex{
	align-items: flex-start;
}
footer .flex .left p{
	color: #FFF;
	font-size: 1.4rem;
	line-height: 1.7;
}
footer .flex .left p a{
	color: #FFF;
}
footer .flex .left p a:hover{
	color: #D12132;
}
footer .right{
	display: flex;
	align-items: flex-end;
	letter-spacing: -.4em;
}
footer .right .sns,footer .right ul{
	position: relative;
	display: inline-block;
	vertical-align: bottom;
}
footer .sns{
	margin-right: 52px;
}
footer .sns .fb{
	background-image: url(../images/icon_fbW.svg);
}
footer .sns .insta{
	background-image: url(../images/icon_instaW.svg);
}
footer .sns .twitter{
	background-image: url(../images/icon_xW.svg);
}
footer .sns .fb:hover{
	background-image: url(../images/icon_fbR.svg);
}
footer .sns .insta:hover{
	background-image: url(../images/icon_instaR.svg);
}
footer .sns .twitter:hover{
	background-image: url(../images/icon_xR.svg);
}
footer .right div.layout_flex{
	display: flex;
	gap: 0 45px;
	align-items: flex-start;
}
footer ul li{
	line-height: 1;
	margin-bottom: 20px;
}
footer ul li:last-child{
	margin-bottom: 0;
}
footer ul li a{
	color: #FFF;
	font-size: 1.4rem;
}
footer ul li a:hover{
	color: #D12132;
}
footer small{
	display: block;
	color: #FFF;
	font-size: 1.2rem;
	margin-top: -20px;
}
footer small a.text_link{
	color: #FFF;
	line-height: 1em;
}
footer small a.text_link::after{
	margin-top: 1px;
	border-color: #FFF;
}

/* Breadcrumb
------------------------------ */
.breadcrumb{
	width: 100%;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1;
	letter-spacing: .05em;
	margin: 0 auto 70px;
	padding: 20px 0;
	z-index: 1;
	background: #F2F2F2;
}
.breadcrumb a{
	color: #D12132;
}
.breadcrumb a:hover{
	opacity: .7;
}

/* Page Navi
------------------------------ */
.wp-pagenavi{
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	text-align: center;
	padding-bottom: 110px;
}
.wp-pagenavi span,
.wp-pagenavi a{
	position: relative;
	display: inline-block;
	width: 35px;
	height: 35px;
	font-family: "Hiragino Kaku Gothic ProN W6", "ヒラギノ角ゴ ProN W6",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 32px;
	vertical-align: middle;
	margin-right: 6px;
	border: 0;
	border-radius: 50%;
	box-sizing: border-box;
}
.wp-pagenavi span{
	color: #FFF;
	background: #D12132;
}
.wp-pagenavi span.pages{
	display: none;
}
.wp-pagenavi a{
	color: #000;
	line-height: 28px;
	background: #F2F2F2;
	border: 1px solid #F2F2F2;
	box-sizing: border-box;
}
.wp-pagenavi a.nextpostslink,
.wp-pagenavi a.previouspostslink{
	font-size: 2.5rem;
	font-family: "Hiragino Kaku Gothic ProN W3", "ヒラギノ角ゴ ProN W3",
				 "Hiragino Sans", "ヒラギノ角ゴシック", source-han-sans-japanese,
				 "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
				 "游ゴシック", "Yu Gothic", "メイリオ", Meiryo,
				 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 24px;

}
.wp-pagenavi a:hover{
	color: #FFF;
	background: #D12132;
	border-color: #D12132;
}

/* Page Top
------------------------------ */
.pagetop{
	position: fixed;
	bottom: 40px;
	right: 50px;
	width: 50px;
	height: 50px;
	-webkit-transition: all .4s;
	-moz-transition: all .4s;
	-ms-transition: all .4s;
	-o-transition: all .4s;
	transition: all .4s;
	opacity: 0;
	z-index: 10;
}
.pagetop.show{
	opacity: 1;
	bottom: 60px;
	right: 50px;
	width: 50px;
	height: 50px;
}
.pagetop a{
	position: relative;
	display: block;
	width: 60px;
	height: 60px;
	text-align: left;
	text-indent: -9999px;
	background: #D12132;
	border-radius: 50%;
	box-sizing: border-box;
}
.pagetop a:hover{
	background: #FFF;
}
.pagetop a::before{
	content: "";
	position: absolute;
	width: 20px;
	height: 20px;
	border-top: #FFF solid 1px;
	border-left: #FFF solid 1px;
	transform: rotate(45deg);
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 24px;
	transition: .25s;
}
.pagetop a:hover::before{
	border-top-color: #D12132;
	border-left-color: #D12132;
}

/* IE用cssハック */
@media all and (-ms-high-contrast: none) {
	#index01 .flex{
		align-items: flex-start;
	}
	#index01 .left{
		padding: 130px 0 90px;
	}
	#index01 .right{
		width: 63%;
	}
	#index01 .right div.twitter{
		display: none;
	}
}