@charset "UTF-8";
/* Scss Document */
.clearfix:after { content: ""; display: block; clear: both; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.disable { -webkit-animation: none; animation: none; cursor: default; opacity: 0.5; }
.disable img:hover { opacity: 1; }

a:hover { opacity: 0.7; }

.pc {
	display: inline;
}

.sp { display: none; }

body {
        font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, Liberation Sans, sans-serif;
	/*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	line-height: 1;
	font-feature-settings: "palt" 1;
	text-align: justify;
	background-color: #fff;
    line-height: 1.8em;
    letter-spacing: 0.08em;
}

html {
	font-size: 16px;
	color: #000000;
}

ul { list-style: none; padding: 0; margin:0; -webkit-margin-before: 0; -webkit-margin-after: 0; -webkit-margin-start: 0; -webkit-margin-end: 0; -webkit-padding-start: 0; }

dd { -webkit-margin-start: 0; }

img { max-width: 100%;
width: auto;
    height: auto; }

a {
	display: inline-block;
	text-decoration: none;
	color: inherit;
}

.shadow_img {
        filter: drop-shadow(2px 2px 2px rgba(160, 160, 160, 0.8));
}

h1, h2, h3, h4, h5 {
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: center;
	margin-left: 0px;
}

h3{
	font-size:15pt;
	padding: 10px;
	text-align: left;
	line-height:1.5rem;
}

p {
/*	line-height: 1.5;*/
	font-size: 16px;
}






@media all and (-ms-high-contrast: none) { .frame1 { background: rgba(255, 255, 255, 0.6) url(../images/frame_back.png) right 30px bottom 30px/223px no-repeat; border: none; border-radius: 20px; padding: 60px; }
  .frame2 { background: #9d853a url(../images/frame_back.png) right 30px bottom 30px/223px no-repeat; border: none; border-radius: 20px; padding: 40px; }
  .frame2:after { content: none; } }
.tbl_red { background: url(../images/com_tbl_bg_red.png); border: 3px solid #9d853a; }

.tbl_green { background: url(../images/com_tbl_bg_green.png); border: 3px solid #9d853a; }

.tbl_purple { background: url(../images/com_tbl_bg_purple.png); border: 3px solid #9d853a; }

#system {
	padding-top: 0px;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 50px;
}
#system h2 {
	margin: 50px 0 30px 0;
}
	
.detail { margin: 50px 0 30px 0; }
.detail li { float: left; width: 50%; margin-bottom: 40px; }
.detail li:nth-child(odd) { clear: both; }
.detail li:nth-child(even) { text-align: right; }
.detail li:last-child, .detail li :nth-last-child(2) { margin-bottom: 0; }
.detail li h3 { width: 100%; max-width: 446px; min-height: 113px; background: url(../img/com_subttl_bg.png) no-repeat; font-size: 24px; padding: 30px 0 0 40px; margin-left: -44px; line-height:1.4; }
.detail li p { line-height: 1.625; }
.detail li img { box-shadow: 2px 3px 2px 2px rgba(0, 0, 0, 0.4); }




header, main, section, article, footer { width: 100%; display: block; overflow: hidden; }

.inner {
	width: 900px;
	max-width: 100%;
	padding-top: 0;

	padding-bottom: 0px;
	margin: 0 auto;
	position: relative;
	text-align: center;
}

#gnavi{	
}
#gnavi li {
	float:left;
	color:#AC1E16;
}

header {
	background-color:#fff;
	width: 100%;
	max-width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	
}

.logo { float:left;
	display: flex;
    align-items: center;
    height: 100px;
	margin-left: 7%;
	
}

.small-button {
	display: inline-block;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	border: 1px solid #c1c1c1;
	border-radius: 3px;
	text-decoration: none;
	font-size: 14px;
	cursor: pointer;
	transition: background-color 0.3s;
}
.btn01, .btn02 { float:right;
	display: flex;
    align-items: center;
	margin-right: 0%;
	margin-top: 0%;
	padding:15px 20px;
	font-size:14px;
	height: 100px;
	text-align:center;
	line-height:1.3rem;
}
.btn01 a, .btn02 a{ color: #FFFFFF;}

.btn01{ background-color:#000;}
.btn02{ background-color:#bf322a;}

.logo img { height:60px;
}

.topmenu,.topmenu_f {
display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  z-index: 333;
  max-width: 900px;
  margin: 0 auto;
	
	padding-top:30px;}

.topmenu li ,.topmenu_f li{
	min-width: 20%;
  padding-right: 20px;
  position: relative;
	font-size:17px;
line-height:1;
text-align:center;
font-weight:bold;
}
.topmenu p,.topmenu_f p {
	line-height:0;
	font-size: 10px;
	}

#right_bn{
	width:40px;
	position:fixed;
	right:0;
	top:60%;
	z-index: 9999;
}

main {
	margin-top: 0;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0px;
	
}

.slider {
	width: 100vw;
	height: 800px;
	overflow: hidden;

	max-width: 100%;
	margin-top: 70px;
	position: absolute;
}

.slider div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center top;
	
	background-repeat: no-repeat;
	z-index: -10;
	opacity: 0;
	animation-name: slide-fade;
	animation-duration: 15s;
	animation-iteration-count: infinite;
}

@keyframes slide-fade {
	0%{
		opacity: 0;
	}
	20%{
		opacity: 1;
	}
	80%{
		opacity: 0;
	}
	100%{
		opacity: 0;
		z-index: 0;
	}
}
.slider div:first-of-type{
	background-image: url(../img/main_bg.png);
}
.slider div:nth-of-type(2){
	background-image: url(../img/main_bg02.png);
	animation-delay: 5s;
}
.slider div:last-of-type{
	background-image: url(../img/main_bg03.png);
	animation-delay: 10s;
}
	
#sec_01 #prologue {
	
	text-align: center;
	position:relative;
	z-index:1;	
}

.main_women { height: 650px;}

.btn_cs {
	background-color: #fff;
  border-radius: 20px 0px 0px 0;
  padding: 10px 5% 0px 5%;

  margin-top: -65px;
  float: right;
  }

.main_text{
color:#fff;
	font-size:60pt;
	font-weight:bold;
	
	text-align:left;
	position: absolute;
  left: 10%;
  top: 30%;
}

.highlight {background: linear-gradient(transparent 0%, #bf322a 0%);
/*filter: drop-shadow(1px 9px 8px rgba(0, 0, 0, 1));*/
line-height: 1.8em;
padding: 3px;}

#about .day_box .day_text span.few {
	font-size: 13px;
	border: 1px solid #815490;
	padding: 5px;
	font-weight: 400;
	color: #815490;
	margin: 0 15px;
}

#about .day_box table.sc {
	width: 100%;
	text-align: left;
	margin: 0;
}

 h1 {
color:#fff;
	font-size:30pt;
	font-weight:bold;
	text-align:left;
	
}
#about .day_box table.sc td.scline {
	border-bottom: 1px dotted #333333;
}

