/* HTML初期化 */
body {
line-height: 1;
margin: 0;
padding: 0;
zoom:1
}


h1, h2, h3, h4, h5, h6 {
margin: 0;
padding: 0;
font-weight:normal;
font-style:normal;
}

p, dl, dt, dd, em, form, address,ul,li {
margin: 0;
padding: 0;
font-style:normal;
}

/* HTML5用 */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}

fieldset {
border:0;
margin: 0;
padding: 0;
}

hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #cccccc;
margin: 1em 0;
padding: 0;
}

ul {
list-style: none;
padding: 0;
margin: 0;
border: 0;
}

li {
padding: 0;
margin: 0;
}

input, select {
vertical-align: middle;
}

/* tableタグ*/
th,td{
padding:0;
}

caption{
text-align:left;
} 


/* リンク設定 */
a {
outline:0;
border:0;
transition: all 0.3s ease;
}

@media screen and (max-width: 800px) {
a {
transition:none !important;
}
}

a img {
border:0;
}

img {
border:0;
max-width:100%;
-webkit-backface-visibility: hidden;
}

html {
-webkit-text-size-adjust: none;
zoom:1;
}

body,html {
height:100%;
}

p{
text-align: justify;
text-justify: inter-ideograph;
}


/*============================================
基本CSS
===========================================*/
html {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
font-size: 100px;
-webkit-font-smoothing: antialiased;
}

@media screen and (max-width: 1200px) {
html {
-ms-text-size-adjust: 94%;
-webkit-text-size-adjust:94%;
font-size:94px;
}
}

body {
font-family: 'Noto Serif JP','Arimo', AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans','メイリオ', Meiryo,sans-serif;
}

/* ゴシックフォント */
.gothic {
font-family: 'Noto Serif JP','Arimo', AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans','メイリオ', Meiryo,sans-serif;
}


#contents_wrapper {
max-width: 1200px;
margin: auto;
background: #FFF;
min-height: 100%;
position: relative;
overflow: hidden;
box-shadow: 0 0 3px rgba(0,0,0,0.1);
}

/* インナーボックス : 1100px */
.inner_box {
max-width: 1000px;
margin: auto;
padding-left: 0.3rem;
padding-right: 0.3rem;
position: relative;
}

/* flexbox */
.flex_box {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

/* コンテナー */
.container {
max-width: 1000px;
margin: 0 auto;
padding-left: 20px;
padding-right: 20px;
box-sizing: border-box;
}

@media screen and (max-width: 750px) {
.container {
width: 100%;
padding-left: 0.2rem;
padding-right: 0.2rem;
}
}
/*============================================
ナビゲーション
===========================================*/
/*ヘッダーロゴ*/
header h1 {
max-width: 3rem;
width: 100%;
line-height: 0;
padding-left: 0.45rem;
position: relative;
z-index: 1000;
}

header h1 a {
	display: block;
}

@media screen and ( max-width:1024px){
header h1 {
max-width: 2rem;
padding-left: 0.2rem;
}
}
@media screen and ( max-width:750px){
header h1 {
max-width: 2rem;
padding-left: 0rem;
}
}
/*ナビゲーション*/
#main_navi {
max-width: 8rem;
width: calc(100% - 3.5rem);
padding-right: 0.5rem;
box-sizing: border-box;
}
#main_navi li {
font-size: 0.16rem;
text-align: center;
padding-top: 0.3rem;
}
/*snsナビ*/
#main_navi li:last-child {
padding-top: 0.25rem;
}
#main_navi li a {
display: inline-block;
text-decoration: none;
color: #333333;
}
#main_navi li.menu_sns a {
padding-left: 0.2rem;
font-size: 0.24rem;
opacity: 0.5;
}
@media screen and (min-width:750px) and ( max-width:1024px){
#main_navi {
width: calc(100% - 2.5rem);
}
#main_navi .flex_box {
display: flex!important;
}
#main_navi li {
font-size: 0.12rem;
padding-top: 0.2rem;

}
/*snsナビ*/
#main_navi li:last-child {
padding-top: 0.15rem;
}
}
@media screen and (max-width: 750px) {
header h1 {
width: 40%;
padding-left: 0.1rem;
top:-0.1rem;
}

#main_navi ul {
position: absolute;
top: 0;
right: inherit;
left: 0;
width: 100%;
height: 100vh;
display: none;
z-index: 100;
background: #FFF;
box-sizing: border-box;
padding-top: 100px;
}
header .container {
padding: 0;
}
#main_navi {
width: 100%;
padding-top: 0;
}
#main_navi li {
padding: 0;
margin-left: 0;
width: 100%;
background:#fff;
font-size: 0.2rem;
font-weight: 300;
}

