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

html,body { font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', sans-serif;
-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; word-wrap: break-word; overflow-wrap : break-word; height: 100%; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,button,textarea,p,blockquote,th,td,a,img,figure,section { margin: 0; padding: 0; }
article,aside,canvas,details,figcaption,figure,header,footer,hgroup,menu,nav,section,summary,main { display: block; }
address,caption,cite,code,dfn,em,strong,th,var,i { font-style: normal; }
table							{ border-collapse: collapse; border-spacing: 0; }
caption,th						{ text-align: left;}
q:before,q:after				{ content: '';}
object,embed					{ vertical-align: top;}
hr,legend						{ display: none;}
h1,h2,h3,h4,h5,h6				{ font-size: 100%; font-weight: normal;}
img,abbr,acronym,fieldset,button{ border: 0;}
img								{ vertical-align: bottom; line-height: 0; max-width: 100%; height: auto;}
ul li							{ list-style-type: none;}
a,label							{ cursor: pointer;}
body							{ _display: inline; _zoom: 1;}
a								{ text-decoration: none; color: inherit; }
a:active						{ text-decoration: none; color: inherit; }
a:visited						{ text-decoration: none; color: inherit; }
a:hover							{ text-decoration: none; color: inherit; }
a:focus, *:focus				{ outline:none; }
input,textarea,select,button	{ font-size: 100%; font-weight: normal; font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', sans-serif;}
input,textarea,select			{ background:none; border:none; outline:none; border: #c8c8c8 solid 1px; border-radius: 0; }
del								{ text-decoration: none; }

/* clearfix
------------------------------ */
.cf:after { content: ''; display: block; clear: both; }

/* Box-sizing (padding + border)
------------------------------ */
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

/* User-select
------------------------------ */
.us { -ms-user-select: none !important; -webkit-user-select: none !important; -moz-user-select: none !important; user-select: none !important; cursor: default !important; text-decoration: none !important; }
.us:hover { color: inherit !important; text-decoration: none !important; cursor: default !important; }

/* Floating
------------------------------ */
.fl	{ float: left; }
.fr	{ float: right; }

.fl-ot	{ float: left; }
.fr-ot	{ float: right; }

/* Text-align
------------------------------ */
.ta-l { text-align: left; }
.ta-c { text-align: center; }
.ta-r { text-align: right; }

/* Ratio Private Access % + em
------------------------------ */
.lh-s	{ line-height: 1.21 !important; }
.lh-y	{ line-height: 1.41 !important; }
.lh-g	{ line-height: 1.61 !important; }
.lh-p	{ line-height: 1.73 !important; }
.lh-t	{ line-height: 1.93 !important; }
.lh-g2	{ line-height: 2.61 !important; }

/* Image-size
------------------------------ */
.mw	{ max-width: 100%; } /* Parent Attention*/
.iw	{ width: 100%; } /*infin-width*/
.sw { max-width: 100%; } /*Smart-width*/
@media screen and (max-width: 959px) {
	.sw { max-width: 66.6%; } 
}
/* Common
----------------------------------*/
.pc 		{ display: inherit; }
.pc.inline	{ display: inline; }
.sp			{ display: none; }
.tab		{ display: none; }
/*
@media only screen and (min-width: 769px) and (max-width: 959px) { .tab { display: inherit; } }
*/

@media screen and (max-width: 959px) {
.pc, .pc.inline	{ display: none !important; }
.sp, .sp.tab	{ display: inherit; }
.fl, .fr		{ float: none; width: 100%;}
}

/* Aspect Ratio
----------------------------------*/
.ar			{ position: relative; width: 100%; }
.ar-1609	{ padding: 56.25% 0 0 0; }
.ar iframe	{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/* List Centering [PC]
----------------------------------*/
.mr				{ position: relative; overflow: hidden; }
.mr > ul		{ position: relative; left: 50%; float: left; }
.mr > ul > li	{ position: relative; left: -50%; float: left; }

/* Flex Horizontal Vertical Centering for Child Element
----------------------------------*/
.hc-to-vc 	{ display: flex; justify-content: center; }
@media screen and (max-width: 959px) {
	.hc-to-vc 	{ display: flex; flex-direction: column; align-items: center; }
}