/* 20250718追加_画面幅が750px未満*/
@media (max-width: 749px) {
  h1 {
    font-size: 20pt !important;
  }
}

.main_text2 {
color:#fff;
	font-size:20pt;
	font-weight:bold;
	text-shadow: 6px 5px 12px rgba(0, 0, 0, 0.8), 0px 0px 20px rgba(0, 0, 0, 0.8), 0px 0px 20px rgba(0, 0, 0, 0.8);
	text-align:left;
	position: relative;
  left: 1%;
  top: 3%;
  margin: 0em;
}

.main_text3{
background-color:#000;
color:#fff;
padding:20px;
width:70%;
	font-size:13pt;
	font-weight:bold;
	text-align:left;
	position: relative;
  left: 1%;
  top: 5%;
  text-shadow:none;
}


#sec_01 h3 {
	text-align: center;
	margin-top: 20px;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 20px;
	font-size:30pt;
	line-height: 4rem;
	padding:0;
}
#sec_02 h1 {
	text-align:center;
	margin: 60px 0 30px 0;
}
#sec_03 h1 {
	text-align: center;
	margin-top: 80px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 30px;
}

#about{
	text-align: center;
	background-color: #fbf3f2;
	margin:0 auto;
	position:relative;
	z-index:100;
	padding:40px 70px;
}

#about table { margin:20px 0;}

#about table img { width: 90px;}


.text01 {
	font-size:35px;
	margin-top:30px;
	font-weight:bold;
    line-height: 1em;
	}
	
	.day {font-size:25px;
	font-weight:bold;}
	
	.line {text-align:center;}
	
#about p {
    color: #000;
    line-height: 3rem;
    font-size: 16px;
	padding: 50px 30px;
}

#about .text_50p{
	width: 50%;
	
}

.red_line{ background-color: #bf322a;
color:#fff;
 font-size:16px;
 padding:15px 0;
 margin-bottom:0px;
 text-align:center;
 font-weight:bold;
}

code {
   
    font-family: Consolas,"Liberation Mono",Menlo,Courier,"Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",monospace;
}
.btn_h26 {
	background-color: #09C;
	color: #fff;
	border-radius: 5px;
	margin: 10px auto;
	padding: 20px 20px;
	width: 90%;
}
#about2{
	text-align: center;
	background: url(../img/bg_btn02.png),linear-gradient(113deg, rgba(15, 214, 132, 1), rgba(133, 245, 230, 1));
	background-repeat: no-repeat;
	background-size: contain;
	width: 90%;
	border-radius: 5px;
	margin: 0 auto;
	margin-top: 20px;
	position: relative;
	z-index: 100;
	padding: 20px 20px;

}
p.cap01 { font-size:1.5vw; 
	line-height:1.2;
	margin:7px;
	font-weight:bold;
	}
	
p.cap01 span { font-size:2.5vw;}	

#about2 .text{ font-size:20pt;
	float:left;
	margin-left:33%;}
	
	#about2 .text02{ font-size:18pt;
	float:left;
	margin-left:0%;}
	
	#about2 .line{ font-size:10pt;
	float:right;
	
	font-weight:bold;}
	
	#about2 .line img { height:5vw; margin-top:10px;}
	

.item{
	display: inline-block;
	margin-top: 0px;
	margin-right: 3%;
	margin-left: 3%;
	margin-bottom: 30px;
}
.item figcaption{
	text-align:left;
}

.item a{
	text-align: right;
	float: right;
}
p.box {
	margin:20px 0;
   border-bottom: 1px solid #d6d6d6;
}

#pattern{ margin: 35px auto;

}

#pattern li{
	display: inline;
	margin: 0 4%;
	
}
#pattern li img {
  vertical-align: middle;
}




#aboutU { margin:5% 0;
		padding-right:10%;
		float:left;
	
}
.right_img {
	float: right;
	width: 40%;
	position: absolute;
	top: 2000px;
	right: 0;
}
#detail { padding-top:7%;
background-color:#AE2A23;
border-radius: 100px 0 100px 0;
color:#fff;
}
#detail .inner {
	width: 50%;
	margin: 0 10%;
	text-align: left;
	padding-bottom: 50px;
}
.rank3 {
	display:flex;
	margin-bottom: 30px;
	}


.box_white{
	background-color: rgba(255,255,255,1);
	border-radius: 5px;
	padding:15px 25px;

	
}
.box_white p , .box_white2 p { font-size: 10pt;
  margin: 5px 0;
}

.txt_s {
	font-size: 12.2pt;
}
.txt_xs {
	font-size: 10pt;
}

.img80  img { width:70%;
}

.m_ttl{
	font-size:17pt;

}
.m_ttl2{
	font-size:14pt;
	margin-top:30px;

}
.m_ttl3{
	font-size:10pt;
	margin-top:0px;

}
.box_white2{
	 padding:0px 20px 20px 10%;
	font-size:1.2vw;
	
}
.center { text-align:center;}



.box_white3{
	background-color: #F2F2F2;
	border-radius: 5px;
	padding:15px 25px;
	height:350px;
	font-size: 10pt;

}

.box_white3 img {
	margin:-30px 0px 0 -20px;

	
}

.box_white4{
	
	color:#fff;
  border: solid 2px #e6e6e6;
  position: relative;
  font-size:1.3vw;
 
}


.box_white4 .inbox {
width:80%;
padding:10px 20px;
margin:0 auto;
margin-top:-30px;
text-align:center;
z-index:100;
background-color: #AE2A23;}


.tx_01 {
	font-size:12pt;
	font-weight:bold;
	margin: 10px auto;
	text-align: center;
	color:#AE2A23;
	border-bottom: 1px solid #000;
	padding-bottom:10px;
}
.tx_01 img {float:none;}

.tx_01 span {
	
      display: inline-block;
}


.student li { 
	width:100%;
  text-align:left;
  margin:0 auto;
  box-shadow: 5px 10px 20px rgba(0,0,0,0.25);
  padding:30px;
  margin-bottom:20px;
  background-color:#fff;
border-radius:  15px; 
overflow: auto;
  
}
.stu_box {
	float: left;
	text-align:center;
	padding: 0px 20px 0 0px;
	width: 20%;
	}
	
.text_box {
	padding:0 10px;
	margin:0 10px;
	font-size:13pt;
	line-height:1.8;
	width: 70%;
	float: left;
	}
	
	.con01 { color:#7E433F;
	border-bottom: 2px solid #F6CBC9;
	margin: 0;
	font-weight:bold;
	}
	
	.con02{ background: url(../img/icon06.png) left top no-repeat,
	url(../img/icon07.png) right bottom no-repeat;
	padding: 0 23px ;
	color:#BF3028;
	font-size:21px;
	width:auto;}
	
	.con02 span { color:#741E1E;
	margin:10px 0 ;
	font-weight:bold;
	font-size:15px;
	}
	

#detail .left{
	margin-top:70px;
	margin-left:-30%;
}