#main_navi li a {
padding: 0;
padding-top: 15px;
padding-bottom: 15px;
}

/*snsナビ*/
#main_navi li.menu_sns a {
padding-right: 0.2rem;
font-size: 0.34rem;
}

#main_navi li:last-child {
padding-top: 0;
}
}
/*============================================
スマホナビ
===========================================*/
#SP_navi_wrapper,
#SPnaviBtn {
display: none;
}
@media screen and (max-width: 750px) {
header {
position: fixed;
width: 100%;
background: #fff;
z-index: 9999;
top:0;
left: 0;
	padding-top: 10px;
}
/*スマホボタン*/
#SPnaviBtn {
width: 50px;
height: 44px;
position: absolute;
text-align: center;
z-index: 1000;
top: 50%;
right: 0;
transform: translateY(-50%);
cursor: pointer;
display: block;
}
#SPmenuBars {
position: absolute;
left: 50%;
width: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}
.menu-trigger span {
position: absolute;
left: 0;
width: 100%;
height: 2px;
background-color: #000;
transition: all 0.3s ease;
}
.menu-trigger span:nth-of-type(1) {
top: 10px;
}
.menu-trigger span:nth-of-type(2) {
top: 20px;
}
.menu-trigger span:nth-of-type(3) {
top: 30px;
}
.menu-trigger.active span {
position: absolute;
left: 0;
width: 100%;
height: 2px;
}
.menu-trigger.active span:nth-of-type(1) {
-webkit-transform: translateY(10px) rotate(-45deg);
transform: translateY(10px) rotate(-45deg);
top: 10px;
}
.menu-trigger.active span:nth-of-type(2) {
opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
-webkit-transform: translateY(-5px) rotate(45deg);
transform: translateY(-5px) rotate(45deg);
top: 25px;
}
#SPnaviBtn {
display: block;
}

}

/*============================================
下層共通
===========================================*/
h2 {
line-height: 0;
font-size: initial;
}
#underpage_title {
line-height: 0;
	background: #F2F2F2;
margin-bottom: 40px;
}

#underpage_title .container {
	padding: 0;
}

#underpage_title h2 {
display: block;
background: #F2F2F2;
padding: 50px;
	padding-left: 20px;
}

@media screen and (max-width: 750px) {
#underpage_title {
margin-bottom: 20px;
padding-top: 55px;
background: none;
}
	
#underpage_title h2 {
padding-top: 30px;
padding-bottom: 25px;
padding-left: 0.15rem;
padding-right: 0;
}
}
/*============================================
コンテンツ基本
===========================================*/
/*
.inner_box h2 {
font-size: 0.2rem;
padding-bottom: 0.2rem;
}

.inner_box .text_center {
text-align: center;
}

.inner_box h2 strong.left_border {
background: url("../img/title_border.png") no-repeat right;
background-size: 0.2rem;
padding-right: 0.24rem;
letter-spacing: 0.01rem;
}

.inner_box h2 strong.both_border {
letter-spacing: 0.01rem;
}

.inner_box h2 strong.both_border img {
width: 0.2rem;
padding-left: 0.06rem;
padding-right: 0.06rem;
vertical-align: middle;
}

.inner_box h2 span {
display: inline-block;
font-size: 0.14rem;
padding-left: 0.2rem;
position: relative;
top:-0.04rem;
font-family: 'Roboto', AppleSystem, 'ヒラギノ角ゴシック','Hiragino Sans','メイリオ', Meiryo,sans-serif;
}
*/
