/* CSS Document */
ul, li {
 margin: 0;
 list-style-type: none;
}

body {
 margin: 0;
    background: #f6ebf8;
 font-size: 20px;
}
.main_img{
    width: 1200px;
	margin: 120px auto 0;
}
.imgArea{
    margin-top: 20px;
    text-align: center;
}
#contMain{
    width: 1200px;
    margin: 0 auto;
    padding-top: 50px;
}

.text_area{
	text-align: center;
	width: 1200px;
	background-color: #fff;
	margin: 50px auto;
	border: 3px solid #9a435e;
	padding: 30px 10px;
	font-weight: bold;
}
.text_area .text_large{
	font-size: 150%;
}
.text_area .text_small{
	font-size: 80%;
}
.time{
	text-align: left;
	width: 60%;
	margin: 0 auto;
	display: flex;
	 flex-wrap: wrap;
	justify-content: space-between;
}
.time li{
	width: 30%;
}
.time_1{
	margin-right: 7%;
}
.section_title{
    font-size: 220%;
    color: #86314c;
    text-align: center;
    padding: 15px 0;
    line-height: 30px;
    margin-bottom: 20px;
}
.tenpo{
	margin-bottom: -40px;
}
.point{
    text-align: center;
    margin-bottom: 30px;
}
.application{
    text-align: center;
}
.offer_step{
    line-height: 1.5rem;
}
.point img{
    width: 400px;
    
}
.table_about{
    font-size: 20px;
    margin-bottom: 30px;
}
.table_about tbody tr th{
    font-weight: bold;
    width: 180px;
    padding: 15px;
    border-bottom: 1px solid #0d4865;
    border-right: 1px solid #0d4865;
    text-align: center;
}
.table_about tbody tr td{
     border-bottom: 1px solid #0d4865;
     padding: 15px;
}
.cast_title{
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 15px;
}
.cast_name_L{
    margin: 10px 0;
    font-size: 26px;
    font-weight: bold;
}
.cast_layout tbody td{
    padding: 10px 10px 20px 10px;
    vertical-align:top;
}
.cast_name{
    font-weight: bold;
    font-size: 18px;
}
.first{
    border-bottom: 1px solid #000;
}
.cast_layout{
    margin: 20px 0;
}

.offer_step{
    font-size: 20px;
    margin: 0 auto;
    padding: 30px;
    border: 2px solid #0d4865;
    width: 80%;
    border-radius: 15px;
}
.offer_step dt{
    font-weight: bold;
}
.seminar{
    font-size: 20px;
    margin: 20px 0;
}
ul.i_circle li{
    padding: 5px 0px 5px 30px;
}
ul.i_circle li:before {
        margin-left: -1em;
        content: '●';
        color: #333399;
    }
.offer_button{
    text-align: center;
    margin: 50px 0;
}
.form_btn{
    padding: 10px 100px;
    background: #cc0000;
    color: #fff!important;
    font-weight: bold;
    font-size: 24px;
    border-radius: 25px;
}
.form_btn:hover{
    background: #7B090B;
    text-decoration: none;
    transition: all .6s;
}
.ex_bottom{
    border-top: 2px solid #0d4865;
    border-bottom: 2px solid #0d4865;
    margin: 30px 0 10px 0;
    padding: 10px 0;
    text-align: center;
}
.wrap_copyright{
    text-align: center;
}
.imo_pricebox ul li a::after{
    content: '';
  display: inline-block;
  width: 25px;
  height: 25px;
  background-image: url("../oimo2025/img/window.png");
  background-size: contain;
  vertical-align: middle;
}
.imo_pricebox ul li{
    margin-bottom: 10px;
}
.raijyo{
	padding-left: 0;
}