#desing {
	position: relative;
}

.de_img {
	position: absolute;
z-index: 1;
top: 2825px;
left:  20%;
}
.box2 {
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	border-bottom: 1px solid #d6d6d6;
	width: 380px;
	height: 100%;
	font-size: 13px;
	line-height: 2;
	border-top: 1px solid #d6d6d6;
	padding: 30px 5px;
	vertical-align : middle;
	text-align: left;
	padding-left: 50px;
	}
#cloth, #sewing {
	overflow:visible;
}
.di_paginator {
	width: 38px;
	height: 32px;
	margin-left: 48.5%;
	margin-top:-22px;
	margin-bottom:30px;
	background: transparent url('../img/paginator.png') 0 0 no-repeat;

}
.btn_gnavi { 
    color: #07496d;
    font-size: 14px;
    font-weight: bold;
    line-height: 14px;
	height: 127px;
	padding: 30px;
	display: flex;
  justify-content: center;
  align-items: center;
	}

.btn_white {
	width: 268px;
	height: 127px;
	margin-left: 20px;
	background-color: rgba(11,74,107,0.6);
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 14px;
	display: flex;
    align-items: center;
	justify-content: center;
	}
#gnavi a { text-decoration:none;}

	
#company {
	text-align: left;
	background-size: cover;
	padding-bottom: 20px;
	padding-top: 20px;
}
.half li {
	float: left;
	width: 50%;
	margin: 10px 0;
	text-align: left;
	line-height: 1.8;

}
.half li:nth-child(odd) {
	padding-right: 10px;
	padding-left: 0px;
}
.half li:nth-child(even) {
	padding-top: 0px;
	padding-right: 0;
	padding-left: 10px;
	padding-bottom: 0;
}

.half5 li {
	float: left;
	width: 33%;
	margin: 10px 0;
	text-align: left;
	line-height: 1.8;

}
.half5 li:nth-child(odd) {
	padding-right: 5px;
	padding-left: 5px;
}
.half5 li:nth-child(even) {
	padding-top: 0px;
	padding-right: 5px;
	padding-left: 5px;
	padding-bottom: 0;
}



#sec_03 { 
	padding: 0px;

}

#point{
	text-align: center;
	margin:0 auto;
	padding:30px;}
	
#point ul{
  list-style:none;
  text-align:left;
  margin-bottom:40px;
}

#point ul li{
  font-size:13pt;
  padding-top:5px;
}

.red_ttl {
	color:#BF3028;
	font-size:25px;
	font-weight:bold;}
.red_ttl span {font-size:35px;}	
	
#cost p {
	text-align: left;
	padding: 50px 0;
	width: 700px;
	margin: 0 auto;
}	

#sec_04 { 
	padding: 70px;
	text-align: center;
	background: url(../img/bg_04.jpg) center right no-repeat;
	background-color: #037dbd;
	background-size:contain;
	width:100%;
	height:350px;
	color:#fff;
	font-size:12pt;
	font-weight:bold;
}

#sec_044 { 
	padding: 100px 0 70px 0;
	text-align: center;
	background: 
	url(../img/bg_lefttop.png) left top no-repeat;
	width:100%;
}
#sec_045 { 
	padding: 70px;
	text-align: center;
	background: url(../img/bg_line.png) center top no-repeat;
	
	color:#fff;
	font-size:12pt;
	font-weight:bold;
}
#text_blue {
	color:#fff;
	font-size:28pt;
	font-weight:bold;
	text-shadow: 6px 5px 12px rgba(0, 0, 0, 0.2), 0px 0px 20px rgba(0, 0, 0, 0.2), 0px 0px 20px rgba(0, 0, 0, 0.2);
	line-height:2.8rem
	}
	
#text_blue p{
	font-size:12pt;
	line-height:1.2rem;
}
#sec_map { 
	padding: 70px 0 0 0;
	text-align: center;	
  position: relative;
  width: 100%;
background: url(../img/bg_map.png) center top no-repeat;
}
#sec_map h3 { text-align:right;}

#Overview { background-color:#F9F9F9;
border-radius: 100px 0 100px 0;
margin:5% 0;
padding:10% 0;
}

#StudentVo {background-color: #AE2A23;
  border-radius: 100px 0 100px 0;
  padding-top: 7%;
  padding-bottom: 5%;}
  
  #StudentVo h3 {color:#fff;}
  

#sec_05 {
	margin: 5% 0;
  padding-right: 10%;

}

#about_c{padding-top: 7%;
  background-color: #AE2A23;
  border-radius: 100px 0 100px 0;
  color: #fff;}
  
#about_c .inner {
	width: 50%;
	margin: 0 10%;
	text-align: left;
	padding-bottom: 50px;
}
.border { text-decoration:underline;}

.right_img2 {
	float: right;
	width: 40%;
	position: absolute;
	right: 0;
	margin-top: -400px;
}

img.img50 {width:270px;}

.areaAbout {
	margin:10% 0 50px 0;
	text-align:left;
	}
.areaAbout .aboutList {
    width: 100%;
    
    margin: 0 auto 29px;
    padding: 28px 0px;
}

.areaAbout .aboutList li {
    display: flex;
    flex-wrap: wrap;
}

.areaAbout .aboutList li .aboutLeft {
    width: 27.3%;
    padding: 0 10px 0 25px;
    line-height: 2.15;
	border-bottom: 3px solid #AA2922;
	font-weight:bold;
	text-align:left;
}

.areaAbout .aboutList li .aboutRight {
    width: 72.7%;
    line-height: 3.15;
    padding-left: 11px;
	border-bottom: 1px solid #F2E3E3;
	text-align:left;
}

.areaAbout .aboutList li .aboutLeft2 {
    width: 27.3%;
    padding: 0 10px 0 25px;
    line-height: 2.15;

	font-weight:bold;
	text-align:left;
}

.areaAbout .aboutList li .aboutRight2 {
    width: 72.7%;
    line-height: 2.15;
    padding-left: 11px;
	text-align:left;
	margin-top:20px;
}

.box_r { display:block;
float: left;
}
.map {
	width: 190px;
	float: left;
	margin-right: 15px;
}

#contact_main .half li {
	float: left;
	margin: 10px 0;
	text-align: left;
	line-height: 1.8;

}

#contact_main .half li:nth-child(odd) {
	padding-right: 10px;
	padding-left: 0px;
	width: 50%;
}
#contact_main .half li:nth-child(even) {
	padding-top: 0px;
	padding-right: 0;
	padding-left: 10px;
	padding-bottom: 0;
	width: 50%;
}


