@charset "UTF-8";
#sec01, #sec02, #sec03, #sec04 {
    padding: 40px 0;
}
@media print, screen and (min-width:768px) {
    #sec01, #sec02, #sec03, #sec04 {
        padding: 70px 0;
    }
}
.tx_box {
    text-align: left;
    padding: 30px 15px;
}
@media print, screen and (min-width:768px) {
    #sec01 .service, #sec03 .service {
        display: flex;
        justify-content: center;
    }
    #sec02 .service, #sec04 .service {
        display: flex;
        justify-content: center;
        flex-direction: row-reverse;
    }
    .ph_box {
        width: 40%;
    }
    .ph_box img {
        width: 100%;
        height: auto;
    }
    .tx_box {
        text-align: left;
        width: 60%;
    }
    #sec01 .tx_box, #sec03 .tx_box {
        padding: 0 15px 0 30px;
    }
    #sec02 .tx_box, #sec04 .tx_box {
        padding: 0 30px 0 15px;
    }
    .btn01 {
        margin-left: 25px;
    }
}

/*------------------------------------------ir*/
@keyframes tabAnim{
  0%{opacity:0;}
  100%{opacity:1;}
}
input[type="radio"] {
	display:none;
}
.tab_wrap * {
  box-sizing: border-box;
	text-align: left;
}
.tab_area {
	font-size: 0;
	/*margin: 0 10px;*/
	width: 100%;
}
.tab_area label {
	width: 345px;
  /*margin: 0 5px;*/
	display: inline-block;
	padding: 10px 0;
	color: #999;
	background: #ddd;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
	transition: ease 0.2s opacity;
	width: 50%;
}
.tab_area label:first-child {
  margin-right: 0;
}
.tab_area label:last-child {
  margin-left: 0;
}
.tab_area label:hover {
	opacity: 0.6;
}
.tab_panel {
	width: 100%;
	opacity: 0;
	padding: 20px;
	display: none;
}
.tab_panel p {
	font-size: 14px;
	text-align: center;
}
.panel_area {
	background:#fff;
  border: 1px solid #ccc;
  border-top: 0;
  position: relative;
}
.panel_area:before {
  content: "";
  width: 10px;
  height: 1px;
  background: #ccc;
  position: absolute;
  top: -1px;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
#tab1:checked ~ .tab_area .tab1_label {
  color: #333;
	background:#fff;
	border-top: 3px solid #d30028;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
#tab1:checked ~ .panel_area #panel1 {
	display: block;
	animation: tabAnim ease 0.6s forwards;
	-ms-animation:tabAnim ease 0.6s forwards;
}
#tab2:checked ~ .tab_area .tab2_label {
	color: #333;
	background:#fff;
	border-top: 3px solid #d30028;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
#tab2:checked ~ .panel_area #panel2 {
	display:block;
	animation:tabAnim ease 0.6s forwards;
	-ms-animation:tabAnim ease 0.6s forwards;
}
.panel_title {
  font-size: 14px;
  font-weight: bold;
  border-left: 3px solid #60b723;
  padding-left: 8px;
}
.ir_box dl {
	padding: 10px 0;
	border-bottom: 1px dotted #c0c0c0;
}
.ir_box dl:not(:last-child) {
	margin-bottom: 10px;
}
.ir_box dl dt {
	text-align: left;
  font-size: 12px;
	font-weight: bold;
  float: left;
	margin-bottom: 0;
}
.ir_box dl dt span {
	display: inline-block;
	width: 90px;
	margin-left: 10px;
	text-align: center;
	line-height: 1.1;
	font-size: 11px;
	font-weight: normal;
	color: #fff;
	border-radius: 2px;
	background: #003da6;
}
.ir_box dl dd {
	text-align: left;
	color: #920024;
	font-weight: bold;
  padding-left: 97px;
}
.ir_box dl dd span {
	font-size: 10px;
	font-weight: bold;
	margin-bottom: 5px;
}
.ir_box dl dd a {
	display: block;
  font-size: 13px;
	padding-left: 24px;
	text-align: left;
	text-decoration: underline;
	background: url(../img/common_img/icon_pdf.png) no-repeat 0px 50%;
	background-size: auto 19px;
}
.ir_box dl dd a:hover {
	text-decoration: none;
}

#panel1 dl{
	text-align: left;
}