.imo_borderbox {
    border-width: 1px;
    border-style: solid;
    border-color: rgb(133, 48, 75);
    border-image: initial;
    border-radius: 8px;
}
.imo_infoboxtop {
    background-color: rgb(255, 255, 255);
    display: flex;
    margin-bottom: 40px;
    border-radius: 8px;
    padding: 40px 0px;
}
.imo_infoboxtop .imo_flex_left {
    display: flex;
    align-items: flex-start;
    padding-right: 40px;
    border-right: 1px solid rgb(193, 146, 19);
}
.imo_flex_left, .imo_flex_right {
    width: 50%;
    padding-left: 40px;
}
.imo_flex_left div p:first-of-type {
    line-height: 1.375;
    font-weight: bold;
    text-align: left;
}
.imo_flex_left ul {
    color: rgb(134, 48, 75);
    line-height: 1.5;
    margin-bottom: 0.5em;
    text-align: left;
    font-size: 22px;
}
.imo_flex_left div p {
    color: rgb(134, 48, 75);
}
.imo_flex_right div {
    display: flex
;
}
.imo_flex_right p {
    line-height: 1.5;
    padding-bottom: 0.5em;
}
.imo_ktvlink{
    text-align: left;
}
.imo_infottl {
    min-width: 5em;
    color: rgb(193, 146, 19);
    font-weight: bold;
    line-height: 1.375;
    margin-right: 10px;
}
.imo_flex_right p:not([class]) {
    font-weight: bold;
    color: rgb(134, 48, 75);
    text-align: left;
}
.imo_flex_left span {
    display: block;
    text-align: left;
}
.imo_infobtmflexbox {
    display: flex;
    justify-content: space-between;
    padding-bottom: 40px;
    width: 100%;
    max-width: 1200px;
    margin: auto;
}
.imo_infobtmflexbox > div {
    width: 48.75%;
}
.imo_ticketbox {
    color: #85304B;
}
.imo_ticketbox > div, .imo_announcebox > div {
    background-color: #FFF;
    padding: 32px;
    text-align: left;
}
.imo_borderbox {
    border: solid 1px #85304B;
    border-radius: 8px;
}
.imo_announcebox {
    display: flex;
    flex-direction: column;
    color: #85304B;
}
.imo_playguidebox{
    margin-top: 20px;
}
.ticket_red{
    color: #DC090D;
    margin-top: 20px;
}
.imo_qabox .imo_borderbox {
    background-color: rgb(255, 255, 255);
    padding: 56px;
    margin-bottom: 20px;
}
.imo_qabox > div {
    color: rgb(134, 48, 75);
    line-height: 1.375;
}
.imo_qabox ul {
    column-count: 2;
    column-gap: 2em;
    margin-bottom: 2em;
}
.imo_qabox ul li {
    width: 98%;
    line-height: 1.375;
    margin-bottom: 24px;
    padding-left: 1em;
    text-indent: -1em;
    color: rgb(134, 48, 75);
    break-inside: avoid;
    text-align: left;
    font-size: 20px;
}
.imo_qabox ul li > p:first-of-type {
    color: rgb(228, 78, 68);
    font-weight: bold;
    font-size: 1.125em;
    margin-bottom: 0.25em;
}
.kakaku{
    color: #86314c!important;
    margin: 0 auto;
    font-weight: bold;
    padding: 10px 20px;
    background-color: #fff;
    font-size: 120%;
}

.sp{
	display: none;
}

/**
 * 1080
 * ----------------------------------------------------------------------------
 */
@media screen and (max-width:1080px){
	.main_img {
    width: 95%;
    margin: 80px auto 0;
}
	.text_area{
		width: 700px;
	}
	.time{
		width: 100%;
	}
	.text_area .text_large{
		font-size: 130%;
	}
	.time_1{
	margin-right: 3%;
}
	#contMain{
		width: auto;
	}
	.imo_borderbox {
    width: 95%;
    margin: 0 auto 40px;
}
	.imo_infoboxtop .imo_flex_left,.imo_flex_right div{
		display: block;
	}
	.imo_flex_left, .imo_flex_right {
    padding-left: 20px;
}
	.imo_ticketbox > div, .imo_announcebox > div,.imo_qabox .imo_borderbox{
		padding: 20px;
	}
	.imo_infobtmflexbox > div{
		width: 50%;
	}
	.imo_pricebox ul{
		padding-left: 0;
	}
	.question ul{
		padding: 0;
	}
}


/**
 * 767
 * ----------------------------------------------------------------------------
 */
@media screen and (max-width:767px){
	body{
		font-size: 15px;
	}
	.main_img {
    width: 95%;
    margin: 70px auto 0;
}
	.text_area{
		width: 95%;
	}
	.text_area .text_large{
		font-size: 95%;
	}

	.time li{
		width: 50%;
	}
	.time_1{
	margin-right: 5%;
}
	.imo_infoboxtop{
		display: block;
	}
	.imo_flex_left, .imo_flex_right,.imo_infobtmflexbox > div{
		width: 100%;
	}
	.imo_infoboxtop .imo_flex_left {
    	border-bottom: 1px solid rgb(193, 146, 19);
		border-right: 0px;
		width: 98%;
		margin: 0 auto;
		padding-bottom: 20px;
}
	.imo_infottl{
		font-size: 2rem;
	}
	.imo_flex_left div p:first-of-type,.imo_flex_left ul{
		font-size: 1.8rem;
		padding-left: 10px;
	}
	.imo_flex_right{
		padding-top: 20px;
	}
	.imo_infobtmflexbox{
		display: block;
	}
	.imo_qabox ul{
		column-count: 1;
	}
	.question ul li{
		font-size: 1.5rem;
	}
}