.text_01,
select, textarea { /* 1 */
  overflow: visible;
  padding: 8px 5px;
    background: #d4d9e3;
	font-size: 1rem; 
    border: none;
	width:250px;
	vertical-align: middle;
}

textarea {
	height:200px;
}
.text_02 { /* 2 */
  overflow: visible;
  padding: 8px 5px;

	font-size: 1rem; 
    border: none;
	width:250px;
	vertical-align: middle;
}

.radio_01 {
	width: 250px;
	display: inline-block;
}
	
#contact_main .btn_area {
	text-align: center;
	margin-top: 40px;
	margin-bottom: 20px;
}

#page_top{
	width: 50px;
	height: 50px;
	position: fixed;
	right: 0;
	bottom: -51px;
	opacity: 1;
	z-index: 1;
}
#page_top a{
  width: 50px;
  height: 50px;
  text-decoration: none;
}


footer {
	background-color: #F9F9F9;
	padding-top: 15px;

	color:#AE2A23;
}
footer .topmenu_f li {
	font-size:11pt;

}

.foot_r {
	background-color: #AE2A23;
	color:#fff;
	padding:2%;
	font-size: 10px;
    margin-bottom: 80px;
	}
footer .copyright {
	display: block;
	font-size: 10px;
	padding-top: 5px;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 0px;
	text-align: right;
	
}

 .logo2 img
 { margin: 20px auto;
 width:300px;
 }
 
 .foot_pp { font-size:12px;
 text-align:right;}


/* PRIVACY */

#privacy {
	background-color:#fff;
}

.ttl_blue{
	
	padding-top: 20px;
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 10px;
	font-size: 14px;
	margin-bottom: 60px;
}
#privacy .inner {
	width:700px;
	padding-bottom:20px;
}

#privacy p {
	font-size: 12px;
	line-height: 18px;
	text-align: left;
	margin-bottom: 30px;
}
/* FAQ */

.faqList{
	margin:10% 3% 10% 3%; }

.qa-6 {
  
    margin: 35px;
    border-bottom: 2px solid #d1d1d1;
	text-align: left;
	
}

.qa-6::before { color: #bf322a;
  content: "Q";
 top: 32px;
  position: relative;
  left: 20px;
  font-weight: 600;
  font-size: 1.3em;
  }

.qa-6 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3em;
    color: #000000;
    font-weight: 600;
    cursor: pointer;
	font-size: 16px;
}

.qa-6 summary::before,
.qa-6 p::before {
    position: absolute;

    font-weight: 600;
    font-size: 1.3em;
}

.qa-6 summary::before {
  
}

.qa-6 summary::before,
.qa-6 summary::after {
  content: '';
  width: 20px;
  height: 3px;
  background: #000;
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}

/* アイコンのー */
.qa-6 summary::after {
  transform: translateY(-50%) rotate(90deg);
  transition: .5s;
}

.qa-6[open] summary::after {
    transform: rotate(180deg);
}

.qa-6 p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 3em 1.5em;
    color: #333;
    transition: transform .5s, opacity .5s;
}

.qa-6[open] p {
    transform: none;
    opacity: 1;
	text-align: left;
}

.qa-6 p::before {
    color: #ff8d8d;
    line-height: 1.2;
    content: "A";
	left: 25px;
}


/* CONTACT */

.formArea{
	padding:30px;

}

.page_mailform {
	
}
#contact h1 {
	margin-top:30px;
}


.text_rap{
	line-height: 24px;
	font-size: 12px;
	margin-bottom: 20px;
}
.thanks {
	height: 600px;
	background-color: rgba(255,255,255,0.85);
}

.red { color:#a21929;
	padding: 5px;
	margin-left: 0px;
	font-size: 15px;
	vertical-align: -moz-middle-with-baseline;
	font-weight:bold;
}

.red2 { color:#a21929;
	padding: 6px 10px;
	font-size: 16px;
	
}

.red3 { color:#a21929;
	padding: 0px;
	font-size: 16px;
	margin: 15px 0 2px 0;
	
}

.red4 { color:#a21929;
	padding: 0px;
	font-weight:bold;
}

.sc_01 { color:#a21929;
	padding: 0px;
	font-weight:bold;
	background-color:#E6DEDE;
	padding: 10px;
}

#contact .formArea ul li p {
	display: inline-block;
	text-indent: 0;
	line-height: 24px;
	text-align: left;
	font-size: 16px;
}
.text_01,
select, textarea { /* 1 */
  overflow: visible;
  padding: 13px 18px;
    background: #e4e4e4;
	font-size: 1rem; 
    border: none;
	width:60%;
	vertical-align: middle;
	box-shadow: inset 0 5px 8px 0 rgba(0, 0, 0, .14);
	border-radius: 4px;
}
.text_02 { /* 2 */
  overflow: visible;
  padding: 8px 5px;

	font-size: 1rem; 
    border: none;
	width:50px;
	vertical-align: middle;
}

.radio_01 {
	padding: 8px 0px;
}
.radioArea01{
	width: 100%;
	text-align: left;
	overflow: visible;
	display: flex;
	
}
	

#contact .btn_check, .btn_back, .btn_send {
    width: 280px;
	height: 65px;
	margin: 20px 5px;
	color:#AF1515;
	font-size:16px;
	font-weight:bold;
    border: 2px solid #AF1515;
    border-radius: 34px;
    cursor: pointer;
	background-color:#fff;
}
#contact .btn_area {
	text-align: center;
	margin-top: 40px;
	margin-bottom: 20px;
}

.left {text-align:left;}



.parallax-window {
     min-height: 300px;
     background: transparent;
}

.parallax-slider {
     top: 0;
     left: 0;
}

#sec_layer{
	background-color: #fff;
	
	margin-top: 70px;
}
#contact{}
.sec_bg {
	background: url(../img/bg_contact.png) center top no-repeat;
	background-size: cover;
	display: flex;
  }
 .sec_bg_h {
	background: url(../img/bg_howto.png) center top no-repeat;
	background-size: cover;
	display: flex;
	margin-bottom:5%;
  }

#sec_ttl {
	margin-top:200px;
	background-color: #fff;
 	border-radius: 0px 20px 0px 0;
	padding:10px 5% 0px 5%;
	width: 25%;
	}
	
	#sec_ttl p {
		color:#AC1E16;
		line-height:1rem;
		margin-top:5px;
		}

.cap02{
	background: url(../img/bg_redline.png) left top no-repeat;
color:#fff;
text-align:left;
height:76px;
padding:30px;
font-size:20px;
}

.howtoList {
    width: 100%;
    
    margin: 4% auto 29px;
    padding: 28px 0px;
}

.howtoList li {
    display: flex;
    flex-wrap: wrap;
	margin:0;
}

