@charset "utf-8";
/* CSS Document */

#mainContents{
	width:auto;
}
h1,h2,h3,h4,h5,h6{
    margin:0;
}
ul,li{
	margin:0;
	padding:0;
}
li{
	list-style:none;
}

a.op:hover {
	opacity: 0.7;
}

.wrapper_inner{
	width:980px;
	margin:0 auto;
	color:#333333;
	font-size:16px;
	overflow:hidden;
    line-height: 2em;
}
.wrapper_inner p{
	margin:0;
	text-align:left;
	color:#333333;
	font-size: 16px;
	line-height: 1.8em;
}
.clearfix:after{
	content:" ";
	height:0;
	display:block;
	visibility:hidden;
	clear:both;
}
.center {
	text-align: center;
}
.left{
	text-align:left;
}
.right{
	text-align:right;
}
.bold{
	font-weight:bold;
}

.mb40{
margin-bottom: 40px;
}
.pt30{
padding-top: 30px;
}
.pb20{
padding-bottom: 20px;
}
/*----------------------------------------------------*/
#conts{
width: 1080px;
margin: 0 auto;
background-color: #FFFFFF;
padding: 0px;
}
/*----------------------------------------------------*/
.cont1 img {
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}
/*----------------------------------------------------*/
.cont2{
background-image: url("cont1-03.png");
background-repeat: repeat;
padding: 40px 45px;
}
.cont5{
background-image: url("cont1-03.png");
background-repeat: repeat;
padding: 40px 45px;
}
.overwiew{
background-color: #FFFFFF;
padding: 25px 40px 10px 40px;
border-radius: 30px;
}
.overwiew1{
background-color: #FFFFFF;
padding: 25px 40px 30px 40px;
border-radius: 30px;
}
.ov_title{
color: #333333;
text-align: center;
font-size: 24px;
font-weight: bold;
border-bottom: 4px solid #582600;
padding-bottom: 15px;
letter-spacing: 0.3em;
}
.blist{
display: flex;
padding:10px 0px;
}
.cont2 dl{
border-bottom: 1px solid #eee;
}
.cont2 dt{
padding: 0px 5px 5px 5px;
width: 270px;
font-weight: bold;
font-size: 18px;
}
.cont2 dt::before{
content:  '■';
display: inline-block;
color: #582600;
padding: 0px 10px;
font-size: 30px;
}
.cont2 dd{
padding: 5px;
font-size: 18px;
}
/*----------------------------------------------------*/
.cont3{
padding: 10px 0px;
background-image: url("cont1-04.png"), url("cont1-04.png");
background-position: left top, right top;
background-repeat: repeat-y;
margin: 15px 0px;
}
/*---------------badge--------------------------------*/
.badge {
margin: 20px auto;
width: 160px;
  position: relative;
  background-color: #582600;
  color: #582600;
  padding: 15px 0px;
  border-radius: 100px;
  text-align: center;
  line-height: 1.5em;
}

.badge::after {
  content: "";
  position: absolute;
  bottom: -19px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 10px;
  border-style: solid;
clip-path: polygon(0 0, 50% 60%, 100% 0);
background-color: #582600;
}

.b_title {
color: #FFF;
font-size: 22px;
font-weight: bold;
}
.b_date {
color: #FFF;
font-size: 15px;
}
/*--------------end badge-------------------------------*/
/*--------------comma title-------------------------------*/
.wrap {
    text-align: center;
    padding: 0px 20px;
  }

  .quote {
    position: relative;
    display: inline-block;
    font-size: 40px; /* 指定どおり固定 */
    color: #5a2d0c;
    line-height: 1.3;
	font-weight: bold;
    padding: 0.6em 1.0em; /* ←内側に余白を確保 */
    max-width: 100%;
    word-break: break-word;
  }

  .quote::before,
  .quote::after {
    position: absolute;
    font-size: 1.6em;
    font-weight: bold;
    pointer-events: none;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  }

  .quote::before {
    content: "“";
    color: #09A0D1;
    left: 0.1em;   /* ←内側に配置 */
    top: 0;
  }

  .quote::after {
    content: "”";
    color: #EE192D;
    right: 0.1em;  /* ←内側に配置 */
    bottom: -0.5em;
  }
/*--------------comma title-------------------------------*/