.howtoList li .aboutLeft {
    width: 20%;
    padding: 10px 10px 0 25px;
    line-height: 2.15;
	border: 1px solid #D8D8D8;
	font-weight:bold;
	text-align: left;
	margin: 0;
	color:#AE2A23;
	background-color:#F3F3F3
}

.howtoList li .aboutRight {
    width: 80%;
    line-height: 1.5;
    padding: 10px 10px 10px 25px;
	border: 1px solid #D8D8D8;
	text-align: left;
	margin: 0;
}

.howtoList table {
	text-align:left;
	line-height:2em;
	font-size: 13px;
	}
.howtoList .sc .sc_02 { background-color:#AE2A23;
color:#fff;
border: 1px solid #D8D8D8;
}
.howtoList .sc td {border: 1px solid #D8D8D8;}

#howto .left01 p {
	text-align:left;
	margin-bottom:10px;
	}
	
#howto .left01 img {
	text-align:center;
	margin-bottom:10px;
	}
	
	
	.scroll-box {
  overflow-x: auto;
  padding-bottom: 10px;
  -webkit-overflow-scrolling: touch;
}

/*===========
scrollbar
===========*/
/*スクロールバー全体の高さ*/
.scroll-box::-webkit-scrollbar {
  height: 4px;
}
/*スクロールバー全体の背景*/
.scroll-box::-webkit-scrollbar-track {
  background: #eee;
}
/*スクロールバーの動く部分*/
.scroll-box::-webkit-scrollbar-thumb {
  background: #aaa;
  border: none;
}
/*スクロールバーの動く部分のホバー（マウスオーバー）*/
.scroll-box::-webkit-scrollbar-thumb:hover {
  background: #999;
}

/*===========
table
===========*/
.scroll-box table {
  width: 100%;
  min-width: 600px;
  margin: 0;
}
	
	
	
	#contact .formArea ul li p {
	display: inline-block;
	vertical-align: middle;
	text-indent: 0;
	width: auto;
	line-height: 14px;
	text-align: left;
	margin-top: 20px;
}
#contact .formArea ul li {
	text-align: left;
	margin: 15px 0;
}

.red {
	
}

	.text_01, select, textarea {
	width: 100%;
}

.veri li {
	border-bottom: 1px solid #d1d1d1;
	}


@media screen and (max-width: 1080px) { html { font-size: 14px; }

#gnavi{
		
}

.main_text {
	font-size: 6vw;
}


.main_text3 {
	font-size: 3vw;
	width: auto;
}

#gnavi li{

	
}
#gnavi li:last-child {
	
	margin-right: 0px;
}



#pattern li{
	display: inline;
	margin: 0 3%;
	
}

#pattern li img {
  vertical-align: middle;	
  width:25%;
}

  p.lead { font-size: 16px; line-height: 1.625; }
  .detail { padding: 0px; margin:0px;}
  .detail li { float: left; width: 50%; margin-bottom: 0px; }
  .detail li:nth-child(even) { padding-left: 5%; }
  .detail li h3 { zoom: 0.8; background: url(../img/com_subttl_bg.png) right center/cover no-repeat; font-size: 24px; padding: 13px 30px; margin-left: 0; }
  
  main {
	margin-top: 0px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0px;
	background: none;

	 }
  #sec_01 #prologue { 
  }

	
#contact_main .formArea ul li{
	text-align: left;
}
.text_01, select, textarea { /* 1 */
  overflow: visible;
  padding: 13px 18px;
    background: #e4e4e4;
	font-size: 1rem; 
    border: none;
	width:80%;
	vertical-align: middle;
	box-shadow: inset 0 5px 8px 0 rgba(0, 0, 0, .14);
	border-radius: 4px;
}
  
.spec .product li:nth-child(odd) dl dt,
 .spec .product li:nth-child(odd) dl dd { 
 display: block; 
 float: left;
  }

 }

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

.btn01, .btn02 { float:right;
	display: flex;
    align-items: center;

	margin-top: 0;
}
.btn01 img,.btn02 img { 
    height: 50px;
}

	
#company td {
	min-width: 8rem;
	}
	
.table > tbody > tr > td, .table > tbody > tr > th, .table > tfoot > tr > td, .table > tfoot > tr > th, .table > thead > tr > td, .table > thead > tr > th {
	padding: 10px;
	vertical-align: top;
	line-height: 2;
}
	
#sec_01 #prologue .main_t {
	font-size: 20pt;
	color: #fff;
	text-shadow: 6px 5px 12px rgba(0, 0, 0, 1), 0px 0px 20px rgba(0, 0, 0, 1), 0px 0px 20px rgba(0, 0, 0, 1);
	font-weight: bold;
	padding: 400px 0 0 0;
	
}
.logo { float:left;
   
	padding-left: 0%;
	
}
.logo img { width:200px;
height: auto;
}
	
.btn_gnavi { 
    color: #07496d;
    font-size: 14px;
    font-weight: bold;
    line-height: 14px;
	height: 70px;
	padding: 10px;
	display: flex;
  justify-content: center;
  align-items: center;
	}

.btn_white {
	width: 108px;
	height: 70px;
	margin-left: 20px;
	background-color: rgba(11,74,107,0.6);
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 14px;
	display: flex;
    align-items: center;
	justify-content: center;
	}
.point_box_col_ph {
	width: 30%;
}

.point_box_col_tx {
    width: 70%;
	padding-top:0;
}

#text_blue {
	font-size: 18pt;
	}
	
	#text_blue p {
	font-size: 13pt;
	line-height: 1.8rem;
}

#about2 .text {
	font-size: 18pt;
	margin-left: 33%;
}
  
}

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



#sec_video { 
	padding:5% 10px;
  position: relative;
  width: 100%;

}

#sec_video iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding:20px;
}
  
}


@media screen and (max-width: 640px) {
	
.btn01 {
	float: none;
	display: block;
	margin-right: 1%;
	margin-top: 1%;
	position: absolute;
	right: 1px;
}
.btn02 {
	float: none;
	display: block;
	margin-right: 1%;
	margin-top: 1%;
	position: absolute;
	right: 1px;
	top:60px;
}

	
	#sec_02 {
	padding: 40px 0px;
}
	
#sec_05 { 
	padding: 10px 0;
	
}
#sec_05 .mail_page{
	  padding-top:80px;
  }

	header {
	width: 100%;
	max-width: 100%;
	height: 70px;
	z-index: 9999;
	background-color: transparent;
}

.btn_gnavi,.btn_white { 
    font-size: 14px;
    line-height: 14px;
	height: 70px;
	padding: 7px;
	display: flex;
  justify-content: center;
  align-items: center;
	}
	
h1 img { }
h2 img { height:28px; }

h3 {

}

#prologue{
	
	}
	


#about .text_50p{
	width: 100%;
}
	
 #sec_02 h1, #sec_03 h1 {
	text-align:center;
	margin: 10px 0 10px 0;
}
#sec_02 #detail {
	margin-top: 0px;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom: 10px;
}

.di_paginator {
	width: 38px;
	height: 32px;
	margin-left: 46%;
	margin-top:-22px;
	margin-bottom:30px;
	background: transparent url('../img/paginator.png') 0 0 no-repeat;

}

.box2 {
	margin-top: 10px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 10px;
	border-bottom: 1px solid #d6d6d6;
	width: 100%;
	height: 100%;
	font-size: 13px;
	line-height: 2;
	border-top: 1px solid #d6d6d6;
	padding: 20px 5px;
	vertical-align : middle;
	text-align: left;
	padding-left: 0px;
	}
	

#detail .left{
	margin-top:40px;
	margin-left:0;
}

#detail { padding-top:15px; 
}


.point_box{
	background: url(../img/bg_cap01.png) top left/680px no-repeat;
	height: auto;
	background-color:#fff;
}

.point_box2{
	background: url(../img/bg_cap02.png) top left/680px no-repeat;
	height: auto;
	background-color:#fff;
}

.point_box_heading03_ic {
	display: table-cell;
	width: 110px;
	padding-top: 19px;
	color: #2487be;
	font-size: 10px;
}
.point_box_heading03_no {
	display: table-cell;
	width: 105px;
	padding-top: 12px;
	color: #000;
	font-size: 20px;
	float: left;
	font-weight: bold;
}

.point_box_heading03_tx {
	padding-left: 5px;
	width: 80%;
	font-size: 16px;
}

.point_box_col_ph, .point_box_col_tx {
    width: 100%;
	float: none;
}
.point_box_col_tx {
    height: auto;
    padding: 15px 5%;
    font-size: 1.2rem;
}


  html { font-size: 14px; }
  p.lead { font-size: 12px; line-height: 1.5; text-align: left; }
  p.lead br { display: none; }
  .half li { float: none; width: 100%; margin: 0 auto; }
  .half li:nth-child(odd) { padding-right: 0; }
  .half li:nth-child(even) { padding:0; }
  .half li:not(:last-child) { margin-bottom: 20px; }
  
#products .half li { float: left; width: 50%; margin: 0 auto; }
  
  /* .frame1 { -moz-border-image: url("../images/frame1.png") 40; -webkit-border-image: url("../images/frame1.png") 40; -o-border-image: url("../images/frame1.png") 40; -ms-border-image: url("../images/frame1.png") 40; border-width: 40px; background: url(../images/frame_back.png) right bottom / 111.5px no-repeat; } .frame2 { &:after { content: ""; display: block; width: 111.5px; height: 160.5px; background: url(../images/frame_back.png) center center / contain no-repeat; position: absolute; right: -10px; bottom: -10px; } } */
  .frame1 { -moz-border-image: none; -webkit-border-image: none; -o-border-image: none; -ms-border-image: none; border-width: 0; background: rgba(0, 0, 0, 0.6); border-radius: 10px; padding: 10px; }
  .frame2 { -moz-border-image: none; -webkit-border-image: none; -o-border-image: none; -ms-border-image: none; border-style: none; border-width: none; background: rgba(255, 255, 255, 0.6); border-radius: 0px; padding: 10px; }
  .frame2:after { content: none; }
  .detail { padding: 30px 20px; }
  .detail li { float: none; width: 100%; margin-bottom: 30px; }
  .detail li:nth-child(odd) { margin-bottom: 0; }
  .detail li:nth-child(even) { padding-left: 0; }
  .detail li p { line-height: 1.5; }
  .inner { padding: 0 3%; }
  #prologue .switch img { width: 64px; height:64px;}
  #prologue .logo { width: 350px; margin: 0 auto; }
  
  header .icon li { width: 32px; margin: 0px 0 0 5px; }
  main { margin:0; }
  
  .logo { position:absolute;
  z-index:100;
  float: inherit;
  }

  
  
  #sec_01 #prologue {
	margin-bottom: 0px;
	height: 550px;
	z-index:10;
	overflow: visible;
}

#sec_01 #prologue .main_t{
	padding: 300px 10px 0 10px;
	line-height:3.5rem;
}


  #sec_01 h1 {font-size: 5vw;
}
  
  #sec_01 h2 {font-size: 10pt;
  line-height:1.2;  }
  
  #sec_01 h3 {font-size: 20pt;
  line-height:1.2;  }
 

  #about { 
  padding: 20px 20px;
/*  margin-top: 20px;*/
  
  }
  #about table {margin: 20px auto;}
  
  .areaAbout{
	  margin:10% 0;  
  }
  .areaAbout p {
	  font-size:14px;
  }
  .areaAbout .aboutList li .aboutRight {
	  line-height: 1.5;
	  padding: 10px 0;
  }
  .areaAbout .aboutList li .aboutLeft,
  .areaAbout .aboutList li .aboutLeft2 {
	 padding: 0 10px 0 5px;
  }
  
  .box_white2 {
	  width:100%;
  }
   
  #sec_03 { padding: 30px 0 40px;
  }
  #point {background-size: 100%; 
  	padding:50px 50px 0 50px;
   
  }
  #point ul li { 
  font-size: 10pt;
  background-size: auto 20px;
  padding-left: 0px;
  }
  #cost p { width:80%;
  }
  #sec_03 #variation { margin-bottom: 40px; }
  #sec_03 #network { margin-bottom: 20px; }
  #sec_03 #network h2:after { width: 672px; height: 179px; top: -32px; margin-left: -336px; }
  
  #contact_main .half li {
	float: left;
	margin: 30px 0;
	text-align: center;
	line-height: 1.8;

}

#contact_main .half li:nth-child(odd) {
	padding-right: 20px;
	padding-left: 20px;
	width: 100%;
}
#contact_main .half li:nth-child(even) {
	padding-top: 0px;
	padding-right: 20px;
	padding-left: 20px;
	padding-bottom: 0;
	width: 100%;
}



  

  footer .banner { background-color: rgba(255, 255, 255, 0.3); border: 0; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; padding: 10px; }
  footer .banner li { float: left; display: block; width: 23.5%; padding: 0; margin-bottom: 5px; }
  footer .banner li:first-child { width: 49%; margin-right: 2%; }
  footer .banner li:nth-child(2) { margin-right: 2%; }
  footer .banner li:nth-child(3) { margin-right: 0; }
  footer .banner li:nth-child(4) { clear: both; margin-right: 2%; }
  footer .banner li:nth-child(5) { margin-right: 2%; }
  footer .banner li:last-child { margin-right: 0; }
  footer .note {
	margin-top: 0px;
	padding-bottom: 10px;
}
  footer .note .inner { text-align: center; }
  footer .note .inner .copyright {
	float: none;
	font-size: 10px;
	line-height: 1.5;
	padding-top: 0px;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 20px;
}
.half li.center{ text-align:center;}
.center2 {text-align:center;}
.center2 img {
	margin:0 auto;
	width:80%gx;
	}