.c3_st{
color: #582600;
text-align: center;
font-size: 18px;
font-weight: bold;
}
.c3_content{
margin: 30px 45px;
padding: 30px 40px;
background-color: #FFF;
border-radius: 30px;
}
.c3_f{
display: flex;
justify-content: space-between;
margin-top: 30px;
}
.c3_c{
}
.blue{
background-color: #F5FDFF;
border: 2px solid #09A0D1;
}
.pink{
background-color: #FFF7F7;
border: 2px solid #EE192D;
}
.c3_japan{
font-size: 18px;
color: #09A0D1;
margin-bottom: 20px;
font-weight: bold;
}
.c3_china{
font-size: 18px;
color: #EE192D;
margin-bottom: 20px;
font-weight: bold;
}
.dot{
border: 1px dashed #BDBDBD;
margin: 30px 0px;
}
.c3_text{

}
.c3_text ol{
padding-inline-start: 20px;
}
.c3_text li{
list-style-type: decimal;
}
/*----------------------------------------------------*/
.cont4{
background-image: url("cont4-01.png");
background-repeat: repeat-y;
padding: 40px 45px;
}
.overwiew4{
background-color: #FFFFFF;
padding: 25px 40px 40px 40px;
border-radius: 30px;
}
.c4_f{
display: flex;
justify-content: space-between;
flex-wrap:wrap;
gap: 30px 20px;
}
.c4_i{
width: 390px;
}
/*----------------------------------------------------*/
.comment_b {
position: relative;
display: inline-block;
padding: 20px;
min-width: 100%;
max-width: 100%;
border-style: solid;
border-width: 1px;
background: #F5FDFF;
box-sizing: border-box;
border-radius: 20px;
border: solid 2px #2CA0DB;
line-height: 2em;
height: 100%;
}
.comment_b:before {
content: "";
position: absolute;
top: -17px;
left: 50px;
margin-left: -15px;
border: 5px solid transparent;
border-bottom: 12px solid #F5FDFF;
z-index: 2;
}
.comment_b:after {
content: "";
position: absolute;
top: -21px;
left: 50px;
margin-left: -17px;
border: 7px solid transparent;
border-bottom: 14px solid #2CA0DB;
z-index: 1;
}
/*----------------------------------------------------*/
.comment_p {
position: relative;
display: inline-block;
padding: 20px;
min-width: 100%;
max-width: 100%;
border-style: solid;
border-width: 1px;
background: #FFF7F7;
box-sizing: border-box;
border-radius: 20px;
border: solid 2px #EE192D;
line-height: 2em;
height: 100%;
}
.comment_p:before {
content: "";
position: absolute;
top: -17px;
left: 50px;
margin-left: -15px;
border: 5px solid transparent;
border-bottom: 12px solid #FFF7F7;
z-index: 2;
}
.comment_p:after {
content: "";
position: absolute;
top: -21px;
left: 50px;
margin-left: -17px;
border: 7px solid transparent;
border-bottom: 14px solid #EE192D;
z-index: 1;
}
/*----------------------------------------------------*/
/*----------------------------------------------------*/
/*----------------------------------------------------*/
/*----------------------------------------------------*/
/*----------------------------------------------------*/
/*2023resp*/
@media screen and (max-width: 850px){
   .wrapper_inner{
    width: 100%;
	line-height: 1.8em;
    }

img {
	max-width: 100%;
	height: auto;
}

.wrapper_inner{
font-size:16px;
padding: 0px;
}
#conts{
width: 100%;
}
/*----------------------------------------------------*/
.pb20{
padding-bottom: 0px;
}
.mb40{
margin-bottom: 20px;
}
/*----------------------------------------------------*/
.cont2{
background-image: url("cont1-05.png");
padding: 20px 15px;
background-size: cover;
}
.cont5{
background-image: url("cont1-05.png");
padding: 20px 15px;
background-size: contain;
}
.overwiew{
padding: 20px 15px 0px 15px;
}
.overwiew1{
padding: 25px 15px 20px 15px;
}
.ov_title{
font-size: 24px;
padding-bottom: 10px;
}
.blist{
display: block;
}
.cont2 dl:last-of-type {
  border-bottom: none;
}
.cont2 dl{
}
.cont2 dt{
padding: 0px;
width: 100%;
}
.cont2 dt::before{
padding: 0px 5px;
}
.cont2 dd{
padding:  0px 0px 5px 0px;
margin-inline-start: 22px;
}

/*----------------------------------------------------*/
.cont3{
padding: 0px 15px 15px 15px;
}
/*--------------comma title-------------------------------*/
.wrap {
    padding: 0px 10px;
  }

  .quote {
    position: relative;
    display: inline-block;
    font-size: 28px;
    line-height: 1.3;
    padding: 0.8em 1.2em; /* ←内側に余白 */
  }

  .quote::before,
  .quote::after {
    font-size: 2em;
  }
/*--------------comma title-------------------------------*/

 .quote br{
 display: none;
 }
 .c3_st{
padding: 20px 10px 10px 10px;
}
.c3_content{
margin: 10px;
padding: 25px 20px 10px 20px;
}
.c3_f{
display: block;
margin-top: 10px;
text-align: center;
}
.c3_japan,
.c3_china{
margin-bottom: 10px;
}

/*----------------------------------------------------*/
.cont4{
padding-top: 20px;
padding: 20px 15px;
}
.overwiew4{
padding: 25px 15px;
}
.c4_f{
margin-top: 30px;
}
.c4_i{
width: 100%;
}
/*----------------------------------------------------*/
}