.topmenu_f {padding-top: 0px;

}
footer .copyright{
	text-align:center;}

.howtoList li:not(:last-child) {
        margin-bottom: 30px;
    }

.howtoList li .aboutLeft {
        width: 100%;
        margin-bottom: 10px;
        padding: 10px;
        line-height: 1.7;
        font-size: 16px;
    }

.howtoList li .aboutRight {
        width: 100%;
        padding-left: 20px;
        line-height: 1.7;
    }
#Overview h3 img { width: 50%;}
#about_c h3 img { width: 60%;}

.topmenu, .topmenu_f{display: grid;}
  
   
   .qa-6 { margin:0;}
   .qa-6 summary {padding: 1em 3em 1em 3em;}
   
   .slider {height: 550px;}
   .btn_cs {position: absolute;
  top: 590px;
  right: 0;}
   }


@media screen and (max-width: 750px) {
header {
top: 0px;
padding:0px;
background-color: rgba(255,255,255,0);
z-index: 10000000;
    width: 200px;
}
.logo {height: 60px;}

 .slicknav_menu {
 display:block;/*モバイル時は表示*/}
 
 .de_img {
	 display:none;
}
main { margin-bottom: 0px; }

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

.main_text{top: 35%;
    width: 90%;}
	
	
  

.page_mailform {
	margin-top: 0px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0px;
	
}
#contact_main .formArea ul li p {
	display: inline-block;
	vertical-align: middle;
	text-indent: 0;
	width: auto;
	line-height: 14px;
	text-align: left;
	font-size: 14px;
	margin-top: 20px;
}
.red {
  margin-top: 15px;
  margin-right:0;

}
.f_no {float:  none;
  margin-top: 15px;

}
.radioArea01{
	width:auto;}
	
.half5 li{width: 100%;}

.box_white3{
	height: auto;
}

.box_white3 img {
	margin: -27px 0px 0 -10px;
  width: 60px;
}


.box_white3 .tx_01{margin-bottom: 10px}

.img80  img { width:100%;
}


.thanks {
	
}

#company {
	text-align: left;
	background-size: cover;
	padding-bottom: 30px;
	padding-top: 30px;
}
#sec_04{
	background-size: cover;
	height: auto;
	}
	
.map{
		float:inherit;
		width:100%;
		
		}
#detail .inner { width: 90%;

}	
#aboutU { padding:0;}
.right_img {
	position:inherit;
	margin-top: -63px;
	width: 70%;
	}
#sec_map {
	padding: 0;
	}
.student li {padding: 30px 0px 30px 30px;}

#about_c .inner {width: 80%;}

.right_img2 {
	position:inherit;
	margin-top: -50px;
	width: 60%;
	}
#sec_layer {margin-top: 0px;}

#sec_ttl{width: 50%;}

.radioArea01 {display: grid;}

.topmenu {margin: 10px; }

.topmenu_f {
margin-bottom: 50px;
}

.logo2 img {margin: 0;}

.box_white4 , .box_white2 {font-size: 14px;}


.howtoList li .aboutRight {
	border:none;
	}

.foot_r {text-align: center;
padding: 5% 0;
font-size: 14px;
}

footer .copyright{text-align: center;}


}

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


.text_01, select, textarea {
 width: 100%;
 }
 
}
@media screen and (max-width:461px) {
	

.main_women { height:550px;}

#point {
	
	padding: 20px 10px;
	
}

#text_blue {
	font-size: 20pt;
}
#contact_main p {
	font-size: 25pt;
	line-height: 1.2em;
	margin: 10px;
}

.btn_gnavi, .btn_white {
 font-size:10px;
 height: 50px;
 }
 .btn_white{ width:80px;
 }
 

 
 .main_text {
	top: 30%;
    width: 100%;
    left: 0%;
    padding: 0 3%;
}
.main_text img {
	width: 100%;
}

#sec_045{ height:auto;
padding: 50px 40px;
	}

.box_white2 { height: auto;
padding:5;
}
.box_white4 .inbox { }

 footer .topmenu_f li {}
 
}
@media screen and (max-width:730px) {
	
	#about2 { padding: 30vw 0px 20px 0;}
	#about2 .text {
		font-size: 5vw;
		margin:0;
	float: none;
}
#about2 .text02 {
    font-size: 5vw;
    margin: 0;
    float: none;
  }
p.cap01 { font-size: 3vw;
text-align: center;
}
p.cap01 span { font-size:8vw;}	

#about2 .line {
	margin-top:20px;
	font-size: 4vw;
	float: none;

}
#about2 .line img {
	height: 13vw;
	margin-top: 20px;
}

}
.slicknav_menu,.sp_menu {
 display:none;/*PC時は非表示*/
}
@media screen and (max-width: 750px) {
.topmenu,.btn01,.btn02 {
 display:none;/*モバイル時は非表示*/
}
 .slicknav_menu, .sp_menu {
 display:block;/*モバイル時は表示*/}
}



/* topicsSection */
.topicsSection {
	background-color: #f9f9f9;
	padding: 117px 0 122px;
	margin-bottom: 86px;
}
.topicsSection .inner{
	width: 950px;
}
.topicsSection .topicsTitle {
	text-align: left;
	margin: 0 0 30px 6px;
}
.topicsSection .topicsTitle .titleEn {
	display: inline-block;
	width: 100%;
	max-width: 244px;
}
.topicsSection .topicsTitle .titleJa {
	display: block;
    width: 244px;
    text-align: right;
    margin-top: -16px;
    letter-spacing: 0.2px;
}
.topicsSection .topicWrap {
	background-color: #fff;
	border-radius: 10px;
	padding: 50px 50px 21px;
}
.topicsSection .topicWrap .topicsList {
	margin-bottom: 31px;
}
.topicsSection .topicWrap .topicsList li {
	padding: 20px 20px 18px;
	border-bottom: 2px solid #e0e0e0;
}
.topicsSection .topicWrap .topicsList li:not(:last-child) {
	margin-bottom: 11px;
}
.topicsSection .topicWrap .topicsList li a{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 16px;
	text-align: left;
}
.topicsSection .topicWrap .topicsList li .topicsDate {
	width: 90px;
}
.topicsSection .topicWrap .topicsList li .topicsTitle {
	width: calc(100% - 112px);
	margin: 0;
}
@media(max-width: 900px) {
	.topicsSection {
		padding: 80px 0;
		margin-bottom: 70px;
	}
	.topicsSection .topicWrap {
		padding: 30px 30px 40px;
	}
}
@media screen and (max-width: 768px) {
	.topicsSection {
		padding: 50px 0;
		margin-bottom: 40px;
	}
	.topicsSection .topicsTitle .titleEn img {
		height: 72px;
	}
	.topicsSection .topicsTitle .titleJa {
		width: auto;
		font-size: 16px;
		text-align: left;
		margin-top: -5px;
	}
	.topicsSection .topicWrap {
        padding: 20px 20px 30px;
    }
	.topicsSection .topicWrap .topicsList li {
		padding: 15px 0;
	}
	.topicsSection .topicWrap .topicsList li:not(:last-child) {
    	margin-bottom: 0;
	}
	.topicsSection .topicWrap .topicsList li .topicsDate {
		width: 100%;
		margin-bottom: 5px;
	}
	.topicsSection .topicWrap .topicsList li .topicsTitle {
		width: 100%;
	}
}	
/* topicsSection */

/* topics-detail */
#topics-detail .sec_bg_h {
    background-image: url(../img/bg_topic.png);
	background-position: center;
	margin-bottom: 4%;
}
#topics-detail {
	margin-bottom: 183px;
}
#topics-detail.topics-archive {
    margin-bottom: 0;
}
#topics-detail.topics-archive .sec_bg_h {
	margin-bottom: 0;
}
#topics-detail.topics-archive ~ .topicsSection {
	padding: 80px 0 100px;
}
#topics-detail.topics-archive ~ .topicsSection > .topicsTitle {
	text-align: center;
}
#topics-detail.topics-archive ~ .topicsSection .topicsTitle .titleJa {
	display: inline-block;
	width: auto;
}
#topics-detail .topicsInner {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	width: 1160px;
	max-width: 100%;
	padding: 0 30px;
	margin: 0 auto;
}
#topics-detail .topicsSidebar {
	width: 238px;
	min-height: 238px;
	background-color: #f9f9f9;
	border-radius: 10px;
	padding: 25px 44px;
}
#topics-detail .topicsSidebar .sideTitle {
	text-align: left;
    font-size: 17px;
    font-weight: bold;
    margin: 0 0 25px;
    letter-spacing: 0.3px;
}
#topics-detail .topicsSidebar .sideArchiveList {
	margin-left: 4px;
}
#topics-detail .topicsSidebar .sideArchiveList li:not(:last-child) {
	margin-bottom: 5px;
}
#topics-detail .topicsSidebar .sideArchiveList li a {
	font-size: 16px;
	font-weight: 400;
}
#topics-detail .topicsContent {
	width: calc(100% - 298px);
    margin-top: 51px;
}
#topics-detail .topicsContent .topicsTitle {
	font-size: 34px;
	font-weight: bold;
    color: #ae2a23;
    margin: 0 0 33px;
    text-align: left;
    line-height: 1.05;
}
#topics-detail .topicsContent .topicsText {
	margin-bottom: 56px;
}
#topics-detail .topicsContent .topicsText p {
	font-size: 16px;
	font-weight: 400;
    margin: 0 0 27px;
    line-height: 1.5;
    letter-spacing: 0.5px;
}

#topics-detail .topicsContent .topicsText a {
	color: #ec3d4e;
	text-decoration:underline;
}


#topics-detail .topicsContent .topicsText p img {
	width: 100%;
	margin-bottom: 8px;
}
#topics-detail .topicsContent .topicsText h2 {
	text-align: left;
	font-size: 20px;
	font-weight: 400;
	color: #ffffff;
	background-color: #bf322a;
	padding: 16px 16px;
	margin: 0 0 26px;
}
#topics-detail .topicsContent .topicsText h3 {
	text-align: left;
	font-size: 20px;
	font-weight: 400;
	color: #bf322a;
	
}

#topics-detail .topicsContent .topicsText h3::before {
	content: '>';
	font-weight: bold;
}


#topics-detail .topicsContent .topicsText h4 {
	text-align: left;
	font-size: 16px;
	font-weight: 400;
	color: #bf322a;
	margin: 0 0 26px;
}
#topics-detail .topicsContent .topicsText ul,
#topics-detail .topicsContent .topicsText ol {
	position: relative;
	font-size: 16px;
	margin: 0 0 26px;
	padding: 0;
}
#topics-detail .topicsContent .topicsText ul li {
	position: relative;
	padding-left: 10px;
}
#topics-detail .topicsContent .topicsText ul li::before {
	content: "";
    position: absolute;
    top: 12px;
    left: 0;
    width: 4px;
    aspect-ratio: 1 / 1;
    background-color: #000;
    border-radius: 50%;
}
#topics-detail .topicsContent .topicsText ol {
	list-style: none;
	counter-reset: item;
}
#topics-detail .topicsContent .topicsText ol li {
	position: relative;
}
#topics-detail .topicsContent .topicsText ol li::before {
	content: counters(item, ".") ". "; 
	counter-increment: item;
}
#topics-detail .topicsContent .topicsNav .pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	margin: 0;
}
#topics-detail .topicsContent .topicsNav .pagination li {
	position: relative;
	width: 47%;
	display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
	font-size: 20px;
	font-weight: 400;
	color: #bf322a;
	padding-left: 10px;
}
#topics-detail .topicsContent .topicsNav .pagination li:before {
	content: '';
    position: absolute;
    top: 11px;
	left: 2px;
    transform: rotate(-45deg);
    border: solid #bf322a;
    border-width: 0 2px 2px 0;
    padding: 2px;
}
#topics-detail .topicsContent .topicsNav .pagination li:nth-child(2n) {
	text-align: right;
	padding: 0 10px 0 0;
}
#topics-detail .topicsContent .topicsNav .pagination li:nth-child(2n):before {
	left: auto;
	right: 2px;
	transform: rotate(135deg);
}
@media (max-width: 1000px) and (max-width: 769px) {
	#topics-detail .topicsContent {
    	width: calc(100% - 275px);
	}
}
@media screen and (max-width: 768px) {
	#topics-detail {
    	margin-bottom: 60px;
	}
	#topics-detail .topicsInner {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
		padding: 0 3%;
	}
	#topics-detail .topicsSidebar{
		width: 100%;
		min-height: 180px;
		margin: 0;
	}
	#topics-detail .topicsContent {
		width: 100%;
		margin: 0 0 40px;
	}
	#topics-detail .topicsContent .topicsTitle {
		font-size: 26px;
		line-height: 1.3;
	}
	#topics-detail .topicsContent .topicsText {
	    margin-bottom: 25px;
	}
	#topics-detail .topicsContent .topicsText p {
		line-height: 1.5;
	}
	#topics-detail .topicsContent .topicsNav .pagination li{
		font-size: 16px;
		padding-left: 20px;
	}
	#topics-detail .topicsContent .topicsNav .pagination li:nth-child(2n){
		padding: 0 20px 0 0;
	}
}
@media screen and (max-width: 640px) {
	#topics-detail .topicsContent .topicsNav .pagination li {
		width: 100%;
	}
	#topics-detail .topicsContent .topicsNav .pagination li:not(:last-child) {
		margin-bottom: 10px;
	}
}
/* topics-detail */